Speichern der Verzeichnishierarchie in einem Schlüsselwertdatenspeicher

Was ist eine saubere / effiziente Methode zum Speichern der Verzeichnishierarchie / des Verzeichnisbaums in einer Schlüsselwert-Datenbank (in meinem Fall MongoDB, aber eine davon)?

Zum Beispiel eine Baumstruktur

- Cars 
   + Audi 
   + BMW
      - M5
   + Ford
- Color
   + Red
      - Apple
      - Cherry
   + Purple
- Funny

Die Methode, die ich jetzt verwende, verknüpft jedes Objekt mit seinem übergeordneten Objekt

{ 
  dir: "red"
  parent-dir: "color"
}

Dies macht es sehr effizient / schnell, irgendeinen Aspekt des Baums einzufügen und neu zu ordnen (zum Beispiel, wenn ich Rot und alle seine Kinder in das Cars-Verzeichnis verschieben möchte).

Aber diese Methode ist zum Kotzen, wenn ich für ein bestimmtes Verzeichnis alle Unterverzeichnisse und deren untergeordnete Verzeichnisse rekursiv verwenden möchte. Um das Parsen effizienter zu gestalten, kann ich zum Beispiel eine Struktur haben

{ 
  dir: "red"
  children: "audi, bmw, ford"
}

{ 
  dir: "bmw"
  children: "m5"
}

Aber wenn ich den Baum modifizieren will, muss eine ganze Reihe von Objekten berührt und modifiziert werden.

Gibt es andere Methoden zum Speichern einer Verzeichnisstruktur in einem KV-Speicher?

Antworten auf die Frage(4)

Ihre Antwort auf die Frage