DBMS - Database Management System

DBMS steht fĂŒr Datenbankmanagementsystem und bildet zusammen mit der Datenbasis eine Datenbank.
Mitarbeiter einer Agentur entwickeln ein DBMS im Kundenauftrag an einem Computer.
© zorandim75

Was ist ein DBMS?

DBMS ist eine AbkĂŒrzung fĂŒr Database Management System oder zu Deutsch Datenbankmanagementsystem. Dabei handelt es sich per Definition um eine Software, welche zusammen mit der Datenbasis, die Gesamtheit der zu verwaltenden Daten, die eigentliche Datenbank ergibt. Das DBMS ist der Teil der Datenbank, der eine abgegrenzte Menge an Daten elektronisch speichern und verwalten kann. Man könnte es mit einem Dateimanager vergleichen, nur dass Daten statt Dateien verwaltet werden. ZusĂ€tzlich organisiert und strukturiert das System die Daten, sorgt dafĂŒr, dass sie konsistent verfĂŒgbar sind und legt den Zugriff, bzw. Lese- und Schreibberechtigungen der einzelnen User fĂŒr die Daten fest.

Ein DBMS kann entweder auf einem Server oder lokal auf einem Computer installiert sein. Mithilfe einer Datenbanksprache können sogenannte Datenbankabfragen getĂ€tigt und die Daten gespeichert sowie verwaltet werden. Datenbanksprachen sind mit Programmiersprachen zu vergleichen, obwohl ihre Syntax meist der englischen Umgangssprache angelehnt ist und sie deshalb etwas einfacher aufgebaut und zu lernen sind. Die meistverwendete Datenbanksprache ist SQL, kurz fĂŒr Structured Query Language, ursprĂŒnglich SEQUEL genannt. Mit ihr lassen sich Datenbankstrukturen festlegen und die Daten mit Datenbankoperationen bearbeiten. Diese nennen sich bei einer Datenbank auch CRUD Operations (create, read, update, delete).

Arten von DBMS

Es gibt mehrere Arten von Database Management Systemen. Die grĂ¶ĂŸte Unterscheidung ist die zwischen RDBMS (relationales Datenbankmanagementsystem) und ODBMS (objektorientierten Datenbankmanagementsystem), auch kurz Objektdatenbank genannt. Letzteres Datenbankmodell stĂŒtzt bspw. die Softwareentwicklung mit einer objektorientierten Programmiersprache wie C# oder Java, ist jedoch nicht so weit verbreitet.

RDBMS

In der Entwicklung von webbasierter Software und Webseiten kommt vor allem die relationale Datenbank zum Einsatz. RDBMS sind Systeme mit mehreren zueinander in Beziehung stehenden Tabellen, die miteinander kommunizieren und die Daten voneinander beziehen. Diese Beziehungen nennt man auch Relationen. Die Form der Datenauslagerung spart einerseits Speicherplatz und erhöht andererseits die Performance der Anwendungen, weil große Datenmengen und Metadaten so schneller verwaltet werden können.

Das populĂ€rste RDBMS ist MySQL vom Anbieter Oracle. MySQL wird hĂ€ufig im Zusammenspiel mit der Programmiersprache PHP verwendet, welche w3techs zufolge die Grundlage 80% aller Websites bildet. Der grĂ¶ĂŸte Einsatzbereich von Datenbank Managementsystemen ist die Entwicklung von dynamischen Webseiten mit einem responsive Webdesign – ein sehr zukunftstrĂ€chtiger Bereich, da BildschirmgrĂ¶ĂŸen immer heterogener werden.

Entwicklung von DBMS

1960er: IBM und CODASYL

Die Geschichte von DBMS begann etwa in den 1960er Jahren, als IBM das erste DBMS mit dem Namen ICS (Information Control System) auf den Markt brachte, was spĂ€ter in IMS (Information Management System) umbenannt wurde und noch heute verwendet und weiterentwickelt wird. Der Aufbau der Komponenten ist dabei hierarchisch und die verwendete Datenbanksprache ist DL/I, was fĂŒr Data Language Interface steht, aber auch Data Language One genannt wird.

UngefÀhr zur gleichen Zeit entwickelte Charles Bachman zusammen mit seiner Database Task Group das Datenbankmanagementsystem CODASYL, welches im Gegensatz zu IMS netzwerkartig aufgebaut war. Dennoch wurden sowohl IMS wie auch CODASYL als Navigationsdatenbank bezeichnet.

1970er: Erste RDBMS

Relationale Datenbankmanagementsysteme, sogenannte RDBMS, entstanden erst in den 1970er Jahren. Edgar F. Codd war ein IBM Mitarbeiter und störte sich an CODASYL, besonders jedoch an der fehlenden Suchfunktion in der Datenbank. Daher schrieb er eine Abhandlung, in der er ein neues Datenbanksystem beschrieb, welches große Datenmengen in Tabellen mit fester LĂ€nge speichert und jede Tabelle eine andere EntitĂ€t darstellt. WĂ€hrend in Navigationsdatenbanken viele verschiedene Informationen in einem Datensatz abgelegt werden, wird in relationalen DBMS fĂŒr jeden Informationstypen eine eigene Tabelle angelegt. Diese Tabellen (Relationen) stehen in Beziehungen zueinander und können mithilfe von Keys miteinander verlinkt werden.

