Лучший способ - взять реляционную БД, раз тут зреет структура и отношения. Для этого они и нужны.
Когда начинаются вопросы "какую структуру выбрать" или "как хранить, всё в 1 документе или по коллекциям" сразу становится понятно, что выбор БД был неверным.
Но раз уж монга, то лучше хранить всё в 1 документе, а не размазывать всё по кучи коллекций. А чтобы быстро искалось (в том числе, и по полям внутренних объектов) есть
индексы.
Да, у монги есть и подобие транзакций, и джойны. Но в реляционных БД это всё сделано лучше и надёжнее, ACID всё же. Так что минимум коллекций, потолще документы.