标签:ja
1、Elasticseach对复杂分布式机制的透明隐藏特性2、Elasticseach的垂直扩容与水平扩容
(1)垂直扩容:采购更强大的服务器
(2)水平扩容:扩容对应用程序透明
3、增加或减少节点时的数据rebalance
(1)保持负载均衡
4、master节点
(1) 管理ES集群的元数据,索引的创建和删除
(2)节点的增加和删除,维护集群的元数据
(3)默认情况下,会自动选择出一台节点,作为master节点
(4)master节点不承载所有的请求,不存在单点的瓶颈
5、节点平等的分布式架构
(1)节点对等,每个节点都能接收所有的请求
(2)自动请求路由
(3)响应收集
5、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放在同一个节点上
6、单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
}
}
标签:ja
原文地址:http://blog.51cto.com/395469372/2113389