喵星之旅-屯粮的松鼠-ElasticSearch修改Mapping字段类型

在Elasticsearch (ES) 中,修改字段类型是一项需要谨慎操作的任务,因为一旦索引被创建,其映射(mapping)就不可更改。这意味着你不能直接修改一个已存在字段的类型。但是,备份数据》删除原索引》新建索引》回填数据:
重新索引

创建一个新的索引,其映射中包含你想要修改的字段类型。

1
2
3
4
5
6
7
8
9
10
PUT /new_index
{
"mappings": {
"properties": {
"your_field": {
"type": "new_type" // 例如 "date" 或 "keyword" 等
}
}
}
}

使用 Reindex API 将数据从旧索引复制到新索引。

1
2
3
4
5
6
7
8
9
POST _reindex
{
"source": {
"index": "old_index"
},
"dest": {
"index": "new_index"
}
}

可能会出现504超时错误,实际在运行,可以查看进度

1
get _tasks?actions=*reindex&detailed
文章目录
|