Zum Inhalt springen

Netzwerkdatenbankmodell Vs. Relationales Modell

Wir analysieren die Vor- und Nachteile des relationalen und Netzwerkdatenbankmodells. Wie jedes Modell funktioniert und die Stärken, Schwächen und Fähigkeiten in jedem Modell hervorhebt. Die Unterschiede zwischen diesen beiden Modellen können zum Erfolg oder Misserfolg bei der Entwicklung einer Anwendung führen.

Im Folgenden wird die Funktionsweise der einzelnen Modelle erläutert und die Stärken, Schwächen und Fähigkeiten der einzelnen Modelle hervorgehoben. Die Unterschiede zwischen diesen beiden Modellen können zum Erfolg oder Misserfolg bei der Entwicklung einer Anwendung führen.

 

 

Relationales Datenbankmodell

Sie sitzen im Bus und fahren nach Hause. Ein bisschen müde, aber nicht so schläfrig, beschließen Sie, Bon Jovi zu hören. Beim zweiten Gedanken möchten Sie sich einen seiner Filme ansehen (Cry Wolf fällt mir ein). Die Spotlight-Suche des iPhones ist nett. Geben Sie als Schlüsselwort „Bon Jovi“ ein, und der Media Player findet nahtlos Musik und Filme - zwei verschiedene Kategorien - auf dem Gerät.

Bei allgemeinen Vorgängen wie den oben genannten wird normalerweise ein relationales Datenbankverwaltungssystem (RDBMS) verwendet. Die Datenbank, nennen wir sie Mediensammlung, definiert drei Tabellen ARTIST, ALBUM und MOVIE, in denen die Namen der Künstler, Alben und Filmtitel gespeichert sind. Wenn ein bestimmter Künstler ausgewählt wird, wie in unserem Beispiel Bon Jovi, wird eine SQL-Abfrage ausgegeben, um alle Alben und Filmtitel abzurufen, die dem ausgewählten Künstler gehören. Die zurückgegebenen Daten werden auf dem iPhone-Bildschirm angezeigt, normalerweise in alphabetischer Reihenfolge.

 

Schwächen des relationalen Datenmodells

Diese scheinbar einfachen Schritte zeigen zwei grundlegende Schwächen des relationalen Datenmodells auf. Die erste Schwäche ist die Tatsache, dass jede Beziehung doppelte Spalten in beiden damit verbundenen Tabellen erfordert. Beispielsweise müssen sowohl die ARTIST- als auch die ALBUM-Tabelle eine Spalte enthalten und somit pflegen, in der die Namen der Künstler gespeichert sind, damit eine Verbindung zwischen einem Künstler und seinen Alben hergestellt werden kann. Dies bedeutet, dass zusätzlicher Speicherplatz sowie Programmieraufwand erforderlich sind, um die beiden Spalten "synchron" zu halten. Das Ändern des Namens eines Künstlers bedeutet, dass für alle ALBUM-Einträge für diesen Künstler die Spalte "Künstlername" aktualisiert werden muss.

Die zweite Schwäche und der relevantere Aspekt dieses Artikels ist die Tatsache, dass eine einzelne Beziehung möglicherweise nur zwei Tabellen enthält, die Primärschlüsseltabelle (Haupttabelle) und die Fremdschlüsseltabelle (Referenztabelle). In der Music Collection-Datenbank müssen sowohl die ALBUM-Tabelle als auch die MOVIE-Tabelle auf die ARTIST-Tabelle verweisen. Aufgrund dieser Einschränkung müssen zwei separate Beziehungen definiert werden. eine, die den ALBUM-Tabellenverweis auf die ARTIST-Tabelle enthält, und einen, der die MOVIE-Tabelle enthält, die auf die ARTIST-Tabelle verweist.

 

Ineffizienter Datenabrufvorgang - Relationales Datenmodell

Dies führt zu einem ziemlich ineffizienten Datenabrufvorgang, wenn alle Alben und Filme gefunden werden, die einem Künstler zugeordnet sind. Während des ersten Vorgangs ruft das Datenbanksystem alle zugehörigen Alben aus der ALBUM-Tabelle ab und speichert die Ergebnismenge an einem temporären Speicherort. Während des zweiten Vorgangs wird derselbe Vorgang wie beim ersten ausgeführt, nur dass diesmal Ergebnisse von FILMEN abgerufen werden. Die letzte Operation führt die beiden Ergebnismengen zusammen, ordnet sie bei Bedarf neu an und gibt dann die zusammengeführte Ergebnismenge zurück.

Die Ineffizienz des relationalen Modells ist möglicherweise kein Showstopper, wenn die Datenmenge in der Datenbank relativ gering ist und reichlich Rechenressourcen zur Verfügung stehen, zumal es heutzutage nicht ungewöhnlich ist, dass eine durchschnittliche Person einen Computer mit einem 2-GHz-Dual besitzt. Kern-CPU mit 2 GB Speicher und 500 GB Festplatte. Auf der anderen Seite gibt es einen schnell wachsenden Markt für kleine Computer, die ein Datenbanksystem (DBMS) benötigen - Smartphones, tragbare Musikplayer und GPS-Geräte, um nur einige zu nennen. Bei begrenzter CPU-Geschwindigkeit und begrenztem Arbeitsspeicher können diese Handheld-Systeme erheblich von einem DBMS profitieren, das eine flexible und effiziente Speicherung und Abfrage von Daten sowohl hinsichtlich der Leistung als auch der Festplattennutzung ermöglicht.

Das Netzwerkdatenbankmodell bietet genau das.

 

