Map-Reduce — это модель обработки данных в MongoDB, которая работает с большими наборами данных в два отдельных этапа.
function() {
emit(this.category, this.price);
}
function(key, values) {
return Array.sum(values);
}
MongoDB теперь рекомендует использовать Aggregation Pipeline, который предлагает:
$group, $match и $projectdb.orders.aggregate([
{ $group: { _id: "$category", total: { $sum: "$price" } } }
]);
Хотя Map-Reduce всё ещё поддерживается, он считается устаревшим подходом. Aggregation Pipeline — это предпочтительный инструмент для большинства задач благодаря превосходной производительности, читаемости и активному развитию.
На этапе map в модели Map-Reduce MongoDB происходит итерация по документам и генерация пар ключ-значение с помощью функций JavaScript, а на этапе reduce агрегируются все значения, связанные с одним и тем же ключом, в один результат.
Новый — ещё не проверен сообществом
Вы