В настоящее время я изучаю CouchDB и озадачен распределением вычислений Map-Reduce в представлениях.Я вижу много ресурсов, в которых упоминается, что Map-Reduce по своей природе распределен, потому что вы можете обработать одну половину ваших данных на сервере A, другую половину на сервере B, а затем уменьшить оба результата.В качестве примера можно привести слайд 16 этой презентации:
http://www.slideshare.net/gabriele.lana/couchdb-vs-mongodb-2982288
Это кажется довольно логичным, но:
CouchDB, похоже, не обеспечиваетAPI для отправки вычислений на несколько серверов.Единственное распространение, которое, по-видимому, это обеспечивает, - это репликация всего набора данных на другие серверы (которые, как я полагаю, затем вычислили бы их собственные данные представления).
CouchDB использует B-Tree для хранения данных представления, основанных на ключах, которые генерируются на этапе Map алгоритма представления, что исключает соответствующее разбиение документов в зависимости от того, каким сервером они должны бытьна.
Итак, CouchDB вообще распределяет вычисления Map-Reduce?Или свойство Map-Reduce используется просто для кэширования значений в узлах B-Tree?