CouchDB:控制哪个分片接收数据

时间:2014-08-12 14:56:14

标签: routing couchdb partitioning sharding horizontal-scaling

我对couchDB的聚类方法的理解是通过散列文档的唯一ID来确保集群中的每个节点都接收到相等的数据分布。我的问题是,是否有办法改变这一点并定义一个自定义键,以便智能地"将文档路由到群集中的特定节点?

在我的场景中,我有与特定实体相关的数据(想想客户端 - 项目 - 任务 - 项目)我的所有数据;我将有足够的物品需要一些水平缩放;但是,每次搜索都将始终与给定的客户端项目任务相关,对于该任务,数据集的大小适中。

我认为最有效的方法是通过客户端项目任务对数据进行分区,并预先分配1000个分区。

我知道在某个时刻这会限制我的扩展容量,但是不必为每次搜索都打不到每个分区的权衡使得我愿意付出代价。

那么有没有办法在CouchDb中创建这种类型的分区逻辑?

感谢;布伦特

1 个答案:

答案 0 :(得分:0)

正如评论中所提到的,CouchDB还没有内置的分片支持。但是,随着正在进行的BigCouch合并和发布CouchDB 2.0,将会有。它的来源来自Cloudant,所以你应该能够通过阅读他们的文档和白皮书以及有关BigCouch的信息来了解它。

在来自CouchDB的最新每周新闻中,有人提到很快会在文档中写下这个:http://blog.couchdb.org/2014/08/14/couchdb-weekly-news-august-14-2014/