La chiave qui è meno su "è una relazione?" e altro su "come farò ad accedervi?"
MongoDB non è "anti-riferimento". MongoDB non ha i vantaggi dei join, ma ha hanno il vantaggio dei documenti incorporati.
Finché comprendi questi compromessi, è perfettamente corretto utilizzare i riferimenti in MongoDB. Si tratta davvero di come prevedi di interrogare questi oggetti.
Forse. Alcune cose da considerare.
- Fai
gameshanno un valore al di fuori del contesto dell'user? - Quanti
gamessarà un singolouserhai? - Sono
gamesnatura transazionale? - Come intendi accedere a
games? Hai sempre bisogno di tutti i giochi di un utente?
Se hai intenzione di creare classifiche e un utente può generare centinaia di documenti di gioco, probabilmente è giusto avere giochi nella propria raccolta. Archiviare diecimila istanze di "gioco" all'interno di ciascun utente non è particolarmente utile.
Ma a seconda delle tue risposte a quanto sopra, potresti davvero andare in entrambi i modi. Come cartina di tornasole, proverei a eseguire alcuni lavori Mappa/Riduci (ovvero creare una semplice classifica ) per vedere come ti senti riguardo alla struttura dei tuoi dati.