四、Elasticsearch 基础分布式架构

Elasticsearch 是一套分布式的系统,分布式是为了应对大数据量

Elasticsearch 对复杂分布式机智的透明隐藏特性

  • 分片机制
  • cluster discovery(集群发现机制)
  • shard 负载均衡
  • shard 副本

Elasticsearch 垂直扩容和水平扩容

假设共有6台服务器,每台服务器1T容量。现在数据即将增加到8T,此时有下面量方案:

  • 垂直扩容:重新购置两台服务器,每台服务器的容量是2T,将老的两台服务器进行替换,那么现在的6台服务器的总容量为:4 * 1T + 2 * 2T = 8T。采购更强大的服务器,成本非常高昂,而且会有瓶颈
  • 水平扩容【推荐】:新购置两台服务器,每台服务器的容量是1T,直接加入到集群中,那么现在的服务器总容量为:8 * 1T = 8T。

增加或减少节点时数据会rebalance

es 会自动分配 shard,让服务器承受的压力和请求尽可能的均匀

master 节点

  1. 管理es集群的元数据
  • 索引的创建和删除,维护索引的元数据
  • 节点的增加和移除,管理集群的元数据
  1. 默认情况下,会自动选取一台节点,作为master节点

节点平等的分布式架构

  1. 节点对等:每个节点都能接收所有的请求
  2. 自动请求路由
  3. 相应收集

shard&replica机制总结

  1. index 包含多个 shard
  2. 每个shard都是一个最小工作单元,承载部分数据,每个shard底层都是一个lucene实例,有完整的建立索引和处理请求的能力
  3. 增减节点时,shard会自动在nodes中负载均衡
  4. primary shardreplica shard ,每个document肯定只存在于某一个primary shard 以及其对应的replica shard 中,不可能存在于多个 primary shard
  5. replica shardprimary 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 shardreplica shard 数据都丢失了,起不到容错的作用),但是可以和其他 primary shardreplica shard 放在同一个节点上
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值