最新的 elasticsearch 7.x 是否支持跨不同节点的集群滚动?



好的,所以情况是,我们的弹性搜索解决方案中有两个集群,一个在一个节点上,一个在另一个节点上。如果平台是使用轮询方法设置的,滚动 API 在这种情况下会工作还是会混淆?它似乎适用于第一个滚动,但第二个滚动失败并search_context_missing_exception,导致我相信这是轮循机制跨多个集群和/或节点运行滚动请求的问题。有什么想法吗?

滚动 API 会创建一个持久的搜索上下文,该上下文将一直存在,直到您完成滚动,或者清除搜索上下文或搜索超时。

但是,该搜索上下文不能在两个不同的集群之间共享,因此,如果您在一个集群上启动滚动搜索,则需要完全在同一集群上执行滚动搜索,而无需切换集群。因此,循环方法在这里将是一个问题。

但是,如果这两个群集彼此完全相同,则可以改用search_after。还建议使用此方法,而不是使用更重量级和更昂贵的滚动 API。

最新更新