云搜索服务 CSS-优化Elasticsearch和OpenSearch集群查询性能:数据查询流程

时间:2024-08-14 09:17:26

数据查询流程

图1 数据查询流程

图1所示,以Elasticsearch集群为例,介绍客户端往Elasticsearch或OpenSearch集群发送查询请求的流程。图中的P表示主分片Primary,R表示副本分片Replica,主副分片在数据节点Node里是随机分配的,但是不能在同一个节点里。

  1. 客户端向Node1发送查询请求,此时Node1为协调节点。
  2. 节点Node1根据查询请求的索引以及其分片分布,进行分片选择;然后将请求转发到Node1、Node2、Node3。
  3. 各分片分别执行查询任务;当各分片查询成功后,将查询结果汇聚到Node1,然后协调节点向客户端返回查询结果。

对于某个查询请求,其在节点上默认可并行查询5个分片,多于5个分片时将分批进行查询;在单个分片内,通过逐个遍历各个Segment的方式进行查询。

图2 Elasticsearch的索引组成
support.huaweicloud.com/bestpractice-css/css_07_0019.html