У меня есть несколько документов, которые выглядят так:
{userId: 123, msg:{ timestamp:123456, event:"actionA"} }
{userId: 123, msg:{ timestamp:123466, event:"actionB"} }
etc...
Карта fn:
emit(doc.userId, [doc.msg])
Уменьшение fn:
return [].concat.apply([], vs)
Эти функции, кажется, выполняют то, что я ожидаю, поэтому я подумал, чтосм. вывод, например:
Key: 123, Value: [{timestamp:123456, event:"actionA"}, {timestamp:123466, event:"actionB"}, ...etc...]
Но я получаю ошибка уменьшения переполнения , "Уменьшение выхода должно сокращаться быстрее".Действительно, в документах couchdb говорится, что «как правило, функция сокращения должна сводиться к одному скалярному значению».... «CouchDB выдаст вам предупреждение, если вы попытаетесь использовать« уменьшить неправильный путь »».
Итак, я предполагаю, что я использую Couch MR «неправильный путь».Каков будет «правильный путь» для такого рода расчетов?