MongoDB
 sql >> Database >  >> NoSQL >> MongoDB

Archiviazione della gerarchia di directory in un archivio dati chiave-valore

Il metodo attualmente in uso è chiamato modello elenco di adiacenza.

Un altro modello per archiviare dati gerarchici in un database (relazionale) è il modello a insiemi nidificati. La sua implementazione nei database SQL è ben nota. Vedi anche questo articolo per l'algoritmo di attraversamento dell'albero di preordine modificato.

Un metodo molto semplice:potresti memorizzare un percorso per oggetto - con quelli dovrebbe essere facile interrogare alberi nei database NOSQL:

{ path: "Color", ... }
{ path: "Color.Red", ... }
{ path: "Color.Red.Apple", ... }
{ path: "Color.Red.Cherry", ... }

Quando i nodi verranno rimossi o rinominati, è necessario aggiornare alcuni percorsi. Ma in generale, questo metodo sembra promettente. Devi solo riservare un carattere speciale come separatore. Il sovraccarico dello spazio di archiviazione dovrebbe essere trascurabile.

modifica:questo metodo è chiamato percorso materializzato

Infine, ecco un confronto tra diversi metodi per i dati gerarchici nei database NOSQL.