ES已有mapping下,新增字段且设置初始值

开发过程中随着业务的发展,内容累计,中途需要添加新的字段,并且设置初始值。

复制代码
# 先查询原来的mapping
GET test_index/_mapping 

# 新增字段
PUT test_index/_mapping
{
  "properties": {
    "name": {
      "type": "text"
    }
  }
}


# 历史数据设置初始值
POST test_index/_update_by_query
{
  "script": {
    "lang": "painless",
    "source": "if (ctx._source.name== null) {ctx._source.name=  ''}"
  }
}

参考文档:
ES 7.17x官方文档

相关推荐
JAVA面经实录9173 小时前
Java企业级工程化·终极完整版背诵手册(无遗漏、全覆盖、面试+落地通用)
java·开发语言·面试
陈随易4 小时前
有生之年系列,Nodejs进程管理pm2 v7.0发布
前端·后端·程序员
冰暮流星4 小时前
javascript之事件代理/事件委托
前端
许彰午5 小时前
CacheSQL(二):主从复制——OpLog 环形缓冲区与故障自动恢复
java·数据库·缓存
陈随易5 小时前
AI时代,你还在坚持手搓文章吗
前端·后端·程序员
Bat U6 小时前
JavaEE|多线程初阶(七)
java·开发语言
里欧跑得慢7 小时前
17. Flutter Hero动画实现:让界面过渡更加优雅
前端·css·flutter·web
IT_陈寒8 小时前
Vue的这个响应式陷阱,我debug了一整天才爬出来
前端·人工智能·后端
kyriewen8 小时前
前端测试:别为了100%覆盖率而写测试,那是自欺欺人
前端·javascript·单元测试
去伪存真8 小时前
我自己写的第一个skills--project-core-standards
前端·agent