elasticsearch 在索引/更新文档后,是否需要显式清除索引缓存?

hmae6n7t  于 2023-06-29  发布在  ElasticSearch
关注(0)|答案(1)|浏览(139)

我有一个程序,每秒将多个文档索引到OpenSearch中。我使这些文档可以在 Jmeter 板上使用一组固定的过滤器进行查询。从我在网上读到的内容来看,OpenSearch会缓存查询结果。
当我索引一个新文档或更新一个现有文档时,我是否需要显式地清除索引缓存,以便新(或更新后)文档在索引刷新周期结束后立即可用,或者该高速缓存是否足够智能,可以知道索引已经更新?
这里我的目标是防止在显式请求时返回过时的数据,但我仍然希望缓存它,以防多个用户在没有发生更改的情况下尝试查询文档。

mspsb9vt

mspsb9vt1#

您无需担心查询缓存、节点缓存和请求缓存。这些是低级缓存,永远不会返回过时的信息。
要获得最新结果需要考虑的主要参数是refresh_interval。它越短,你的结果就越实时,但你给索引带来的负载也越大。但通常1s对于像您这样的近实时情况是完全可接受的。

相关问题