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

参考:

相关推荐
2601_9577867714 分钟前
星链引擎矩阵系统:流批一体湖仓架构与亿级数据实时数仓技术实践
大数据·矩阵·架构
2601_9577867721 分钟前
企业级内容矩阵全链路自动化运营技术实现与实践
大数据·矩阵·自动化
跨境卫士—小依22 分钟前
低值包裹全面计税之后跨境卖家如何重做小额订单承接逻辑
大数据·人工智能·跨境电商·亚马逊·营销策略
噗噗1222 分钟前
企业微信 API 实操系列:构建全链路私域自动化增长体系
大数据·自动化·企业微信
莽撞的大地瓜1 小时前
政企舆情大数据服务平台:新浪舆情通以技术赋能全流程管理
大数据·数据库·数据分析
莽撞的大地瓜1 小时前
舆情分析智能体:蜜度新浪舆情通以多Agent协同驱动全流程智能升级
大数据·数据仓库·数据分析
Promise微笑1 小时前
Geo专家于磊:Json-LD优化实战SOP与双核四驱体系
大数据·人工智能·重构·json
行业研究员1 小时前
2026 Agent Memory主流方案能力解析与落地选型
大数据·数据库·agent记忆
跨境卫士苏苏1 小时前
欧盟固定收费临近之后跨境卖家如何判断哪些轻小件先退出
大数据·人工智能·跨境电商·亚马逊·跨境
优思学苑1 小时前
优思学院|波音 787 电池故障背后的六西格玛启示
大数据·人工智能