Datenbank

Eine Datenbank ist eine Softwarelösung fĂŒr die Speicherung, Strukturierung und Verwaltung von elektronischen Daten.
Die Datenbank, ĂŒber die sich diese Mitarbeiter einer Softwareagentur unterhalten, wird auf einem Bildschirm vor ihnen angezeigt und die Mitarbeiterin zeigt auf den Bildschirm, wĂ€hrend die and
© puhhha

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.