【发布时间】:2014-03-06 16:16:09
【问题描述】:
在创建包含多个作者但仅属于 11 个不同出版物的子集的书籍索引时,我打算在单个节点上拥有 11 个索引碎片。
显然我的映射的路由部分看起来像,
"book":{
"_routing":{
"required":true,
"path":"publication"
},....
publication 本身就是一个字符串,可以有 11 种不同的类型。
我的映射的settings 部分看起来像
body: {
settings: {
index: {
number_of_shards: 11,
number_of_replicas: 1
}
},....
我面临的问题是,在我查看了books/_status 和books/_segments 查询的结果后,不同publication 的文档已在同一个shard 中编入索引,而一些分片则为空。
我查看了reroute API,但显然应该寻找其他问题。
在指定路由后这种不均等的文档分布让我完全放弃routing。
我一直使用的版本是0.90.5。
【问题讨论】:
标签: indexing elasticsearch sharding