码迷,mamicode.com
首页 > 其他好文 > 详细

ElasticSearch 的shard&replica

时间:2018-07-20 00:22:03      阅读:154      评论:0      收藏:0      [点我收藏+]

标签:shard   src   创建索引   prim   alt   而且   单元   arc   doc   

1、shard&replica机制再次梳理
2、图解单node环境下创建index是什么样子的

------------------------------------------------------------------------------------------------

技术分享图片

1、shard&replica机制再次梳理

(1)index包含多个shard
(2)每个shard都是一个最小工作单元,承载部分数据,lucene实例,完整的建立索引和处理请求的能力
(3)增减节点时,shard会自动在nodes中负载均衡
(4)primary shard和replica shard,每个document肯定只存在于某一个primary shard以及其对应的replica shard中,不可能存在于多个primary shard
(5)replica shard是primary shard的副本,负责容错,以及承担读请求负载
(6)primary shard的数量在创建索引的时候就固定了,replica shard的数量可以随时修改
(7)primary shard的默认数量是5,replica默认是1,默认有10个shard,5个primary shard,5个replica shard
(8)primary shard不能和自己的replica shard放在同一个节点上(否则节点宕机,primary shard和副本都丢失,起不到容错的作用),但是可以和其他primary shard的replica shard放在同一个节点上

------------------------------------------------------------------------------------------------

技术分享图片

2、图解单node环境下创建index是什么样子的

(1)单node环境下,创建一个index,有3个primary shard,3个replica shard
(2)集群status是yellow
(3)这个时候,只会将3个primary shard分配到仅有的一个node上去,另外3个replica shard是无法分配的
(4)集群可以正常工作,但是一旦出现节点宕机,数据全部丢失,而且集群不可用,无法承接任何请求

PUT /test_index
{
"settings" : {
"number_of_shards" : 3,
"number_of_replicas" : 1
}
}

技术分享图片

3、图解2个node环境下replica shard是如何分配的

(1)replica shard分配:3个primary shard,3个replica shard,1 node
(2)primary ---> replica同步
(3)读请求:primary/replica

ElasticSearch 的shard&replica

标签:shard   src   创建索引   prim   alt   而且   单元   arc   doc   

原文地址:https://www.cnblogs.com/chenyifan/p/9339090.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!