ElasticSearch7.x版本更新映射字段

2024-04-27 20:20

本文主要是介绍ElasticSearch7.x版本更新映射字段,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

目录

1、新建索引

请求方式:PUT

请求URL:

2、数据迁移

请求方式:POST

请求URL:

请求体:

3、验证新索引

请求方式:GET

请求URL:

响应体:

4、删除旧索引

请求方式:DELETE

请求URL:

5、新建旧索引

请求方式:PUT

请求URL:

5、再次数据迁移

请求方式:POST

请求URL:

 请求体:

6、再次验证

请求方式:GET

请求URL:

数据验证:

现有索引:testold

{"testold": {"aliases": {},"mappings": {"properties": {"_class": {"type": "text","fields": {"keyword": {"type": "keyword","ignore_above": 256}}},"id": {"type": "keyword"},"cotent": {"type": "keyword"},"tid": {"type": "keyword"}}},"settings": {"index": {"creation_date": "1713842844859","number_of_shards": "1","number_of_replicas": "1","uuid": "YmaRFkrmR-SuD-V95VpmwQ","version": {"created": "7090099"},"provided_name": "testold"}}}
}

工具人索引:testnew

{"mappings": {"properties": {"cotent": {"type": "keyword"}, "id": {"type": "keyword"}, "tid": {"type": "long"}}}, "settings": {"index": {"number_of_shards": 1, "number_of_replicas": 1}}
}

需要把testold的tid字段修改为long类型。

1、新建索引

请求方式:PUT

请求URL:

http://localhost:9200/testnew

{"mappings": {"properties": {"cotent": {"type": "keyword"}, "id": {"type": "keyword"}, "tid": {"type": "long"}}}, "settings": {"index": {"number_of_shards": 1, "number_of_replicas": 1}}
}

2、数据迁移

请求方式:POST

请求URL:

http://localhost:9200/_reindex

请求体:

{"source": {"index": "testold"}, "dest": {"index": "testnew"}
}

3、验证新索引

请求方式:GET

请求URL:

http://localhost:9200/testnew/_mapping

响应体:

{"testnew": {"aliases": { }, "mappings": {"properties": {"_class": {"type": "text", "fields": {"keyword": {"type": "keyword", "ignore_above": 256}}}, "id": {"type": "keyword"}, "cotent": {"type": "keyword"}, "tid": {"type": "long"}}}, "settings": {"index": {"creation_date": "1713842844859", "number_of_shards": "1", "number_of_replicas": "1", "uuid": "YmaRFkrmR-SuD-V95VpmwQ", "version": {"created": "7090145"}, "provided_name": "testnew"}}}
}

4、删除旧索引

请求方式:DELETE

请求URL:

http://localhost:9200/testold

注意:删除旧索引后,需要按照新要求的字段类型进行新建

5、新建旧索引

使用旧的索引名进行新建,以上动作目的是保证数据不丢失。

请求方式:PUT

请求URL:

http://localhost:9200/testold

{"mappings": {"properties": {"cotent": {"type": "keyword"}, "id": {"type": "keyword"}, "tid": {"type": "long"}}}, "settings": {"index": {"number_of_shards": 1, "number_of_replicas": 1}}
}

5、再次数据迁移

请求方式:POST

请求URL:

http://localhost:9200/_reindex

 请求体:

{"source": {"index": "testnew"}, "dest": {"index": "testold"}
}

6、再次验证

请求方式:GET

请求URL:

http://localhost:9200/testold/_mapping

数据验证:

http://localhost:9200/testold/_search

总结:在整个过程中,testnew只是祈祷一个中间过度的作用,确保在修改字段类型的过程中造成的数据丢失问题。

这篇关于ElasticSearch7.x版本更新映射字段的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/941448

相关文章

resultMap如何处理复杂映射问题

《resultMap如何处理复杂映射问题》:本文主要介绍resultMap如何处理复杂映射问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录resultMap复杂映射问题Ⅰ 多对一查询:学生——老师Ⅱ 一对多查询:老师——学生总结resultMap复杂映射问题

MySQL更新某个字段拼接固定字符串的实现

《MySQL更新某个字段拼接固定字符串的实现》在MySQL中,我们经常需要对数据库中的某个字段进行更新操作,本文就来介绍一下MySQL更新某个字段拼接固定字符串的实现,感兴趣的可以了解一下... 目录1. 查看字段当前值2. 更新字段拼接固定字符串3. 验证更新结果mysql更新某个字段拼接固定字符串 -

浅谈配置MMCV环境,解决报错,版本不匹配问题

《浅谈配置MMCV环境,解决报错,版本不匹配问题》:本文主要介绍浅谈配置MMCV环境,解决报错,版本不匹配问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录配置MMCV环境,解决报错,版本不匹配错误示例正确示例总结配置MMCV环境,解决报错,版本不匹配在col

Java枚举类实现Key-Value映射的多种实现方式

《Java枚举类实现Key-Value映射的多种实现方式》在Java开发中,枚举(Enum)是一种特殊的类,本文将详细介绍Java枚举类实现key-value映射的多种方式,有需要的小伙伴可以根据需要... 目录前言一、基础实现方式1.1 为枚举添加属性和构造方法二、http://www.cppcns.co

Linux卸载自带jdk并安装新jdk版本的图文教程

《Linux卸载自带jdk并安装新jdk版本的图文教程》在Linux系统中,有时需要卸载预装的OpenJDK并安装特定版本的JDK,例如JDK1.8,所以本文给大家详细介绍了Linux卸载自带jdk并... 目录Ⅰ、卸载自带jdkⅡ、安装新版jdkⅠ、卸载自带jdk1、输入命令查看旧jdkrpm -qa

Tomcat版本与Java版本的关系及说明

《Tomcat版本与Java版本的关系及说明》:本文主要介绍Tomcat版本与Java版本的关系及说明,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录Tomcat版本与Java版本的关系Tomcat历史版本对应的Java版本Tomcat支持哪些版本的pythonJ

MySQL新增字段后Java实体未更新的潜在问题与解决方案

《MySQL新增字段后Java实体未更新的潜在问题与解决方案》在Java+MySQL的开发中,我们通常使用ORM框架来映射数据库表与Java对象,但有时候,数据库表结构变更(如新增字段)后,开发人员可... 目录引言1. 问题背景:数据库与 Java 实体不同步1.1 常见场景1.2 示例代码2. 不同操作

IDEA中Git版本回退的两种实现方案

《IDEA中Git版本回退的两种实现方案》作为开发者,代码版本回退是日常高频操作,IntelliJIDEA集成了强大的Git工具链,但面对reset和revert两种核心回退方案,许多开发者仍存在选择... 目录一、版本回退前置知识二、Reset方案:整体改写历史1、IDEA图形化操作(推荐)1.1、查看提

JDK多版本共存并自由切换的操作指南(本文为JDK8和JDK17)

《JDK多版本共存并自由切换的操作指南(本文为JDK8和JDK17)》本文介绍了如何在Windows系统上配置多版本JDK(以JDK8和JDK17为例),并通过图文结合的方式给大家讲解了详细步骤,具有... 目录第一步 下载安装JDK第二步 配置环境变量第三步 切换JDK版本并验证可能遇到的问题前提:公司常

一文详解SQL Server如何跟踪自动统计信息更新

《一文详解SQLServer如何跟踪自动统计信息更新》SQLServer数据库中,我们都清楚统计信息对于优化器来说非常重要,所以本文就来和大家简单聊一聊SQLServer如何跟踪自动统计信息更新吧... SQL Server数据库中,我们都清楚统计信息对于优化器来说非常重要。一般情况下,我们会开启"自动更新