ES 修改索引字段类型

大体的原理:
1:按照老索引按需修改,新建新索引
2:转移数据(数据量大,时间会很长)
3:删除老索引
4:给新索引 创建别名

第一步:创建新索引

可以先获取老索引mapping

java 复制代码
GET /old_index/_mapping

-------按需修改mapping结构或类型----

java 复制代码
PUT /new_index
{
  "mappings": {
    "properties": {
      "new_field": {
        "type": "text"
      }
    }
  }
}

第二步:转移数据(数据量大,时间会很长)

使用_reindex API将旧索引的数据复制到新索引中

java 复制代码
POST /_reindex
{
  "source": {
    "index": "old_index"
  },
  "dest": {
    "index": "new_index"
  }
}

异步任务迁移数据

java 复制代码
POST /_reindex?wait_for_completion=false
{
  "source": {
    "index": "old-index"
  },
  "dest": {
    "index": "new-index"
  }
}
响应:
{
  "task": "jxZZibZPQ_mViMJHQyFz5w:7665"
}
查看任务状态:
GET /_tasks/jxZZibZPQ_mViMJHQyFz5w:7665

验证数据是否全部转移:查看新旧索引中的数据总量是否相等

GET /old-index/_count

GET /new-index/_count

第三步 删除旧索引(可选步骤,谨慎操作)

DELETE /old_index

这里可能提示错误,

does not support having a body

可以借助插件工具 直接点击删除

第四步:给新索引 创建别名

java 复制代码
PUT /new_index/_alias/old_index

参考文章
Elasticsearch重建索引-修改索引字段类型
Elasticsearch Mapping 类型修改

相关推荐
森屿~~24 分钟前
CMA-ES:从搜索分布自适应到协方差矩阵学习
学习·elasticsearch·矩阵
captain_AIouo38 分钟前
Captain AI打造OZON全员协同智能工具
大数据·人工智能·经验分享·aigc
杰建云16742 分钟前
商家小程序有什么用
大数据·apache
剑神一笑1 小时前
Linux tree 命令深度解析:从目录遍历到树形可视化的完整实现
linux·运维·elasticsearch
财经资讯数据_灵砚智能1 小时前
基于全球经济类多源新闻的NLP情感分析与数据可视化(夜间-次晨)2026年5月11日
大数据·人工智能·python·信息可视化·自然语言处理
2501_934440231 小时前
只做中外合作办学,并且把它做深、做精
大数据·人工智能
国强_dev2 小时前
如何提升canal吞吐量
java·大数据·python
派拉软件2 小时前
AI 网关:重塑企业级大模型服务治理架构
大数据·人工智能·架构
Lucky me.2 小时前
Cloud code完整命令手册
大数据·elasticsearch·搜索引擎
大大大大晴天️2 小时前
Flink:Keyed State vs Operator State 原理与实践
大数据·flink