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

参考:

相关推荐
黄焖鸡能干四碗1 分钟前
网络安全风险评估报告(WORD版本)
大数据·运维·网络·人工智能·制造
ZStack开发者社区6 分钟前
金融云新范式:ZStack如何用“一套架构“打通全域全场景
大数据·人工智能
毅炼12 分钟前
MySQL 常见问题总结(1)
java·大数据·数据库
GEO索引未来14 分钟前
为什么做GEO需要一套好的数据系统?
大数据·人工智能·ai·chatgpt·googlecloud
CRMEB系统商城17 分钟前
国内开源电商系统的格局与演变——一个务实的技术视角
java·大数据·开发语言·小程序·开源·php
AI周红伟18 分钟前
《智能体应用交付实操:OpenClaw+Skills+RAG+Agent智能体应用案例实操和智能体交付的方案设计》
大数据·数据库·人工智能·科技·gpt·深度学习·openclaw
爱研究的小梁28 分钟前
浅析适配应急与关键场景的三类聚合终端
大数据·网络
RInk7oBjo30 分钟前
大模型应用:批量文档摘要与分类实践:本地合同、报告数据处理与导出
大数据·数据库·人工智能
雷工笔记39 分钟前
智能生产线如何实现柔性生产?
大数据
乐迪信息1 小时前
智慧港口中AI防爆摄像机的船舶越线识别功能
大数据·人工智能·物联网·算法·目标跟踪