Beiden Systemen, dem Navigations- und dem relationalen Datenbanksystem, ist gemeinsam, dass sie ihre Daten mithilfe von Schleifen (Loops) sammeln, wĂ€hrend RDBMS diesen Vorgang sogar fĂŒr jeden einzelnen Datensatz durchfĂŒhren mĂŒssen. Edgar F. Codds Lösungsvorschlag war daher eine Datenbanksprache, die eher Set-orientiert ist, sodass mit dem AusfĂŒhren eines einzigen Befehls eine ganze Reihe an Daten gefunden und ausgegeben werden konnte. Genau dies setzte die Datenbanksprache SQL spĂ€ter um.

Um die Performance weiter zu verbessern, wurden Datenbanksysteme mit integrierter Hardware und Software gebaut. Der Erfolg dieses Datenbanksystems blieb aber aus, weil es nicht mit der schnellen Entwicklung von Allzweck-Computern mithalten konnte. Aus diesem Grund sind die meisten Datenbanksysteme heute Software, die auf gÀngigen PCs lÀuft, obwohl manche Hersteller wie Oracle die Idee (bspw. mit ihrem System Exadata) weiterhin verfolgen.

Basierend auf Codd’s Konzepten entwickelte IBM in den frĂŒhen 1970er Jahren einen Prototyp namens System R, welche die Daten aufteilte, statt sie in einem Datenblock zusammenzupferchen und zu speichern. Da sich diese Herangehensweise als vielversprechend herausstellte und CODASYL in den Schatten stellte, entwickelte IBM SQL/DS, was spĂ€ter zu Database 2 (IBM DB2) wurde.

In den spÀten 1970er Jahren entwickelte Lary Ellison Oracle auf Basis der Abhandlungen zu System R von IBM, wobei jedoch erst die zweite Version von Erfolg gekrönt war.

1980er: dBase

Die 1980er Jahre brachten im Zuge der Desktop-Computer Software wie dBase hervor, welches mit seinen Komponenten das bisher benutzerfreundlichste Datenbanksystem war. Aufgaben wie das Öffnen, Lesen und Schließen von Dateien wurden schlicht von der Software ĂŒbernommen, sodass diese nicht mehr hĂ€ndisch erfolgen mussten.

1990er: Objektorientierte Datenbanken ODBMS

In den 1990er entwickelte sich die objektorientierte Programmierung, weshalb auch Programmierer und Designer begannen, ihre DatensÀtze als Objekte zu verstehen. So fand eine Bedeutungsverschiebung statt, sodass Objekte mit ihren Attributen in Verbindung gebracht werden, also bspw. persönliche Daten zu einer bestimmten Person, statt externe Felder zu sein.

2000er: NoSQL und NewSQL

WĂ€hrend sich auch die Software- und Webentwicklung weiter zur Benutzerfreundlichkeit entwickelt, lĂ€sst sich auch in der Datenbankverwaltung ein NoSQL Trend feststellen. In vielen FĂ€llen wird auch auf XML, kurz fĂŒr Extensible Markup Language, zurĂŒckgegriffen, um hierarchisch strukturierte Daten darzustellen, Daten schneller zu laden als bspw. in einer SQL-Datenbank und sie horizontal skalierbar zu machen. Dazu zĂ€hlen unter anderem Sitemaps im Footer von Websites zur Indexierung der Unterseiten, Personalunterlagen, SteuererklĂ€rungen, Patente oder sogar wissenschaftliche Artikel.

Eine weitere Entwicklung ist die Verwendung von NewSQL, welches eine moderne Form der RDBMS ist und eine horizontale Skalierbarkeit erlaubt, jedoch weiterhin auf SQL basiert und die gleiche Datensicherheit bzw. IntegritĂ€t bietet. WĂ€hrend Anwendungen und auch die Datenbank an sich lange Zeit entweder lokal oder auf dem eigenen Server gespeichert und verwaltet wurde und wird, entwickelt sich wie auch in vielen anderen Data Bereichen der Trend zur Cloud. Um die Sicherheit zu gewĂ€hren und den Zugriff einzuschrĂ€nken, gibt es hier spezielle Cloud Anwendungen fĂŒr Unternehmen oder ganze Enterprise Clouds.

Bis heute verwendete DBMS sind:

  • IBM IMS
  • Microsoft SQL Server
  • IBM DB2
  • Database 12c von Oracle
  • MySQL

DBMS bei der Webagentur TenMedia

TenMedia ist eine junge Software- und Webagentur in Berlin. Dynamische Webseiten und Individualsoftware gehören seit 2011 fest zu unserem breitgefĂ€cherten Portfolio. Bei uns gibt es keinen Code von der Stange – unser Entwicklungsteam schneidert jede Anwendung nach Maß und geht dabei auf individuelle KundenwĂŒnsche und Anforderungen ein. Wir folgen immer den neuesten Trends und arbeiten mit state-of-the-art Technologien, darunter auch DBMS wie MySQL in der aktuellsten Version.

FĂŒr ein unverbindliches Kennenlernen sind wir jederzeit telefonisch, per Mail oder persönlich in unserem Office in Berlin Mitte erreichbar.