向ES索引里面添加一个字段并更新旧文档数据

问题

最近需要调整ES索引,添加1个字段,并且,对旧文档数据更新新加的字段默认值。

解决思路

通过利用Update mapping API添加1个新字段后,然后,利用Update By Query API将向旧文档数据添加新加字段默认值。

添加字段

bash 复制代码
PUT dev_zyl/_mapping
{
  "properties": {
    "levelScore":  { 
      "type": "double",
      "null_value": 1
    }
  }
}

这里添加了一个levelScore字段,这个字段是double类型,默认值为1

更新旧文档

bash 复制代码
POST dev_zyl/_update_by_query
{
  "query": {
    "match_all": {}
  },
  "script": {
    "source": "ctx._source['levelScore'] = 1"
  }
}

这是查询出所有文档,然后,将levelScore字段设置为1

总结

现在这个时间点,ES不能通过在mapping接口添加新字段的时候,影响到旧数据。不过,单独出一个接口处理旧数据也是很合理的。

参考:

相关推荐
金融小师妹3 小时前
多因子智能推演:油价回落6%与黄金震荡上行的关联解析——AI预测框架
大数据·python·深度学习
IanSkunk5 小时前
眼视光中心设备互联与数据安全:从设备采购到患者数字档案的合规路径
大数据
重庆传粉科技6 小时前
AI搜索重构互联网价值交换:GEO如何缓解全域流量流失难题
大数据·人工智能
专注数据的痴汉7 小时前
「数据下载」黑龙江省黑土区富锦市土地利用数据
大数据·人工智能·信息可视化
互联网中的一颗神经元8 小时前
09 — .git 地图:打开那个隐藏文件夹
大数据·git·elasticsearch
zyplayer-doc9 小时前
zyplayer-doc企业知识库能做什么:从文档创建、权限管理到AI问答的完整能力
大数据·javascript·数据库·人工智能·pdf·word
今天AI了吗10 小时前
精细化落地教程:TimechoAI调参标准+数据清洗规范+误差归因+阈值适配全维度指南
大数据·人工智能·算法
明源云11 小时前
资产管理软件哪个好?不动产资产管理系统的选型逻辑与标杆实践
大数据·人工智能·架构
独行侠影a11 小时前
Elasticsearch海量数据查询优化:深度分页与聚合查询提速方案
大数据·elasticsearch·搜索引擎