如何在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中有什么方法可以重命名映射中和文档中的字段?

解决方法

最接近的是alias data type

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

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

顺便说一句,由于那些通常用于内部字段(例如_id),我通常会避免使用下划线加底线。