Netzwerkdatenbankmodell

Das Netzwerkmodell ist eine erweiterte Form des hierarchischen Datenmodells und repräsentiert Daten in einem Baum von Datensätzen. Beziehungen zwischen Tabellen (Datensätzen) werden als Mengen ausgedrückt. Ein Satz enthält einen übergeordneten Datensatz (Eigentümer) und einen oder mehrere untergeordnete Datensätze (Mitglieder). Verwandte Datensätze in einem Satz werden direkt durch Zeiger verknüpft, anstatt wie im relationalen Datenmodell doppelte Spalten abzugleichen.

 

Relationales Datenmodell Netzwerkdatenmodell

 

Aufzeichnungen, die einem einzelnen Eigentümer zugeordnet sind

Das Netzwerkdatenbankmodell ermöglicht die Zuordnung von Datensätzen aus mehr als einer Tabelle zu einem einzelnen Eigentümerdatensatz einer anderen Tabelle. Dies bietet einen deutlichen Vorteil gegenüber dem relationalen Gegenstück, wenn Ergebnisse aus mehreren Fremdschlüsseltabellen abgefragt werden, die einer Primärschlüsseltabelle zugeordnet sind. In der Media Collection-Datenbank können sowohl die ALBUM- als auch die MOVIE-Datensätze auch Mitglieder des ARTIST-Datensatzes in einem Satz sein, wie in Abbildung 2 dargestellt. Dies bedeutet, dass sowohl Alben als auch Filme für einen bestimmten Künstler in einem einzigen Vorgang abgerufen werden können. Dadurch entfällt die Notwendigkeit, temporäre Ergebnisse während des Vorgangs zu speichern und möglicherweise neu zu ordnen, was zu einer besseren Abfrageleistung führt. Ohne die Notwendigkeit, doppelte Spalten zu speichern und zu verwalten, tragen Netzwerkdatenbanken auch dazu bei, den Speicherplatz und die Speichernutzung zu reduzieren.

 

Leistungsfallstudie

Daten aus der Praxis zeigen, dass der Leistungsgewinn und die Ressourceneinsparungen bei der Verwendung von Netzwerkdatenbanken erheblich sein können. In einer Datenstruktur unter Verwendung einer Drei-Wege-Beziehung zwischen den Tabellen ARTIST, ALBUM und SONG verglichen unsere SQL-Entwickler die Datenänderung und die Abfrageleistung der relationalen und Netzwerkdatenbankmodelle sowohl mit Desktop-Systemen als auch mit kleinen Consumer-Geräten. Sie stellten fest, dass das Netzwerkmodell 29 Prozent weniger Speicherplatz zum Speichern der gleichen Anzahl von Datensätzen und Beziehungen benötigte als das relationale Datenmodell. Alle Speichereinsparungen sind darauf zurückzuführen, dass die Fremdschlüsselindizes ARTIST-ALBUM und ALBUM-SONG durch festgelegte Zeiger ersetzt wurden.

Das Entfernen dieser Datenstrukturen hatte enorme Auswirkungen auf die Speicheranforderungen, da ein typischer B-Tree-Index ungefähr das 1,3-fache des von ihm indizierten Speicherplatzes benötigt. Sie stellten außerdem fest, dass das Netzwerkdatenbankmodell eine bis zu 23-mal bessere Einfügeleistung und eine bis zu 123-mal schnellere Abfrageleistung erzielte, wie in Tabelle 1 gezeigt.

 

Netzwerk vs relationale Benchmarks
Tabelle 1 - Benchmark-Ergebnisse von relationalen und Netzwerkmodellen auf x86- und ARM7-Systemen.

 

Unterschiedliche Verwaltungsanforderungen bedeuten unterschiedliche Datenstrukturen und unterschiedliche Methoden zum Speichern und Zugreifen auf die Daten. Das resultierende System kann aus wenigen Tabellen ohne Beziehungen oder Hunderten von Tabellen bestehen, die komplexen Beziehungen zugeordnet sind. Während das relationale Datenmodell der De-facto-Standard ist, wissen wir jetzt, dass es nicht immer die optimalen Lösungen für komplexere Datenverwaltungsprobleme bietet. Die Auswahl des geeigneten Datenmodells oder sogar die Kombination mehrerer Modelle kann zu einem weitaus effizienteren Ergebnis führen als das relationale Datenmodell allein. Das Ergebnis sind erhebliche Kosteneinsparungen, eine Verbesserung der Qualität und eine verbesserte Benutzererfahrung.

 

Netzwerkmodellsatznavigation

Fazit - Netzwerkmodell für Geschwindigkeit, relational für Benutzerfreundlichkeit

Während relationales Datenmodell ist aufgrund seiner Benutzerfreundlichkeit sehr beliebt und erfordert Schlüssel- und Indextabellen, die eine Anwendung drastisch verlangsamen. Das Netzwerkdatenbankmodell Bietet einen schnelleren Zugriff auf die Daten und ist die optimale Methode für eine schnelle Anwendung. Wenn Sie also auf Ihren Lieblingskünstler klicken und die Liste der über 20 Alben und Filmtitel in Sekundenbruchteilen auf Ihrem Media Player anzeigen, wird diese möglicherweise nur von einer Netzwerkmodul-Datenbank-Engine unter der Haube gesteuert. Raima Database Manager nutzt beide Modelle. Erfahren Sie mehr über unsere erweiterte Datenmodellierung oder Laden Sie jetzt eine kostenlose Testversion herunter.

Bereit anzufangen?