Was sind hierarchische Daten?
Hierarchische Daten sind eine Datenstruktur, in der Elemente in übergeordnet-untergeordnet-Beziehungen in einer Baumstruktur miteinander verknüpft sind. Stellen Sie sich Daten wie einen Stammbaum vor, in dem Großeltern, Eltern, Kinder und Enkelkinder eine Hierarchie miteinander verbundener Daten bilden. Diese Struktur wird in der Regel verwendet, um ein Organigramm, ein Projekt mit Aufgaben oder eine Taxonomie von Sprachbegriffen anzuzeigen.
In hierarchischen Daten hat jeder dieser „untergeordneten“ Knoten nur einen „Elternteil“ (übergeordneter Knoten), aber jeder Elternteil kann mehrere untergeordnete Knoten haben. Der erste Knoten an der Spitze der Hierarchie wird als Stammknoten bezeichnet. Wenn Informationen abgerufen werden müssen, wird der gesamte Baum vom Stammknoten abwärts gescannt. Da der gesamte Baum jedes Mal gescannt werden muss, wenn ein Benutzer eine Anfrage stellt, entsteht ein unflexibles, langsames System. Moderne Datenbanken haben sich dahingehend weiterentwickelt, dass mehrere Hierarchien über dieselben Daten verwendet werden, um eine schnellere und einfachere Suche zu ermöglichen.
Hierarchische Daten werden heute jedoch immer noch sehr häufig verwendet. Eine übliche Verwendung einer hierarchischen Datenstruktur sind Personalinformationen. Unter einer Organigrammstruktur befindet sich oben der Stammknoten des CEO mit einer Personalstruktur darunter.
Das in den 1960er Jahren von IBM entwickelte hierarchische Datenmodell ist einer der frühesten Modelltypen. Es wurde jedoch schnell durch ein relationales Datenmodell ersetzt, um einige der erheblichen strukturellen Probleme dieses Modells zu überwinden.
Warum ist Datenstruktur wichtig?
Die Struktur der Daten einer Organisation ist von entscheidender Bedeutung. Damit ein Unternehmen Informationen eingeben, verarbeiten, abrufen und verwalten kann, ist die Auswahl des Datenstrukturtyps unerlässlich. Stellen Sie sich vor, auf Ihrem Computer gäbe es keine Ordnerstruktur oder Namenskonventionen. Sie hätten große Schwierigkeiten, Daten zu finden oder zu verwenden.
In einem Unternehmen finden Sie stattdessen Ordner, die mit logischen Abteilungsnamen angeordnet sind. In diesen Abteilungen können Ordner nach Finanzvierteln oder einer anderen logischen Methode angeordnet werden, die für dieses Unternehmen gilt. Dann werden die einzelnen Dateien beschreibend benannt, oft mit Daten oder Versionen, die in einem bestimmten Format aufgezeichnet wurden. Diese werden alle in Alpha-Reihenfolge gespeichert. Das heißt, wenn ein Mitarbeiter auf eine bestimmte Datei zugreifen muss, kann er einen einfache Drilldown durchführen und finden, was er benötigt. In ähnlicher Weise ermöglicht eine gute Datenstruktur gute, schnelle und effiziente Geschäftspraktiken.
Eine große Einschränkung der Data Science im Allgemeinen besteht darin, dass die Welt zwar fließend und 3D ist, Computer sie jedoch als flach und unveränderlich wahrnehmen. Menschen wissen, dass es 200 Hunderassen und 200 Schlangenarten gibt, ein Computer weiß dagegen nur, dass 400 Artikel vorhanden sind. Eine Datenstruktur ist wichtig für das Gruppieren, Zugreifen, Verarbeiten und Anzeigen von Daten auf eine Weise, die von Computern interpretiert werden kann.

