elasticsearch - _source.enabled = false时无法查看结果中的指定字段

标签 elasticsearch indexing mapping

我正在尝试为Elasticsearch 6.7创建映射,但是当我获得记录时,除非启用_source,否则我看不到任何映射的字段。

我有以下示例:

PUT xyz
{
  "mappings":{
    "_doc":{
      "_source": {
        "enabled": false
      },
      "properties":{
        "raw":{
          "type": "text",
          "store": true
        }
      }
    }
  }
}

PUT xyz/_doc/123
{"raw":"hello"}

GET xyz/_doc/123

但是GET的结果是:
{
  "_index": "xyz",
  "_type": "_doc",
  "_id": "123",
  "_version": 1,
  "found": true
}

我的期望是得到的结果包括要存储的字段,但是显然我遗漏了什么?:
{
  "_index": "xyz",
  "_type": "_doc",
  "_id": "123",
  "_version": 1,
  "found": true,
  "raw": "hello"
}

最佳答案

您仍然需要请求要查看的stored fields,如下所示:

GET xyz/_doc/123?stored_fields=raw

然后您会看到以下内容:
{
  "_index" : "xyz",
  "_type" : "_doc",
  "_id" : "123",
  "_version" : 1,
  "_seq_no" : 0,
  "_primary_term" : 1,
  "found" : true,
  "fields" : {
    "raw" : [
      "hello"
    ]
  }
}

关于elasticsearch - _source.enabled = false时无法查看结果中的指定字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55437454/

相关文章:

php - 在Elasticsearch中搜索精确值会返回许多结果

elasticsearch - 按模式从事件中删除字段

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

iphone:在组部分表格 View 中如何禁用搜索结果中的部分?

python - Pandas:当某些级别不匹配时,将一个多索引数据帧与另一个多索引数据帧进行切片

MongoDB 索引和 $or 运算符

javascript - 根据大致地理位置查找感兴趣的地方

java - 安装摄取附件插件错误

vim - 如何查看 vim 中特定键的映射?

java - 映射 Servlet 参数