当前位置: 首页 > news >正文

Elasticsearch 不允许直接修改现有索引的映射来添加新字段

由于 Elasticsearch 不允许直接修改现有索引的映射来添加新字段,您需要采取以下步骤来添加新字段:

1. **创建新索引**:
   创建一个新的索引,包含原始字段和您想要添加的新字段 `content`。

   ```json
   PUT /new_article
   {
     "mappings": {
       "_doc": {
         "properties": {
           "title": {
             "type": "text",
             "analyzer": "ik_max_word",
             "search_analyzer": "ik_max_word"
           },
           "desc": {
             "type": "text",
             "analyzer": "ik_max_word",
             "search_analyzer": "ik_max_word"
           },
           "content": {  // 新增字段
             "type": "text",
             "analyzer": "ik_max_word",
             "search_analyzer": "ik_max_word"
           }
         }
       }
     }
   }
   ```

2. **迁移数据**:
   使用 `_reindex` API 将数据从旧索引 `article` 迁移到新索引 `new_article`。

   ```json
   POST /_reindex
   {
     "source": {
       "index": "article"
     },
     "dest": {
       "index": "new_article"
     }
   }
   ```

3. **更新别名** (如果使用):
   如果您使用别名,需要更新别名指向新的索引。

   ```json
   POST /_aliases
   {
     "actions": [
       {
         "remove": {
           "index": "article",
           "alias": "article_alias"  // 假设您的别名是 article_alias
         }
       },
       {
         "add": {
           "index": "new_article",
           "alias": "article_alias"
         }
       }
     ]
   }
   ```

4. **删除旧索引** (可选):
   在确认新索引工作正常并且别名已经更新之后,您可以删除旧的索引以释放资源。

   ```json
   DELETE /article
   ```

5. **更新应用程序配置**:
   更新您的应用程序配置,确保它指向新的索引或别名。

请注意,这个过程涉及到数据迁移,因此在执行这些步骤之前,请确保您已经备份了数据,以防止数据丢失。此外,根据您的数据量大小,迁移数据可能需要一些时间,并且可能会对 Elasticsearch 集群的性能产生影响。建议在低峰时段进行这些操作。
 


http://www.mrgr.cn/news/2193.html

相关文章:

  • 42.【C语言】冒泡排序
  • 分割回文串
  • Java复习(二)——算法与数据结构
  • CDD数据库文件制作(七)——服务配置(0x28)
  • 分享一个基于python爬虫的“今日头条”新闻数据分析可视化系统(源码、调试、LW、开题、PPT)
  • 【二叉树进阶】--- 根据二叉树创建字符串
  • 11结构型设计模式——外观模式
  • 知识改变命运 数据结构【栈和队列面试题】
  • Go 1.21在性能方面有哪些提升?
  • Java、python、php版的高校学生学习成长记录管理系统(源码、调试、LW、开题、PPT)
  • Stable Diffusion绘画 | ControlNet应用-Lineart(线稿):轻轻松松画线稿
  • java编程 斐波拉契数列算法集锦【斐波拉契数列】【上】
  • 苍穹外卖day10
  • JS获取当前浏览器名称
  • SQL触发器的级联魔力:数据完整性的守护者
  • 使用Seaborn绘制热力图
  • 18705 01背包问题
  • 注意!2024年下半年软考报名已开始
  • 机器学习之 K 近邻算法图像识别实战
  • CUDA-MODE课程笔记 第7课: Quantization Cuda vs Triton