在Elasticsearch中选择字段:_source、fields和stored_fields

在Elasticsearch中选择字段:_source、fields和stored_fields

💡 原文英文,约600词,阅读约需2分钟。
📝

内容提要

在Elasticsearch中,文档源默认存储在_source字段中。可以禁用_source,仅存储特定字段,通过指定存储字段在搜索时获取这些字段的值。使用_fields参数可获取映射结果,而_source提供原始值。

🎯

关键要点

  • 在Elasticsearch中,文档源默认存储在_source字段中。
  • 可以禁用_source,仅存储特定字段,通过指定存储字段在搜索时获取这些字段的值。
  • 使用stored_fields参数可获取存储字段的值,而_source提供原始值。
  • 可以通过PUT请求禁用_source字段,并启用特定字段的存储。
  • 在搜索请求中,指定stored_fields参数以获取所需字段的信息。
  • 通过_fields参数可以获取字段的值,但得到的是映射后的结果。
  • 在搜索结果中,_source提供原始值,而fields提供转换后的值。
  • fields参数可以包括运行时字段,如计算字段,这在_source中不可用。

延伸问答

Elasticsearch中的_source字段有什么作用?

_source字段默认存储文档的源数据,提供原始值。

如何在Elasticsearch中禁用_source字段?

可以通过PUT请求设置_mappings中的_source为false来禁用_source字段。

在Elasticsearch中,如何获取存储字段的值?

使用stored_fields参数在搜索请求中指定要获取的存储字段。

fields参数和_source字段有什么区别?

fields参数返回映射后的值,而_source字段提供原始未转换的值。

如何在Elasticsearch中使用运行时字段?

可以在fields参数中包含运行时字段,如计算字段,这在_source中不可用。

在Elasticsearch中,如何选择特定字段进行存储?

在创建索引时,通过设置mappings中的store为true来选择特定字段进行存储。

➡️

继续阅读