分布式搜索3-Elasticsearch分片、复制、读写和搜索原理(吐血整理)

本文详细介绍了Elasticsearch的分片、复制、读写及搜索过程。分片用于水平扩展存储,复制提供高可用性和高并发。数据写入时,先写入主分片,再同步到复制分片;读取时采用随机轮询策略。搜索过程中,协调节点负责请求转发和结果合并。倒排索引是其快速搜索的关键。
摘要由CSDN通过智能技术生成

五-1、分片的原因:
在一个搜索里存储的数据,潜在的情况下可能会超过单个节点的硬件的存储限制,为了解决这个问题,elasticsearch便提供了分片的功能。它可以将索引划分为多个分片,当你创建一个索引的时候,你就可以简单的定义你想要的分片的数量,每一个分片本身是一个全功能的完全独立的索引,可以部署到集群中的任何一个节点。分片的两个主要原因:它允许你水平切分你的内容卷,它允许通过分片来分布和并执行操作来应对日益增长的执行量。

五-2、复制replica:
网络传输的情况下,故障可能会随时发生,有一个故障恢复机制是必须的,所以ES允许你制作一个或多个副本。复制的两个主要原因
(1)高可用。它提供了高可用的机制以来防止分片或者节点宕机。为此,绝对不要将一个分片的副本放在跟这个分片相同的机器上。
(2)高并发。它允许你的分片可以提供超出自身吞吐量的搜索服务,搜索行为可以在分片所有的拷贝中并行执行。
一个完整的流程就是,ES客户端在主分片(primary shard)写入数据之后,会将数据同步到其他几个复制分片(replica shard)上去。ES客户端取数据的时候就会在主分片或者复制分片中去读。
  1-ES 集群多个节点,会自动选举一个节点为 master 节点,这个 master 节点其实就是干一些管理的工作的,比如维护索引元数据、负责切换 主分片(primary shard) 和 复制分片(replica shard)身份等。要是 master 节点宕机了,那么会重新选举一个节点为 master 节点。
2-如果某个非 master 节点宕机了,那么此节点上的 primary shard 就没了,那么master 会让 primary shard 对应的 replica sh

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值