是否有可能知道何时可以在Elasticsearch中搜索某些数据?

时间:2016-08-29 20:35:17

标签: elasticsearch

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

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

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

1 个答案:

答案 0 :(得分:1)

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

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

这篇文章很好地概述了他们正在努力改进的问题和内容。

希望有所帮助:D