Това зависи до голяма степен от връзката между вашите обекти (т.е. съотношението на броя на обектите от всяка страна на връзката и честотата на актуализациите), така че зависи от вашето приложение и изисквания.
Добър ресурс за разглеждане (който може да приемете като „най-добра практика“) е блогът от MongoDB относно денормализацията:
http:/ /blog.mongodb.org/post/87200945828/6-rules-of-thumb-for-mongodb-schema-design-part-1
http:/ /blog.mongodb.org/post/87892923503/6-rules-of-thumb-for-mongodb-schema-design-part-2
http:/ /blog.mongodb.org/post/88473035333/6-rules-of-thumb-for-mongodb-schema-design-part-3
много накратко, защото това е широка тема:говорим за N-N връзка и тя зависи от съотношението на N
Ако обектите са неизменни, препоръчително е да ги вложите в друг обект, тъй като няма да се налага да се справяте с актуализации и търсенето е тривиално.
Ако обектите не са неизменни, трябва да претеглите цената на актуализациите спрямо цената на търсене в колекция, за да търсите ID, след което да търсите в другата колекция за обектите, свързани с този/тези идентификатори.