Elasticsearch集群及分片实现原理

上一篇 << 下一篇 >>>SpringBoot整合Elasticsearch


1.集群原理

a、每个索引会被分成多个分片(默认5片)shards进行存储在多个不同的节点上【主分片数量定义好后不能被修改】
b、客户端发起创建document的时候,会选择路由算法确定放在哪个shards中
路由算法:shard = hash(routing) % number_of_primary_shards

c、每一个主分片为了实现高可用,都会有自己对应的备分分片,主分片对应的备分片不能存放同一台服务器上,主分片可以和其他备分片存放在同一个node节点上。

查看索引分片信息http://192.168.212.181:9200/myjarye/_settings

2.分片总数如何确定

一般为核心分片数的平方值

3.为什么主分片定义好后不能被修改

根据路由算法:shard = hash(routing) % number_of_primary_shards,如果主分片数变了,会导致结果和原先的不一致,数据也就找不到了。


推荐阅读:
<< << << << << << << << <<<正向索引和倒排索引区别
<< << << << << << << <<

你可能感兴趣的:(Elasticsearch集群及分片实现原理)