我目前正在深入研究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树节点中的值?
| 归档时间: |
|
| 查看次数: |
854 次 |
| 最近记录: |