为什么在初始数据上载时将REFRESH_INTERVAL设置为-1时,ElasticSearch索引是可搜索的?

xzv2uavs  于 2022-10-06  发布在  ElasticSearch
关注(0)|答案(1)|浏览(134)

我正在执行一个大型数据上传到一个空索引。

article建议设置“REFRESH_INTERVAL=-1”和“NUMBER_OF_REPLICAS=0”以提高上传性能。然后它说要重新启用它。

有趣的是,如果我不重新启用它-我仍然可以将查询发送到新创建的索引并获得结果。

我想知道为什么会这样,我哪里弄错了?(我的预期是我应该得到零结果,因为索引被禁用)

还有一件事我想了解--如果我将REFRESH_INTERVAL启用回原始值,我是否需要执行/_REFRESH操作?

cwxwcias

cwxwcias1#

默认情况下,Elasticearch每秒定期刷新索引,但仅针对在过去30秒内收到一个或多个搜索请求的索引。您可以使用index.刷新_Interval设置更改此默认间隔。

所以文档说:当你发送搜索请求时,它将发送一个带有该请求的刷新请求。因此,您可能会在第一次搜索数据时非常慢,或者在第一次搜索时遗漏一些数据。如果对索引上的新数据编制索引,最好使用REFRESH_INTERVAL。

相关问题