如何调试Elasticsearch中不可用于搜索的文档

时间:2019-06-07 22:02:25

标签: elasticsearch

我试图从Elasticsearch中搜索并获取文档,但是在某些情况下,我没有获得更新的文档。我所说的“更新”是指我们在Elasticsearch中定期更新文档。 ElasticSearch中的文档每隔30秒更新一次,文档数量可能在10到10万之间。我知道更新通常在Elasticsearch中是一个缓慢的过程。

我怀疑这种情况正在发生,因为Elasticsearch虽然接受了文档,但是无法搜索这些文档。因此,我有以下问题:

  1. 是否有一种方法可以测量从索引编制到可用于搜索的文档之间的时间? Elasticsearch中的设置可以在Elasticsearch日志中记录更多信息?
  2. Elasticsearch中是否有一个设置可以在发生合并操作时启用日志记录?
  3. 还有其他建议可以帮助优化性能吗?

预先感谢您的帮助。

1 个答案:

答案 0 :(得分:0)

默认情况下,refresh_interval参数设置为1秒,因此,除非您更改此参数,否则每次更新最多可在1秒后进行搜索。

如果要在执行更新操作后立即使结果可搜索,则可以使用refresh参数。

一旦刷新发生,端点将使用refresh=wait_for进行响应。如果使用refresh=true,将触发刷新操作。如果您有很多更新,请谨慎使用refresh=true,因为它会影响性能。