У меня есть коллекция, содержащая данные, аналогичные этим:
{
dimension1:a,
dimension2:b,
dimension3:c,
dimension4:d,
dimension5:e,
value: x
}
существует конечное число значений, которые может иметь a,b,c,d,e
.Поэтому можно увидеть две строки с одинаковыми измерениями и разными сохраненными значениями, например:
{ dimension1:1, dimension2:1, dimension3:1, dimension4:1, dimension5:1, value: 12 }
{ dimension1:1, dimension2:1, dimension3:1, dimension4:1, dimension5:1, value: 34 }
Я хотел бы объединить объекты с соответствующими размерами и заменить их одним объектом с суммой значений.
Мне известно о том, что я могу сделать это с mapReduce, но есть ли способ сделать это проще / быстрее или даже гарантировать, что мой оператор вставки добавит существующее значение, если оно есть?
[править]
Я также вижу, что db.collection.group (), похоже, предназначен для таких вещей, но не может обрабатывать мой размер данных