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

参考:

相关推荐
Elastic 中国社区官方博客10 分钟前
jina-embeddings-v5-omni:用于文本、图像、音频和视频的 embeddings
大数据·人工智能·elasticsearch·搜索引擎·ai·音视频·jina
泓博12 分钟前
Openclaw-Ubuntu常用命令
大数据·elasticsearch·搜索引擎·ai
小仙女的小稀罕13 分钟前
外教课转写工具选择建议 | 实测筛选高口碑实用方案
大数据·人工智能·学习·自然语言处理·语音识别
WhoAmI22 分钟前
Elasticsearch实战指南:构建实时全文检索系统
elasticsearch·kafka
智慧医养结合软件开源24 分钟前
规范新增管控,凝聚志愿力量赋能康养服务
大数据·安全·百度·微信·云计算
黄金矿工Kingliu27 分钟前
经典hadoop案例应用(命令实现版)
大数据·服务器·hadoop
企查查数据服务27 分钟前
融资租赁尽调自动化:我是如何用 API 实现金规25号文的穿透式核查
大数据·ai·企业数据api
大江东去浪淘尽千古风流人物30 分钟前
【Kimera】MIT SPARK 实时度量-语义 SLAM 全栈解析:VIO + 鲁棒 PGO + 语义网格四模块架构与 EuRoC 实测深度剖析
大数据·架构·spark
Sandy_Star30 分钟前
1.7 税务行政法律救济
大数据·单元测试
GIS数据转换器36 分钟前
蓄能电力大数据监管平台
大数据·人工智能·分布式·数据挖掘·数据分析·智慧城市