Ein Datenbankmodell ist die theoretische Grundlage für eine Datenbank und legt fest, auf welche Art und Weise die Daten in dem Datenbanksystem gespeichert und bearbeitet werden können.
Ein Datenbankmodell von heute kann sehr komplex werden, da immer mehr Informationen in einem Datenbankmodell abgebildet und modelliert werden müssen.
Das hierarchische Datenbankmodell ist das älteste logische Datenbankmodell, es bildet die reale Welt durch eine hierarchische Baumstruktur ab.
Jeder Satz (Record) hat also genau einen Vorgänger, mit Ausnahme genau eines Satzes, nämlich der Wurzel der so entstehenden Baumstruktur. Das hierarchische Modell ist im Bereich der Datenbanksysteme heute weitgehend von anderen Datenbankmodellen abgelöst worden.
Das nächste Datenbankmodell ist das Netzwerk-Modell.
Es fordert keine strenge Hierarchie, d.h. ein Datensatz kann mehrere Vorgänger haben.
Auch können mehrere Datensätze an oberster Stelle stehen. Es existieren meist unterschiedliche Suchwege, um zu einem bestimmten Datensatz zu kommen.
Das relationale Datenbankmodell schaffte in den 1990er einen technischen Durchbruch.
eine relationale Datenbank kann man sich als eine Sammlung von Tabellen (den Relationalen) vorstellen, in welchen Datensätze abgespeichert sind.
Etwa 90% der eingesetzten Datenbanken basieren auf dem relationalen Datenbankmodell.
Mit dem Aufkommen objektorientierter Programmiersprachen werden vermehrt objektrelationale und objektorientierte Datenbanken eingesetzt. Diese Datenmodelle verfolgen den Ansatz, Daten zusammen mit ihren Funktionen in einem Objekt zu Speichern.
Das Datenmodell basiert auf den Paradigmen der objektorientierten Programmierung und im Einzelnen der jeweiligen Programmiersprache, die zum Einsatz kommt (z.B. C++, Java oder C#).
Dieses Vorgehen hat Vorteile gegenüber dem relationalen Entwurf, wenn man komplexe Datenobjekte speichern möchte, die nur schwer auf die flachen relationalen Tabellenstrukturen abgebildet werden können.
Objektdatenbanken haben jedoch noch immer Nachteile gegenüber relationalen Datenbanken bei der Verarbeitung großer Datenmengen. Dies ist beispielweise durch Zugriffspfade zu Objekten über mehrere Pfadarten (bspw. Vererbung und Assoziation) verursacht.
Wenn z.B. im Internet sehr große Datenmengen verarbeitet werden müssen werden auch so gennante NoSQL-Datenbanken eingesetzt. Hier unterscheidet man z.B. Key Value Stores-, Spalten-, Dokumentorientierte- und Graphdatenbanken.
No hay comentarios:
Publicar un comentario