看不懂elasticsearch scroll search里面的解释
I don't understand the explanation in elasticsearch scroll search
“保持初始搜索上下文活动对主动更新索引的成本很高。”
上面这句话的高成本是指内存占用吗?
那么,为什么内存占用这么高?
为了在保持活动状态的同时对索引的更新请求进行排队?
或者因为您正在内存中缓存活动索引快照?
A scroll returns all the documents which matched the search at the time of the initial search request. It ignores any subsequent changes to these documents. [...] The search context is created by the initial request and kept alive by subsequent requests. [...]
Normally, the background merge process optimizes the index by merging together smaller segments to create new, bigger segments. Once the smaller segments are no longer needed they are deleted. This process continues during scrolling, but an open search context prevents the old segments from being deleted since they are still in use.
Keeping older segments alive means that more disk space and file handles are needed. Ensure that you have configured your nodes to have ample free file handles. See File Descriptors.
Additionally, if a segment contains deleted or updated documents then the search context must keep track of whether each document in the segment was live at the time of the initial search request. Ensure that your nodes have sufficient heap space if you have many open scrolls on an index that is subject to ongoing deletes or updates.
已将重点添加到上述文档中,以强调为什么在相当长的一段时间内保持一个或多个滚动上下文的成本很高。 Elasticsearch 尽最大努力使所有内容保持新鲜和活跃并丢弃旧数据,但滚动上下文基本上是将旧数据 放在生命支持 上并将其存放在角落里多一点时间,在不再需要滚动上下文时让它消失之前。
这就是为什么需要更多资源(主要是存储、文件句柄和堆)来保持滚动上下文活动,这就是所谓的“高成本”
“保持初始搜索上下文活动对主动更新索引的成本很高。”
上面这句话的高成本是指内存占用吗?
那么,为什么内存占用这么高?
为了在保持活动状态的同时对索引的更新请求进行排队?
或者因为您正在内存中缓存活动索引快照?
A scroll returns all the documents which matched the search at the time of the initial search request. It ignores any subsequent changes to these documents. [...] The search context is created by the initial request and kept alive by subsequent requests. [...]
Normally, the background merge process optimizes the index by merging together smaller segments to create new, bigger segments. Once the smaller segments are no longer needed they are deleted. This process continues during scrolling, but an open search context prevents the old segments from being deleted since they are still in use.
Keeping older segments alive means that more disk space and file handles are needed. Ensure that you have configured your nodes to have ample free file handles. See File Descriptors.
Additionally, if a segment contains deleted or updated documents then the search context must keep track of whether each document in the segment was live at the time of the initial search request. Ensure that your nodes have sufficient heap space if you have many open scrolls on an index that is subject to ongoing deletes or updates.
已将重点添加到上述文档中,以强调为什么在相当长的一段时间内保持一个或多个滚动上下文的成本很高。 Elasticsearch 尽最大努力使所有内容保持新鲜和活跃并丢弃旧数据,但滚动上下文基本上是将旧数据 放在生命支持 上并将其存放在角落里多一点时间,在不再需要滚动上下文时让它消失之前。
这就是为什么需要更多资源(主要是存储、文件句柄和堆)来保持滚动上下文活动,这就是所谓的“高成本”