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

MongoDB - ist DBREF notwendig?

Dbref sollte meiner Meinung nach bei der Arbeit mit Mongodb vermieden werden, zumindest wenn Sie mit großen Systemen arbeiten, die Skalierbarkeit erfordern.

Wie ich weiß, stellen alle Treiber eine zusätzliche Anfrage zum Laden von DBRef, also ist es kein 'beitreten ' innerhalb der Datenbank, ist es sehr teuer.

Gibt es eine Möglichkeit, auf andere Dokumente zu verweisen, ohne das etwas überflüssige $ref-Feld zu haben?

Ja, Referenzen im Hinterkopf behalten, Namenskonventionen für 'Fremdschlüssel erstellen ' (etwas wie RefUserId oder nur UserId) und speichern Sie nur die ID des referenzierten Dokuments. Referenzierte Dokumente bei Bedarf selbst laden. Halten Sie auch Ausschau nach Denormalisierung und Einbettung, die Sie durchführen können, da dies normalerweise die Leistung erheblich verbessert.