2010-02-05 13 views
7

Sono davvero difficile cercare di capire questo nuovo concetto dopo aver lavorato così a lungo con i database relazionali ...Oggetti correlati in CouchDB

Qualcuno può spiegare come devo fare per la memorizzazione di esempio, una gerarchia categoria?

in un DB relazionale, avrei:

Categoria:
    CategoryId
    ParentCategoryId
    Nome

o qualcosa del genere ..

risposta

2

Puoi iniziare con lo stesso approccio che avresti con la relazione al database: creazione di un documento separato per ogni categoria e mantenimento di un riferimento alla categoria padre.

Se si desidera interrogare un'intera sottostruttura o breadcrumb con una singola query, è necessario mantenere un campo array che contenga tutte le chiavi dell'antenato. Quindi puoi creare una vista che percorra gli antenati e che emetta [ancestor_key, doc] per interrogare una sottostruttura. Per ottenere i dati dei breadcrumb per una categoria, creare un bulk query sugli ID degli antenati.

+0

Hmm ok Capisco .. Stavo leggendo in NOSQL e una delle cose che ho ricevuto è che un documento dovrebbe essere totalmente autonomo, e l'ho preso come non si riferisce ad altri documenti ecc. Grazie per il vostro Aiuto –

Problemi correlati