Elasticsearch如何使用指数映射虚假指定关键字的阵列?

问题描述 投票:0回答:1

我想指定索引Elasticsearch映射“关键字”字段的数组:“假”,因为根据ES文档没有类型为“阵列”,所以我想使用下面的映射

PUT my_index
{
  "mappings": {
    "_doc": {
      "properties": {
        "arr_field": {
          "type":   "keyword", "index": false
        }
      }
    }
  }
}

这是一个正确的方式或不?

elasticsearch
1个回答
1
投票

是存在用于阵列没有这样的特定的数据类型。如果你想有一个字段整数该存储阵列中的所有你需要的是定义字段类型整数,而索引始终确保针对该字段的值是即使值是一个数组。

对于例如为:

PUT test
{
  "mappings": {
    "_doc": {
      "properties": {
        "intArray": {
          "type": "integer"
        }
      }
    }
  }
}

PUT test/_doc/1
{
   "intArray": [10, 12, 50]
}

PUT test/_doc/1
{
   "intArray": [7]
}

这同样适用于关键字的数据类型为好。所以,你在做什么是正确的。所有你需要照顾的是,虽然索引文件,对arr_field值始终是一个数组。

© www.soinside.com 2019 - 2024. All rights reserved.