在Index的映射中指定“_size”和“properties”

时间:2018-03-10 08:13:14

标签: elasticsearch

我想映射索引中文档的映射。为此,我已经创建了截至目前的属性映射。 但我也希望得到文件的大小,为此,我发现我需要启用" _size"字段如下所示: https://www.elastic.co/guide/en/elasticsearch/plugins/current/mapper-size-usage.html

我的映射对象现在看起来像这样:

{
    "mappings": {
        "doc": {
            "properties": {
                ...
            }
        }
    }
}

我应该在哪里添加" _size"标签? 如果我做这样的事情:

{
    "mappings": {
        "doc": {
            "properties": {
                ...
            },
            "_size": {
                "enabled": true
            }
        }
    }
}

我得到解析异常。

如果我把它放在属性中,我就无法得到理想的结果。

请帮助。

由于

2 个答案:

答案 0 :(得分:0)

以下适用于ES 6.0群集:

PUT index1

PUT index1/_mapping/type1
{
  "_size": {
    "enabled": true
  },
  "properties": {
    "latestLocation": {
      "properties": {
        "geoPoint": {
          "type": "geo_point"
        },
        "latestLocationTimestamp": {
          "type": "date"
        }
      }
    }
  }
}

POST index1/type1
{
  "hello": "new document"
}

GET index1/type1/_search
{
    "script_fields": {
    "size": {
      "script": "doc['_size']"  
    }
  }
}

答案 1 :(得分:0)

我不得不安装插件。我认为这必须是一个内置的配置参数,因为我有启用它的链接。但事实并非如此。

我必须安装mapper-size插件。