Wann sollte eine Organisation hierarchische Daten verwenden?
Derzeit verwenden Organisationen wie Banken und Telekommunikation hierarchische Daten in ihren Anwendungen. Das liegt daran, dass sie schnelle und hochgenaue Leistung benötigen. Die Windows-Registrierung auf den meisten Computern ist auch ein Beispiel für eine hierarchische Datenstruktur. Komplexe Fertigungsprojekte verwenden aufgrund großer Datenmengen häufig auch hierarchische Datenmodelle.
Hierarchische Daten werden am besten verwendet, wenn:
- die Daten in einer „Baum“-Form mit einer übersichtlichen untergeordneten und übergeordneten Struktur gespeichert werden können
- es notwendig ist, die Struktur der Hierarchie zu erfassen
- es hohe Anforderungen an die Datenmenge gibt
- bestehende Systeme zu komplex sind, um auf ein relationales oder Netzwerkmodell zu migrieren
Alternativen zu hierarchischen Daten
Relationale Daten
Das gebräuchlichste Datenmodell, bei dem Daten in Beziehungen gruppiert werden. Eine Sammlung von Variablen ist in den Kategorien „Wahr“, „Falsch“ oder „Null“ zusammengefasst. Dann werden Datenelemente mit anderen Elementen zusammengestellt, die Variablen und Attribute gemeinsam nutzen. Gruppen sind durch Beziehungen miteinander verbunden. Diese Artikelgruppe ähnelt dieser Gruppe. Im Gegensatz zu hierarchischen Daten, die aufgrund ihrer eins-zu-viele-Natur beschränkt sind, können relationale Daten viele-zu-viele-Beziehungen enthalten. Relationale Datenbanken verwenden Structured Query Language (SQL), die Standard-Abfragesprache.
Das relationale Modell eignet sich hervorragend zur Aufrechterhaltung der Datenkonsistenz zwischen Instanzen. Wenn ein Kunde beispielsweise Geld an einem Geldautomaten abhebt, wird diese Änderung im Guthaben in der Smartphone-App berücksichtigt. Dadurch kann sichergestellt werden, dass mehrere Dateninstanzen in einer Reihe von Systemen korrekt sind.
Wie im Vergleich zu einer hierarchischen Struktur werden Daten nicht in einer Baumstruktur, sondern in Tabellen gespeichert.
Netzwerkmodell
Das Netzwerkmodell wurde wie das relationale Datenmodell erstellt, um die mit hierarchischen Datenbankmodellen verbundenen Mängel zu beheben. In einem Netzwerkdatenmodell können untergeordnete Daten mit mehreren übergeordneten Daten verknüpft werden, obwohl sie als Eigentümer und Mitglieder bezeichnet werden.
Dieses Modell unterstützt eine Reihe von Beziehungen und ist weitaus flüssiger als hierarchische Modelle. Sie sind jedoch viel komplizierter, sodass sie schwierig zu verwalten und zu warten sind. Es ist immer noch nicht so flexibel wie relationale Datenmodelle, und nicht alle Beziehungen können genau modelliert und mit Eigentümern und Mitgliedern verknüpft werden.
Vorteile von hierarchischen Datenstrukturen
Daten können einfach abgerufen werden
Da die Verbindungen zwischen Datenknoten so gut definiert sind, ist das Auffinden und Abrufen von Daten einfach. Da übergeordnete und untergeordnete Daten eng beieinander gespeichert sind, sind auch die Navigation und der Datenabruf schnell.
Referenzielle Integrität
Die Integrität der Daten bleibt immer erhalten, da alle in der übergeordneten Tabelle vorgenommenen Änderungen automatisch in der untergeordneten Tabelle geändert werden.
Einfacher Aufbau
Die umgedrehte übergeordnet-untergeordnet-Beziehungsstruktur ist sofort und einfach verständlich. Sie ist konzeptionell einfach, hat eine klare Befehlskette innerhalb der Datenbank und bietet daher hohe Leistung. Aufgrund der einfachen Struktur wird auch der Datenaustausch gefördert.
Gute Sicherheit
Die Datenbanksicherheit wird vom Datenbankmanagementsystem bereitgestellt und durchgesetzt. Es ist so sicher, dass einige Entwickler von strukturierten Abfragesprachen sagen, dass Sie ein Zauberer sein müssen, um die Daten herauszuholen.

Herausforderungen der hierarchischen Datenstrukturen
Flexibilität
Das Modell ist unflexibel und starr, und das Hinzufügen eines Knotens oder einer Beziehung kann die gesamte Struktur stören. Wenn eine übergeordnete und eine untergeordnete Tabelle nicht verwandt sind, ist das Hinzufügen eines neuen Eintrags in der untergeordneten Tabelle schwierig, da zusätzliche Daten zuerst in die übergeordnete Tabelle eingegeben werden müssen. Ebenso ist es schwierig, untergeordnete Daten von einer Ebene zur anderen zu verschieben.
Nur für eins-zu-viele-Beziehungen geeignet
Wenn ein Elternteil viele Kinder hat, sind diese Beziehungen leicht zu zeigen. Wenn es jedoch viele-zu-viele-Beziehungen gibt, sind diese schwieriger auszudrücken. Komplexere Beziehungen als übergeordnet-untergeordnet-Beziehungen werden in hierarchischen Daten nicht unterstützt. Untergeordnete Daten können nicht mit anderen übergeordneten Daten in Verbindung gebracht werden, und es besteht keine Möglichkeit, untergeordnete Daten und verschiedene übergeordnete Daten miteinander zu verknüpfen.
Löschungen
Wenn eine übergeordnete Datei gelöscht wird, werden auch alle untergeordneten Daten (und darüber hinaus) automatisch gelöscht. Stellen Sie sich vor, Sie löschen auf Ihrem Desktop-Computer alle darin enthaltenen Dateien, wenn Sie einen Ordner löschen. Dies ähnelt der Funktionsweise einer hierarchischen Datenbank für Löschungen.
Mangelnde Standards
Es gibt keine spezifische Datendefinitions- oder Datenmanipulationssprache. Im Allgemeinen ist das System auf die Starrheit angewiesen, um Standards durchzusetzen, und dies funktioniert nicht immer.
Komplexe Implementierung
Die Implementierung hierarchischer Datensysteme erfordert ein Verständnis der Eigenschaften des Datenspeichers und die Kenntnis der Organisationsstruktur. Damit wird die Implementierung im Vergleich zu anderen Systemen kompliziert und schwierig.
Die Zukunft der hierarchischen Datenmodelle
Die auch heute noch vorhandenen hierarchischen Modelle werden zunehmend unattraktiv. Es wäre ungewöhnlich, ein hierarchisches Datenmodell in einem neuen System zu implementieren. Ihre Starrheit, Schwierigkeiten bei der Umsetzung und enorme Einschränkungen machen sie unwirtschaftlich und umständlich in der Umsetzung.
Obwohl sie beim Zugriff auf die Daten effizient sein können, sind sie aufgrund ihrer restriktiven Natur weniger in der Lage, die Herausforderungen der überwältigenden Vielfalt an Datentypen und -mengen zu meistern.
Es war eines der ersten Datenmodelle und nicht vorhersehbar, dass es durch den raschen technologischen Wandel so schnell veralten würde – aber genau das geschieht gerade. Die Zukunft liegt in der Flexibilität und in der Eigenschaft, die hierarchische Daten nicht bieten können. Netzwerke und Ökosysteme ersetzen Hierarchien schnell durch eine organischere Art, Daten zu speichern und darauf zuzugreifen.