es-删除字段-实测

es字段一旦创建是无法删除的,本案的方案是复制新老索引的方法

一、背景

现有索引 index1,待删除字段field1和extendMap.field2,es版本6.3.2

二、步骤

1、删除index1中的filed1和extendMap.field2两个字段的数据

复制代码
POST index1/_update_by_query  
{
  "query":{
        "bool":{
            "must":[
                {
                    "exists":{
                        "field":"field1"
                    }
                }
            ]
        }
    },
 "script": "ctx._source.remove('field1')"
  }

POST index1/_update_by_query  
{
  "query":{
        "bool":{
            "must":[
                {
                    "exists":{
                        "field":"extendMap.field2"
                    }
                }
            ]
        }
    },
 "script": "ctx._source.extendMap.remove('field2')"
  }

2、新建index2,map中不要有上述待删除字段

3、拷贝index1到index2

复制代码
POST _reindex
{
    "source": {
        "index": "index1"
    },
    "dest": {
        "index": "index2"
    }
}

4、删除index1

复制代码
DELETE index1

5、新建index1,map中不要有上述待删除字段

6、拷贝index2到index1

复制代码
POST _reindex
{
    "source": {
        "index": "index2"
    },
    "dest": {
        "index": "index1"
    }
}

7、删除index2

复制代码
DELETE index2

完成

相关推荐
浪子小院26 分钟前
ModelEngine 智能体全流程开发实战:从 0 到 1 搭建多协作办公助手
大数据·人工智能
全栈前端老曹30 分钟前
【MongoDB】Node.js 集成 —— Mongoose ORM、Schema 设计、Model 操作
前端·javascript·数据库·mongodb·node.js·nosql·全栈
神梦流44 分钟前
ops-math 算子库的扩展能力:高精度与复数运算的硬件映射策略
服务器·数据库
让学习成为一种生活方式1 小时前
trf v4.09.1 安装与使用--生信工具42-version2
数据库
啦啦啦_99991 小时前
Redis-5-doFormatAsync()方法
数据库·redis·c#
闲人编程1 小时前
Elasticsearch搜索引擎集成指南
python·elasticsearch·搜索引擎·jenkins·索引·副本·分片
AEIC学术交流中心1 小时前
【快速EI检索 | ACM出版】2026年大数据与智能制造国际学术会议(BDIM 2026)
大数据·制造
生产队队长1 小时前
Redis:Windows环境安装Redis,并将 Redis 进程注册为服务
数据库·redis·缓存
老邓计算机毕设1 小时前
SSM找学互助系统52568(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面
数据库·ssm 框架·javaweb 毕业设计
wending-Y1 小时前
记录一次排查Flink一直重启的问题
大数据·flink