我正在执行一个大型数据上传到一个空索引。
此article建议设置“REFRESH_INTERVAL=-1”和“NUMBER_OF_REPLICAS=0”以提高上传性能。然后它说要重新启用它。
有趣的是,如果我不重新启用它-我仍然可以将查询发送到新创建的索引并获得结果。
我想知道为什么会这样,我哪里弄错了?(我的预期是我应该得到零结果,因为索引被禁用)
还有一件事我想了解--如果我将REFRESH_INTERVAL启用回原始值,我是否需要执行/_REFRESH操作?
我正在执行一个大型数据上传到一个空索引。
此article建议设置“REFRESH_INTERVAL=-1”和“NUMBER_OF_REPLICAS=0”以提高上传性能。然后它说要重新启用它。
有趣的是,如果我不重新启用它-我仍然可以将查询发送到新创建的索引并获得结果。
我想知道为什么会这样,我哪里弄错了?(我的预期是我应该得到零结果,因为索引被禁用)
还有一件事我想了解--如果我将REFRESH_INTERVAL启用回原始值,我是否需要执行/_REFRESH操作?
1条答案
按热度按时间cwxwcias1#
默认情况下,Elasticearch每秒定期刷新索引,但仅针对在过去30秒内收到一个或多个搜索请求的索引。您可以使用index.刷新_Interval设置更改此默认间隔。
所以文档说:当你发送搜索请求时,它将发送一个带有该请求的刷新请求。因此,您可能会在第一次搜索数据时非常慢,或者在第一次搜索时遗漏一些数据。如果对索引上的新数据编制索引,最好使用REFRESH_INTERVAL。