Datenbank
- 1. Datenbank Definition
- 2. Arten von Datenbanken
- 3. Blockchain Datenbank
- 4. Datenbanken in der Verwaltung, Forschung und Wirtschaft
- 5. Datenbanken in der Softwareentwicklung
- 6. Datenbanken in der Webentwicklung
- 7. Datenbanksprache
- 8. SQL (Structured Query Language)
- 9. SQL Befehle
- 10. Datenbankmanagementsysteme und Datenbank Software
- 11. Digitalagentur Berlin: TenMedia
Datenbank Definition
Eine Datenbank ist ein auf Software basierendes System, mit dem sich elektronische Daten strukturieren, speichern und verwalten lassen. Datenbanken dienen vor allem dem Management von groĂen Datenmengen mit dem Ziel einer effizienten Aufbereitung und einer adĂ€quaten Darstellung fĂŒr Benutzer oder zur Weiterverarbeitung durch andere Software. Durch ein Datenbanksystem, kurz DBMS, können viele VerwaltungsvorgĂ€nge und Unternehmensprozesse vereinfacht werden. Aus diesem Grund zĂ€hlen Datenbanken vornehmlich zur Unternehmenssoftware, obwohl sie auch im privaten Bereich genutzt werden.
Eine Datenbank besteht aus einer Datenbasis â der Summe der Daten, die verwaltet werden â und einem Datenmanagementsystem, in welches die Daten eingepflegt werden und welches diese strukturiert und darstellt.
Arten von Datenbanken
Die Einsatzbereiche von Datenbanken sind vielfĂ€ltig und die verschiedenen Arten daher geradezu endlos. Eine Unterscheidung lĂ€sst sich entweder anhand ihres Inhalts oder ihrer Art der Organisation treffen. Ist die Datenbank fĂŒr Anwender bestimmt, wird sie meist einer inhaltlichen Kategorie zugeordnet, fĂŒr Entwickler bzw. Datenbankentwickler im Speziellen ist eher der organisatorische Ansatz von Belang, wobei das eine das andere nicht ausschlieĂen muss: Eine Volltextdatenbank kann beispielsweise relational, dezentral und objektorientiert sein.
Inhaltliche Kategorien fĂŒr Datenbanken:
- Bibliografische Datenbanken
- Volltextdatenbanken
- Numerische Datenbanken
- Mediendatenbanken bzw. Mediatheken:
- Bilddatenbanken bzw. Fotodatenbanken
- Videodatenbanken bzw. Filmdatenbanken
- Audiodatenbanken
Organisatorische Kategorien fĂŒr Datenbanken:
- Relationale Datenbank
Eine relationale Datenbank ist die meisteingesetzte Art der Datenbank. Relationale Datenbanken bestehen aus Attributen und Tupeln. Die Attribute sind in der Regel die Spaltenköpfe und die Tupel entsprechen den Zeilen der Tabelle und werden auch Datensatz genannt. Durch diese Definition lassen sich die Daten neu anordnen und abrufen. - Objektorientierte Datenbank
Eine objektorientierte Datenbank versammelt Daten in sich, die in Klassen und Unterklassen organisiert sind. Die Daten werden dabei zusammen mit ihren Funktionen in einem Objekt gespeichert. So können Daten ĂŒber die Funktion des Objektes abgerufen werden. Objektorientierte Datenbanken werden hĂ€ufig im Zusammenhang mit objektorientierten Programmiersprachen (z. B. C++ oder Java) verwendet, kommen in anderen Bereichen jedoch nur Ă€uĂerst selten zum Einsatz. - Dezentralisierte Datenbank
Eine dezentralisierte Datenbank hat einen dezentralen Datenspeicher oder mehrere dezentrale Knoten, auf die der Datenbestand verteilt werden kann. Ein berĂŒhmtes Beispiel fĂŒr eine dezentrale Datenbank ist Blockchain.
Blockchain Datenbank
Was ist Blockchain?
Blockchain ist derzeit in aller Munde. Nicht nur in der IT, sondern auch im Finanzsektor hat dieses Verfahren fĂŒr UmbrĂŒche gesorgt. Doch was ist Blockchain?
Blockchain, Block- oder Knotenkette auf Deutsch, ist eine Datenbank, die sich im Unterschied zu einer traditionellen Datenbank nicht zentral organisiert, sondern â wie der Name bereits vermuten lĂ€sst â in mehreren dezentralen Knotenpunkten. Statt dass ein Administrator den Zugriff zur Datenbank gewĂ€hrt, mĂŒssen mehrere Knotenpunkte diesem zustimmen, sodass ein Konsens herrscht. Dieser Konsensmechanismus gewĂ€hrt eine hohe Sicherheit und Schutz vor Manipulation.
Aus diesem Grund eignet sich Blockchain hervorragend als Grundlage fĂŒr KryptowĂ€hrungen wie Bitcoin oder fĂŒr Datenbanken mit sensiblen Daten. Blockchain bietet sich vor allem dann an, wenn die Daten nicht mehr verĂ€ndert werden mĂŒssen, beispielsweise im Falle von Rechnungsdaten. Deshalb gibt es bereits viele Rechnungstools, die auf Blockchain basieren. Wenn die Daten einer Datenbank jedoch flexibel sein sollen oder hĂ€ufig verĂ€ndert werden mĂŒssen, ist das Blockchain Verfahren nicht die geeignete Lösung oder steht sogar im Wege.
Mittlerweile gibt es auch Plugin Lösungen fĂŒr Blockchain wie zum Beispiel BigChainDB.
Datenbanken in der Verwaltung, Forschung und Wirtschaft
Datenbanken kommen einerseits in der Verwaltung in Unternehmen zum Einsatz, wo beispielsweise eine Kundendatenbank oder Mitarbeiterdatenbank bestimmte Personendaten sammelt oder eine Produktdatenbank Details zu Produkten speichern kann.
In der Wirtschaft ĂŒbernehmen Datenbanken einen Ă€hnlichen verwalterischen Zweck, werden aber vornehmlich fĂŒr Kalkulationen und im Finanzsektor verwendet.
In der Forschung dienen Datenbanken der Sammlung von Forschungsergebnissen und können diese dem Forschungszweck entsprechend aufbereiten und darstellen oder ĂŒber lange Zeit speichern und anderen Forschenden zugĂ€nglich machen.
Datenbanken in der Softwareentwicklung
Gerade in Anbetracht von Digitalisierung, Big Data und anderen technischen Entwicklungen in den letzten Jahren werden Datenbanken in der Softwareentwicklung immer wichtiger. Fast alles, was sich als kĂŒnstliche Intelligenz (KI) bezeichnen lĂ€sst, basiert auf Machine Learning und damit auf einer Sammlung von Daten in Datenbanken, welche automatisiert erweitert werden und welche die Grundlage fĂŒr zukĂŒnftige Aktionen bilden. Doch auch ganz ohne âsmartesâ Handeln erlauben es Datenbanken dem Softwareentwickler, logische Wenn-Dann-Beziehungen zu erstellen, ob mit relationalen oder objektorientierten Datenbanken, die im richtigen Moment die gewĂŒnschten Daten ausgeben.
Datenbanken in der Webentwicklung
Aber auch in der Webentwicklung kommt ihnen eine groĂe Bedeutung zu: Datenbanken bilden nicht selten die Basis von modernen Webseiten, viele von ihnen basieren beispielsweise auf MySQL, einem der gĂ€ngigsten Datenbankmanagementsysteme. In Datenbanken werden die Informationen als response gesammelt, die bei einer Serveranfrage request angefordert werden. Grundlage dieser Kommunikation ist die Datenbanksprache.
Datenbanksprache
Genauso wie es in der Softwareentwicklung und in der Webentwicklung Programmiersprachen gibt, so dienen Datenbanksprachen der Kommunikation mit Datenbanken.
Datenbanksprachen werden auch Abfragesprachen (Query Language) genannt, da durch sie Daten abgefragt werden können. Doch eigentlich geht die Verwendung einer Datenbanksprache ĂŒber die Datenabfrage hinaus. Wie Programmiersprachen verfĂŒgen auch Datenbanksprachen ĂŒber eine Syntax und verschiedene Befehle, mithilfe derer Aktionen ausgefĂŒhrt werden können. Diese Befehle beinhalten die Datenabfrage, die Datenerstellung und -verĂ€nderung, die Datenmanipulation sowie die Rechteverwaltung der DatensĂ€tze.
Diese Art der Kommunikation muss nicht zwangslĂ€ufig zwischen einem Entwickler oder Endbenutzer und der Datenbank stattfinden, sondern kann auch eine Maschine-zu-Maschine-Kommunikation sein, wenn beispielsweise ein Programm auf eine Datenbank zugreift. Auch eine Aktion eines Endbenutzers einer Website resultiert manchmal nicht nur in einem Zugriff auf einen Datensatz, sondern kann diesen je nach Art der Aktion sogar verĂ€ndern. Der Code der Webseite ĂŒbersetzt dabei die Nutzeraktion in einen Befehl (z.B. update object).
Die bekannteste und meistverwendete Datenbanksprache ist SQL.
SQL (Structured Query Language)
SQL steht fĂŒr Structured Query Language und kommt in relationalen Datenbanken bzw. Relationalen Datenmankmanagementsystemen (RDBMS) zum Einsatz. Der ursprĂŒngliche Name lautete SEQUEL, eine AbkĂŒrzung fĂŒr Structured English Query Language, welcher allerdings aufgrund eines Namenpatents durch SQL ersetzt wurde.
SQL Befehle
Es gibt eine ganze Reihe an SQL-Befehlen, die es vollstÀndig aufzuzÀhlen kaum möglich wÀre. Sie lassen sich jedoch vier Hauptkategorien zuteilen:
- DQL
Data Query Language, Datenabfrage und âdarstellung (select) - DML
Data Manipulation Language, EinfĂŒgen, Ăndern und Löschen (insert, update, delete) - DDL
Data Definition Language, Festlegung des Datenbankschemas (create, alter) - DCL
Data Control Language, Festlegung und Verwaltung der Rechte (grant, revoke)
Liste anderer Datenbanksprachen
- Access query language
- Java Persistence Query Language (JPQL)
- Contextual Query Language (CQL)
- Embedded SQL
- Object Query Language (OQL)
- Object Constrained Language (OCL)
- Yahoo! Query Language (YQL)
- Facebook Query Language (FQL)
- Data Mining Extensions (DMX)
- Lightweight Directory Access Protocol (LDAP)
Datenbankmanagementsysteme und Datenbank Software
Ein Datenbankmanagementsystem bzw. eine Datenbank Software bildet zusammen mit der eigentlichen Datenbank ein Datenbanksystem DBS. Im Unterschied zur Datenbank an sich ist ein DBMS eine Software auf einem Server oder einem PC mit einer zugehörigen Datenbanksprache. Sie bildet die OberflÀche, in die die Befehle eingegeben und die Datenbank verwaltet werden kann.
MySQL
MySQL ist das am weitesten verbreitete Open Source Datenbankmanagementsystem fĂŒr relationale Datenbanken. Im Zusammenspiel mit dem Server Apache oder Nginx und der Programmiersprache PHP werden mit MySQL eine Reihe von Webanwendungen, Webservices und Webtechnologien entwickelt. So sind beispielsweise auch YouTube, Twitter und Facebook mit MySQL entwickelt.
Liste anderer DBMS
- Microsoft Access
- PostgreSQL
- DBASE
- GNU SQL
- MariaDB
- AWS Databases
Digitalagentur Berlin: TenMedia
Datenbanken sind eine komplexe Angelegenheit und gerade im Zusammenhang mit Big Data und dem Datenschutzgesetz DSGVO haben gerade Unternehmen und KMU ein Interesse an einer sauberen Softwarelösung fĂŒr ihre DatensĂ€tze. TenMedia ist eine Digitalagentur in Berlin und hat sich auf die branchenĂŒbergreifende Datenbankentwicklung und Datenbankpflege fĂŒr Unternehmen und Kunden spezialisiert. Wer sich eine Datenbank erstellen lassen möchte, ob in Berlin oder deutschlandweit, kann sich mit TenMedia sicher sein, dass unsere Anwendungen â von Firmendatenbank bis hin zu webbasierter Datenbank â aktuellen Standards hinsichtlich Benutzerfreundlichkeit, KomplexitĂ€t und Sicherheit entsprechen.
Neben Datenbanken gehören auch die Web- und App-Entwicklung sowie die Softwareentwicklung zu unseren Spezialgebieten. Wir entwickeln nicht nur moderne Webseiten und ĂŒbernehmen das Hosting und Monitoring, sondern erstellen auch umfangreiche Apps und Cloud Software. FĂŒr jedes IT-Vorhaben finden wir eine individuelle Softwarelösung. Nach der Fertigstellung bieten wir flexibel Mitarbeiterschulungen an und stehen weiterhin als langfristiger Partner zur VerfĂŒgung.