Einführung
Eine der leistungsstärksten Funktionen von RDataCore ist der flexible Ansatz zur Organisation von Entitäten in hierarchischen Strukturen. Anders als traditionelle Systeme, die explizite Ordner-Entitäten erfordern, verwendet RDataCore ein pfadbasiertes System, das automatisch Eltern-Kind-Beziehungen herstellt und dabei die Datenbank schlank und effizient hält.
In diesem Artikel werden wir untersuchen, wie Entity-Hierarchien in RDataCore funktionieren, von der Erstellung von Entitäten mit benutzerdefinierten Pfaden bis zur Nutzung des Import-Systems für Massen-Datenoperationen. Ob du Kunden, Bestellungen, Produkte oder andere Datentypen verwaltest – das Verständnis dieser Konzepte hilft dir, eine saubere, navigierbare Datenstruktur aufzubauen.
Wenn du neu bei RDataCore bist, möchtest du vielleicht zuerst unseren Guide zu Entitäten und Entity-Definitionen lesen, um die Grundlagen zu verstehen.
Frei wählbare Entity-Pfade
Beim Erstellen einer neuen Entität in RDataCore bist du nicht auf vordefinierte Ordnerstrukturen beschränkt. Stattdessen kannst du jeden beliebigen Pfad für deine Entität angeben. Dieser Pfad wird zum Standort der Entität in der hierarchischen Baumansicht.
Wenn du zum Beispiel eine neue Customer-Entität erstellst, könntest du den Pfad auf
/Clients setzen. Das System erkennt, dass dieser Pfad noch nicht existiert, und zeigt hilfreich an, dass es einen neuen Ordner namens "Clients" für deine Entität erstellen wird.Dieser Ansatz gibt dir vollständige Freiheit, deine Daten so zu organisieren, wie es für dein Geschäft sinnvoll ist. Möchtest du Kunden nach Region organisieren? Verwende Pfade wie
/Europa/Deutschland/Kunden oder /APAC/Japan/Kunden. Musst du B2B von B2C trennen? Erstelle Pfade wie /B2B/Enterprise/Kunden und /B2C/Retail/Kunden.Die Kernerkenntnis hier ist, dass du diese Ordnerstrukturen nicht vorher erstellen musst. Gib einfach den Pfad beim Erstellen deiner Entität an, und RDataCore erledigt den Rest.

