向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接口添加新字段的时候,影响到旧数据。不过,单独出一个接口处理旧数据也是很合理的。

参考:

相关推荐
Lumistory27 分钟前
照明工程落地效果评判与改造的实践参考
大数据·人工智能·光照贴图
AI风控技术指南40 分钟前
大模型安全围栏厂商评估:以数美科技为例拆解能力、架构和 POC 指标
大数据·网络·人工智能
snpgroupcn1 小时前
SAP ECC 维护 2027 年到期:企业还能否继续使用旧系统
大数据
广西生活网1 小时前
品牌战略全面升级 原广西生活网正式更名为旭成网
大数据·生活
小刘快学习2 小时前
职业教育机构的题库答疑与学情分析,模型账怎么算清
大数据·人工智能
江瀚视野2 小时前
AperData销量2天破万,五一视界未来何在?
大数据·人工智能
时代分流2 小时前
从新华网教育论坛视角看:后浪教育设计课程如何对接产业实践
大数据·人工智能
jikemaoshiyanshi2 小时前
云上 AI 网关如何基于上下文、缓存、负载实现智能调度?——AWS 双层网关架构优化大规模推理效率
大数据·人工智能
大菠萝爱上小西瓜2 小时前
【大数据实战】Spark 2.2.2 完全分布式集群搭建
大数据·分布式·spark
陈天伟教授3 小时前
【30天学会机械制图】项目一 从平面图形开始 任务1 按标准来画图,都懂你!
大数据·人工智能·平面·机器人·具身智能机器人技术