我在ElasticSearch集群中有4个节点,3个碎片和3个副本。我知道数据被分割并存储到碎片中。当请求查询时,如何从所有三个碎片中提取数据?
存储结构:
节点1:shard1(主)、shard2(副本)、shard3(副本)
节点2:shard2(主)、shard1(副本)
节点3:shard3(主)、shard1(副本)
节点4:shard2(副本)、shard3(副本)
谢谢,
库马尔。
我在ElasticSearch集群中有4个节点,3个碎片和3个副本。我知道数据被分割并存储到碎片中。当请求查询时,如何从所有三个碎片中提取数据?
节点1:shard1(主)、shard2(副本)、shard3(副本)
节点2:shard2(主)、shard1(副本)
节点3:shard3(主)、shard1(副本)
节点4:shard2(副本)、shard3(副本)
谢谢,
库马尔。
1条答案
按热度按时间lp0sw83n1#
对于搜索查询,可以在主分片或其副本分片中搜索数据,因为elastic从不在同一数据节点上分配主分片的副本,副本提高了高可用性,因为副本包含副本,所以也可以从副本分片中搜索数据。
但由于您的数据被划分为3个主碎片,因此对于搜索查询,它至少需要搜索3个碎片(主碎片或主碎片)。