在副本分片上检索文档时尚未更新数据

时间:2015-09-01 08:37:20

标签: elasticsearch

我对Elasticsearch有一个问题如下:

在模式复制是异步的情况下,在索引文档时,文档已经存在于主分片上但尚未复制到副本分片。此时,此文档的GET请求将转发到副本分片。

如果文档尚未在副本分片上编制索引或文档尚未在副本分片上更新,Elasticsearch如何处理此问题?

在索引更新文档的情况下返回的新文档或旧文档的情况下,将返回失败请求?或者请求节点将重新转发到主分片以获取数据?

1 个答案:

答案 0 :(得分:2)

首先,我不建议使用异步模式。它并没有提供任何以更安全的方式无法实现的好处,但在可靠性方面却产生了问题。因此,此功能在v1.5中已弃用,在弹性搜索的v2.0中已完全removed

如果您仍想使用异步并关注获取最新结果,则必须将其与primary preference一起使用。

如果update操作,您无需执行任何操作。始终首先在主分片上执行更新,然后将操作结果复制到所有副本。