Klíčem je zde méně o „je to vztah?“ a další informace o „jak k tomu získám přístup?“
MongoDB není "antireferenční". MongoDB nedělá mají výhody spojení, ale to dělá mít výhodu vložených dokumentů.
Pokud rozumíte těmto kompromisům, je naprosto spravedlivé používat reference v MongoDB. Je to opravdu o tom, jak plánujete tyto objekty dotazovat.
Možná. Některé věci ke zvážení.
- Hrajte
games
mají hodnotu mimo kontextuser
? - Kolik
games
bude jedenuser
mít? - Je
games
transakční povahy? - Jak budete přistupovat ke
games
? Potřebujete vždy všechny hry uživatele?
Pokud plánujete vytvářet žebříčky a uživatel může generovat stovky herních dokumentů, pak je pravděpodobně fér mít hry ve vlastní sbírce. Ukládání deseti tisíc instancí „hry“ uvnitř každého uživatele není nijak zvlášť užitečné.
Ale v závislosti na vašich odpovědích na výše uvedené můžete skutečně jít oběma způsoby. Jako lakmusový papírek bych zkusil spustit nějaké úlohy Map / Reduce (tj. vytvořit jednoduchý žebříček ), abyste viděli, co si myslíte o struktuře svých dat.