elasticsearch - ElasticSearch集群行为-定义所有节点以一起更新

标签 elasticsearch

将文档插入ElasticSearch之后,我立即去查询查询。
我对请求进行了几次轮询,因此如果未完全索引该请求,它将在第二次或第三次尝试中返回。

有时,
在群集环境中,我注意到我可以得到该请求,并且一毫秒后,同一请求返回为空。

我假设它去了群集中的另一个节点-尚未建立索引。

如果是这样,我真的需要定义集群以仅在所有节点都更新后才返回值。

  • 我所说的是对的吗?是否可能并非所有节点都一起更新?
  • 这是集群配置问题吗?它可以通过配置解决吗?

  • 谢谢。

    最佳答案

    鉴于Elasticsearch在“近乎真实”的时间内工作,您遇到的是正常现象。默认情况下,群集每秒刷新一次,但是如果您需要更频繁地执行刷新,则可以在配置中进行更改。这样做会冒使群集承受沉重负担的风险。

    如果您希望索引操作的结果可用于下一个调用,则另一种方法是显式refresh您的集群,然后才发出搜索请求。

  • 索引文档PUT /my_index/doc/1
  • 调用刷新POST /my_index/_refresh
  • 发送您的请求POST /my_index/_search
  • 关于elasticsearch - ElasticSearch集群行为-定义所有节点以一起更新,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33718640/

    相关文章:

    json - 解析Elasticsearch的错误嵌套对象

    elasticsearch - 为什么这些字段属于我的索引模板中未定义的elasticsearch?

    elasticsearch - Elasticsearch术语聚合和查询

    elasticsearch - 使用术语/范围查询时发现0值的问题

    ruby-on-rails - 在我的index.html.erb中为nil:NilClass获取未定义的方法 `each'

    ruby-on-rails - ElasticSearch:将查询字符串与术语过滤器组合

    elasticsearch - 在Elasticsearch中,如何从多层嵌套对象的多个字段中搜索字符串

    elasticsearch - 策展人重新索引操作-动态索引名称

    elasticsearch - 如何减少 Elasticsearch 索引中的段数

    ElasticSearch:查询帖子正文不起作用但uri搜索工作