在关于 search_after API 的 Elasticsearch 文档中,他们说使用具有唯一值的字段,但他们“不建议使用 _id 字段”。谁能解释一下这背后的原因?
编辑:意在包含链接,here it is
答案 0 :(得分:1)
您需要进一步阅读that paragraph:
<块引用>_id 字段对每个文档都有唯一的值,但不建议直接将其用作决胜局。 [...] doc 值在此字段上被禁用,因此对其进行排序需要在内存中加载大量数据。相反,建议复制(客户端或使用设置的摄取处理器)另一个启用了文档值的字段中 _id 字段的内容,并使用这个新字段作为排序的决胜局。
所以原因很简单,使用 _id
作为决胜局会导致大量数据可能被加载到内存中,这从来都不是一件好事。