Я бы лично рекомендовал вам прекратить использование Map Reduce для этого, прежде чем вы начнете (в отношении других ответов).
Как человек, которому пришлось сделать MongoDB JOINs в фактическом производственном приложении, я могу сказать вам, что Map Reduce, вероятно, самый худший метод, который можно себе представить для этого решения.
Это было в 2012 году, и сейчас.
Единственное, что у вас есть в текущих версиях MongoDB, состоит в том, что многие изоляты могут работать одновременно, а не только по одному (представьте однопоточные JOINs по всем подключениям в 2012 году :\
, это было и является ужасной идеей).
Вы хотите реализовать это на стороне клиента, вытаскивая записи сразу из разрозненных коллекций и объединяя их в своей логике приложения. Это единственный реальный надежный способ масштабирования JOIN в MongoDB.
Возможный дубликат [how-do-i-perform-the-sql-join -equ-in-mongodb] (http://stackoverflow.com/questions/2350495/how-do-i-perform-the- sql-join-equ-in-mongodb) – thegreenogre