【问题标题】:Is it possible to know when some data is available for being searched in Elasticsearch?是否有可能知道何时可以在 Elasticsearch 中搜索某些数据?
【发布时间】:2016-08-31 01:05:50
【问题描述】:

我正在实现一个软件,其中数据被发送到某个 Web 服务器,存储在 Elasticsearch 中,然后立即进行查询。我知道 Elasticsearch 是遵循 BASE(基本可用、软状态、最终一致性)原则的 NoSQL,这意味着无法保证您的数据何时可用于搜索。

这就是为什么当我查询刚刚添加到 Elasticsearch 的数据时,我必须等待一段时间才能找到它。现在我能做的就是实现一个轮询机制来检测数据何时被完全应用。值得一提的是,如果我使用_id 检索文档,它会立即被找到。但如果我使用某种类型的 Elasticsearch 查询(如 termquery_string)来搜索它,则需要一段时间才能找到该文档。

所以我的问题是:有没有更便宜的方法来检测数据何时在 Elasticsearch 中被完全索引?

【问题讨论】:

标签: elasticsearch


【解决方案1】:

这部分由 Refresh API 完成,该 API 不提供知道索引数据何时可用的方法。但是弹性的人正在努力让请求等待刷新。

我认为如果你看看这里应该会更好:https://www.elastic.co/blog/refreshing_news

这篇文章很好地概述了这些问题以及他们正在努力改进的东西。

希望对你有帮助:D

【讨论】:

    猜你喜欢
    • 2021-02-22
    • 1970-01-01
    • 2023-04-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-05-29
    相关资源
    最近更新 更多