MongoDB
 sql >> Base de Dados >  >> NoSQL >> MongoDB

MongoDB MapReduce:não está funcionando conforme o esperado para mais de 1000 registros


A forma do objeto que você emit do seu map A função deve ser igual ao objeto retornado do seu reduce função, como os resultados de um reduce pode ser realimentado em reduce ao processar um grande número de documentos (como neste caso).

Então você precisa alterar seu emit para emitir documentos como este:
{userid:<xyz>, {events:[{adduser: 1}], allEventCount:1}}
{userid:<xyz>, {events:[{login: 1}], allEventCount:1}}

e, em seguida, atualize seu reduce funcionar em conformidade.