zl程序教程

您现在的位置是:首页 >  数据库

当前栏目

springboot 实现elasticsearch索引数据迁移

2023-04-18 16:07:46 时间

一、前言

在生产系统中,经常可能面临的一个状况就是,随着实际业务发生变更,现有的数据模型可能需要调整,而且到了必须调整不可的时候,那就只能硬着头皮做了;

数据模型的调整,说的大一点,可能是某一个业务模块整个设计需要推翻重来,或者涉及到其中局部关键模块的调整,比如数据表,数据库,或者大数据推荐模型的某个指标算法等;

现实中,诸如此类的场景不一而足,需要视情况而定,本篇分享一个小编在实际业务中碰到的一个场景,需要调整es索引的mapping结构,以及于此带来的数据迁移相关的问题。

二、问题来源

2.1  问题背景

生产系统中,某一块关于日志的业务数据采用es纯粹,其中某个字段采用了分词,以便于界面上多维度的关键字检索,其中涉及到的es索引中相关字段类比如下:

PUT /my_index1
{
  "mappings": {
      "properties": {
        "id": {
          "type": "integer"
        },

        "name": {
          "type": "text",
          "index": false
        },
        "address": {
          "type": "text",
          "index"