Hier geht es weniger um "Ist das eine Beziehung?" und mehr über "Wie greife ich darauf zu?"
MongoDB ist nicht "Anti-Referenz". MongoDB tut das nicht haben die Vorteile von Joins, aber tun profitieren Sie von eingebetteten Dokumenten.
Solange Sie diese Kompromisse verstehen, ist es vollkommen fair, Referenzen in MongoDB zu verwenden. Es geht wirklich darum, wie Sie diese Objekte abfragen möchten.
Vielleicht. Einige Dinge zu beachten.
- Spiele
games
außerhalb des Kontexts vonuser
einen Wert haben ? - Wie viele
games
wird ein einzelneruser
haben? - Ist
games
Transaktionscharakter? - Wie werden Sie auf
games
zugreifen ? Benötigen Sie immer alle Spiele eines Benutzers?
Wenn Sie vorhaben, Bestenlisten zu erstellen, und ein Benutzer Hunderte von Spieldokumenten erstellen kann, ist es wahrscheinlich fair, Spiele in seiner eigenen Sammlung zu haben. Das Speichern von zehntausend Instanzen von "Spiel" in jedem Benutzer ist nicht besonders nützlich.
Aber abhängig von Ihren Antworten auf das Obige könnten Sie wirklich in beide Richtungen gehen. Als Lackmustest würde ich versuchen, einige Map/Reduce-Jobs auszuführen (d. h. eine einfache Bestenliste erstellen ), um zu sehen, wie Sie über die Struktur Ihrer Daten denken.