ES权威指南[官方文档学习笔记]-43 Routing a document to a shard

es:http://www.elasticsearch.org/guide/en/elasticsearch/guide/current/routing-value.html

下一篇:http://my.oschina.net/qiangzigege/blog/264441

内容

当你索引一个文档,它存储在其中一个主分片上,
es如何知道哪个分片应该存储这个文档?
当我们创建一个新的文档,es怎么知道它应该存在分片1还是2?

处理不是随机的,因为我们将来还需要检索这个文档,事实上,由一个非常简单的公式计算。
shard = hash(routing) % number_of_primary_shards
routing值是一个字符串,默认是文档的_id,但是也可以是其它值

这个解释了,为什么主分片的个数仅仅在索引创建时决定而不能再改变了
如果改变了,所有的之前的值都无效,文档也找不到了。

所有的文档API(get, index, delete, bulk, update and mget)接受一个路由参数,
这个参数可以用来决定文档到分片的映射,后续的大数据会进一步讨论。


 

你可能感兴趣的:(elasticsearch)