首页 > 解决方案 > 如何重命名 Elasticsearch 中的字段?

问题描述

我在 Elasticsearch 中有一个具有以下字段映射的索引:

{
    "version_data": {
        "properties": {
            "title": {
                "type": "text",
                "fields": {
                    "raw": {
                        "type": "keyword"
                    }
                }
            },
            "updated_at": {
                "type": "date"
            },
            "updated_by": {
                "type": "keyword"
            }
        }
    }

}

我已经在其中创建了一些文档,现在想version_data_version_data.
Elasticsearch 中是否有任何方法可以重命名映射和文档中的字段?

标签: elasticsearchelastic-stackelasticsearch-5

解决方案


最接近的是别名数据类型

在您的映射中,您可以将其从旧名称链接到新名称,如下所示:

PUT test/_mapping
{
  "properties": {
    "_version_data": {
      "type": "alias",
      "path": "version_data"
    }
  }
}

顺便说一句,我通常会避免前导下划线,因为那些通常用于内部字段(如_id.


推荐阅读