elasticsearch 架构设计

segement merge 影响:


Elasticsearch 会不断在后台运行任务,主动将这些零散的segment 做数据归并,尽量让索引内只保有少量的,

每个都比较大的,segment文件。

8.2.1 归并线程配置:


segment 归并的过程,需要先读取segment,归并计算,再写一遍segment,最后还要保证刷到磁盘。


8.3.2 作为分布式系统,数据副本可算是一个标配。Elasticsearch 数据写入路程,自然也涉及副本。

在有副本配置的情况下,数据从发向Elasticsearch 节点,到接到Elasticsearch 节点响应返回.


数据写入流程:

1) 客户端请求发送给Node 1节点, 注意图中Node1是Master 节点.实际完全可以不是

2)Node1用数据的_id 取余计算得到应该将数据存储到shard 0 上。

通过cluster state 信息发现shard 0 的主分片已经分配到了Node3上,Node1转发请求数据给Node3


8.5 自动发现的配置:

Elasticsearch 是一个P2P 类型(使用gossip)的分布式系统,除了集群状态管理以外,其他所有的请求都可以发送到集群内的任意一台节点上,

这个节点可以自己找到需要转发给哪些节点,并且直接跟这些节点通信。

原文地址:https://www.cnblogs.com/hzcya1995/p/13349876.html