gpt4 book ai didi

elasticsearch - _source 被禁用时究竟会丢失什么?

转载 作者:行者123 更新时间:2023-12-02 23:37:29 28 4
gpt4 key购买 nike

禁用 _source 的确切后果是什么? Elasticsearch 映射中的字段?

令人惊讶的简短documentation_source字段本身只是声明

Though very handy to have around, the source field does incur storage overhead within the index. For this reason, it can be disabled.



没有解释当它被禁用时究竟是什么变得“不那么方便”。让我们点击 get api 的链接:

By default, the get operation returns the contents of the _source field unless you have used the fields parameter or if the _source field is disabled.



同样,当 _source被禁用?文档本身是否完全不可用(只剩下聚合)?系统是否会退回到从各个字段重新组装文档的成本高昂的过程?

这太令人费解了。网络上许多致力于优化 Elasticsearch 性能的文档都建议禁用 _source «如果您不需要它»。我怎么知道我需要它?

最佳答案

Elasticsearch 文档确实有一个部分评论了保留 _source 所带来的好处和功能。 here .对我影响最大的两个好处(在链接文档中列举)是:

Partial update requests will not function without the _source field.

When your mapping changes and you need to reindex your data, you can do so directly from Elasticsearch instead of having to retrieve all of your documents from another (usually slower) data store.


当然还有文档中讨论的所有其他要点,但是如果您的用例需要支持增量文档级更新,那么您几乎肯定需要 _source启用。
如果您有大量数据并且发现您的映射往往非常不稳定并且经常更改,那么您几乎肯定会想要 _source启用以减轻重新索引的成本。我目前的一个项目处于初始原型(prototype)设计/开发阶段,所以这个好处绝对适用。

关于elasticsearch - _source 被禁用时究竟会丢失什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28902204/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com