Как стать автором
Обновить

Комментарии 16

Осталось узнать какова производительность этого, гм, фреймворка. Пока чем-то напоминает как раз тот самый reduce.
Думаю вы зря так про js с Map-Reduce, правда я его использую в CouchDB и там не ad-hoc.
В кауче божественный map-reduce!
Производительность относительно M/R выше. Пока еще достаточно много ограничений, но по моим тестам на моих данных быстрее от 2 до 10 раз. Хотя заметно, что кое-где пока что не использует индексы. Впрочем, от distinct мне тоже не удалось добиться консистентной работы с индексами.
c текущим map/reduce еще ведь/ проблема что одновременно выполняется только 1 map reduce, а если новые функции не используют javascript то такого ограничения там не будет.
А если в процессе агрегации какой-то элемент изменяет свои данные, как она себя ведёт?
Думаю, агрегация вешает write lock.
Главное использовать подходящие инструменты в любой ситуации, иначе получается вот это:

Must. Use. Mongo. DB. It. Is. Web. Scale. www.youtube.com/watch?v=b2F-DItXtZs
Я вот думаю: а не проще ли было реализовать SQL синтаксис. Он многим знаком, привычен.

У меня есть сомнения насчет читабельности и сопровождаемости вот такого:
db.zoo.aggregate({$project: {name: 1, holidays: 1}}, {$unwind: "$holidays"},{$match: {holidays : {$gt: -1}}}, {$project: {holidays: 1, _id: 0}});
В реальных проектах это будет в 10 раз сложнее.
Как раз наоборот, каждый шаг прост и понятен. А SQL обычно превращается в гигантский «blob-запрос», который нельзя трогать руками иначе всё сломается. Ну и здесь еще соль в том, что всё поддаётся концепции map/reduce (по сути, этот язык — надстройка над типичными операциями map/reduce), а потому все данные проходят через некоторые пайпы, а значит всё прозрачно с точки зрения памяти, необходимой для обработки данных.
НЛО прилетело и опубликовало эту надпись здесь
НЛО прилетело и опубликовало эту надпись здесь
НЛО прилетело и опубликовало эту надпись здесь
Такие структуры кстати проще будет генерировать, чем SQL.
Спасибо за статью.
+1 в карму ;)
спасибо автору, очень полезная статья
Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации

Истории