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

标签 elasticsearch

我对Elasticsearch有如下疑问:

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

在文档尚未在副本分片上建立索引或文档尚未在副本分片上更新的情况下,Elasticsearch如何处理?

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

最佳答案

首先,我不建议使用异步模式。它实际上并没有提供您无法以更安全的方式获得的任何好处,但是会带来可靠性方面的问题。因此,此功能在Elasticsearch的v1.5中已被弃用,在v2.0中已完全被removed弃用。

话虽如此,如果您仍然想使用异步并关心获得最新结果,则必须将其与primary preference一起使用。

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

关于elasticsearch - 在尚未更新数据的副本分片上检索文档,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32327102/

相关文章:

elasticsearch - ElasticSearch术语聚合不适用于自定义分析器和模式标记器

mysql - Mnesia DB Elasticsearch

database - 如何找到时间序列数据的最新项目?

elasticsearch - 使用 HTTP POST 请求作为输入的 Logstash 的 Grok 模式

elasticsearch - Nest 1.0不会暴露碎片失败的原因

elasticsearch - elasticsearch 节点上的高 CPU 使用率

elasticsearch - Spark机器学习和Elasticsearch在Python中分析了 token /文本

php - Elasticsearch 2.3通过使用PHP库进行查询来删除类型中的所有文档

elasticsearch - 没有配置的节点可用:[]

elasticsearch 可下载手册