Automatische Eltern-Auflösung
Eine der komfortabelsten Funktionen von RDataCores Pfadsystem ist die automatische Eltern-Auflösung. Wenn du anfängst, einen Pfad einzugeben, durchsucht das System bestehende Entitäten, die deiner Eingabe entsprechen, und bietet sie als Vorschläge an.
Dies wird besonders mächtig beim Aufbau von Beziehungen zwischen Entitäten. Stell dir vor, du hast bereits eine Customer-Entität unter
/Clients/john-doe--john@doe.com erstellt. Jetzt möchtest du eine Order-Entität erstellen, die zu diesem Kunden gehört. Während du /Cl in das Pfadfeld eingibst, schlägt RDataCore sofort die bestehende Kunden-Entität vor.Indem du diesen Vorschlag auswählst, platzierst du deine Order nicht nur im selben Ordner – du stellst eine direkte Eltern-Kind-Beziehung her. Die neue Order-Entität wird den Kunden als Elternteil haben und eine bedeutsame Verbindung in deinem Datenmodell schaffen.
Diese automatische Eltern-Auflösung funktioniert über alle Entitätstypen hinweg. Du kannst tiefe Hierarchien wie
/Clients/john-doe/Orders/order-123/Items/item-456 erstellen, wobei jede Ebene eine echte Entität mit korrekten Eltern-Kind-Beziehungen darstellt.
Virtuelle Ordner: Kein Datenbank-Overhead
Hier zeigt sich RDataCores Designphilosophie wirklich. Wenn du einen Pfad wie
/Clients/john-doe erstellst, erscheint der "Clients"-Teil als Ordner in der Entity-Baumansicht. Aber hier ist der clevere Teil: Dieser Ordner existiert nicht als tatsächliche Entität in der Datenbank.RDataCore verwendet "virtuelle Ordner" zur Anzeige hierarchischer Pfade in der UI. Diese Ordner sind rein visuelle Konstrukte, die dir beim Navigieren deiner Daten helfen. Sie verbrauchen keine Datenbankressourcen, erfordern keine Verwaltung und fügen deinem Datenmodell keine Komplexität hinzu.
Dieser Ansatz hat mehrere Vorteile:
- Reduzierter Datenbank-Footprint: Du speicherst nur tatsächliche Datenentitäten, keine organisatorischen Container
- Vereinfachte Verwaltung: Kein Erstellen, Aktualisieren oder Löschen von Ordner-Entitäten nötig
- Flexible Reorganisation: Virtuelle Pfade können ohne Migration von Ordnerdatensätzen geändert werden
- Sauberes Datenmodell: Deine Entity-Definitionen konzentrieren sich auf echte Geschäftsobjekte, nicht auf strukturelle Elemente
In der Baumansicht siehst du Ordner-Icons für virtuelle Pfade und entitätstypspezifische Icons für tatsächliche Entitäten. Diese visuelle Unterscheidung hilft dir, deine Datenstruktur auf einen Blick zu verstehen.
Eltern-Kind-Beziehungen
Jede Entität in RDataCore pflegt explizite Beziehungen zu ihrem Elternteil (und Kindern, falls vorhanden). Diese Beziehungen sind im Entity-Details-Panel unter dem Abschnitt "Relationships" sichtbar.
Wenn du die Details einer Entität ansiehst, siehst du:
- Parent: Die UUID der Eltern-Entität (falls vorhanden)
- Children: Eine Anzahl der Kind-Entitäten (falls vorhanden)
Diese Beziehungen sind mehr als nur organisatorisch – sie sind abfragbar. Du kannst die API verwenden, um alle Kinder einer bestimmten Entität abzurufen, die Hierarchie nach oben zu durchlaufen, um Vorfahren zu finden, oder komplexe Abfragen zu erstellen, die die Eltern-Kind-Struktur nutzen.
Die Beziehungsdaten enthalten die vollständigen Pfadinformationen, sodass leicht zu verstehen ist, wo genau eine Entität in deiner Hierarchie sitzt. Zum Beispiel könnte eine Order ihren Pfad als
/Clients/john-doe--john@doe.com anzeigen, was darauf hinweist, dass sie ein Kind der Customer-Entität an diesem Standort ist.
Import-Integration mit Pfad-Auflösung
RDataCores Pfadsystem wird noch mächtiger in Kombination mit der Import-Funktionalität. Beim Definieren eines Import-Workflows kannst du einen Zielpfad für alle importierten Entitäten angeben.
In der Import-Definition konfigurierst du:
- Entity Definition: Der Typ der zu erstellenden Entität (z.B. Customer)
- Path: Der Basispfad, unter dem Entitäten erstellt werden sollen (z.B.
/testo) - Field Mappings: Wie Quelldatenfelder auf Entitätsfelder abgebildet werden
Der Worker löst Pfade während des Imports automatisch auf. Wenn du Kundendaten mit einem angegebenen Pfad importierst, wird jede Kunden-Entität an diesem Ort erstellt. Das System handhabt die Eltern-Auflösung automatisch – wenn Entitäten bereits unter Elternpfaden existieren, werden Beziehungen entsprechend hergestellt.
Dies macht Massen-Datenoperationen nahtlos. Du kannst Tausende von Datensätzen aus CSV-Dateien, externen APIs oder anderen Quellen importieren, und jede Entität wird korrekt in deiner Hierarchie mit richtigen Eltern-Kind-Beziehungen positioniert.
Für komplexere Szenarien kannst du sogar dynamische Pfadausdrücke verwenden, die Daten aus den importierten Datensätzen selbst enthalten. Zum Beispiel würde das Setzen des Pfads auf
/Customers/{{region}} Kunden während des Imports automatisch in regionbasierte Ordner organisieren.
