我正在寻找等待ElasticSearch索引准备好提供搜索流量的正确方法。
我们每天建立索引,并具有单个主碎片和大约80个副本。
客户端使用别名向此ES索引发出搜索请求。建立新索引后,我们将别名从旧索引指向新索引。但是我看到在构建和切换索引期间很少有请求被拒绝。
在切换之前,我正在使用集群运行状况API验证集群是否已准备好使用新索引
_cluster/health/index?wait_for_state=green
但是对于集群健康api,我们还可以选择wait_for_active_shard = all,如果我的理解是正确的,那么活动分片就是包括主分片和复制分片在内的所有分片。
Wait_for_state=green
也做同样的事情,它等待所有副本就绪。
所以我的困惑是哪一个更正确,或者这两个基本上是相同的选择?