вы пытаетесь впихнуть реляционную модель в рамках докментоориетированной монги.
name,date,user_id
user_id вообще быть не должно.
Вообще самый простой способ, представьте себе обычную реляционную базу, затем представьте себе запросы с джойнами, которые вы хотите юзать. Результат этого запроса - и есть ваша коллекция. Обновились записи в табличках - перестроили коллекцию с нуля.
Коллекция в этом случае будет агрегацией данных, эдакий кэш. Можно держать несколько коллекций, как в случае с реляционными базами и формировать часть коллекций динамически через map/reduce при изменении данных. Как оптимизировать обновление этой выборки - это уже ваша задача как программиста.