MongoDB
 sql >> Datenbank >  >> NoSQL >> MongoDB

So organisieren Sie eine Viele-zu-Viele-Beziehung in MongoDB

Was ich gesehen habe und was ich derzeit verwende, sind eingebettete Arrays mit Knoten-IDs in jedem Dokument.

Dokumentbenutzer1 hat also Eigenschaftsgruppen:[id1,id2]

Und Dokumentgruppe1 hat die Eigenschaft Benutzer:[Benutzer1]. Dokumentengruppe2 hat auch die Eigenschaft Benutzer:[Benutzer1].

Auf diese Weise erhalten Sie ein Gruppenobjekt und können einfach alle zugehörigen Benutzer auswählen, und das Gleiche für den Benutzer.

Dies erfordert etwas mehr Arbeit beim Erstellen und Aktualisieren des Objekts. Wenn Sie sagen, dass 2 Objekte verwandt sind, müssen Sie beide Objekte aktualisieren.

Es gibt auch ein DBReferences-Konzept in MongoDB und abhängig von Ihrem Treiber zieht es automatisch referenzierte Objekte, wenn ein Dokument abgerufen wird.

http://www.mongodb.org/display/DOCS/Database+References#DatabaseReferences-DBRef