elasticdump迁移ES数据详解

这篇具有很好参考价值的文章主要介绍了elasticdump迁移ES数据详解。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

👏作者简介:大家好,我是Rockey,不知名企业的不知名Java开发工程师
🔥如果感觉博主的文章还不错的话,请👍三连支持👍一下博主哦
📝联系方式:he18339193956,加我进群,大家一起学习,一起读书,一起对抗互联网寒冬👀

elasticdump 简介

elasticdump是一个能够将es的数据快速导入、导出、迁移的工具。
下载地址:https://github.com/elasticsearch-dump/elasticsearch-dump

前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到网站
点击跳转浏览。

1.elasticdump导入ES数据到本地json文件

elasticdump --input=http://elastic:elastic@ip:9200/a_ems_xqd_11/xqd  --output=D:/xqd.json

2、将本地数据导入es中

elasticdump  --input=D:/ES/date/demo.json --output=http://localhost:9200/demo1

如果报错信息如下:
Wed, 07 Jun 2023 01:39:16 GMT | dump ended with error (get phase) => UNAUTHORIZED: {“error”:{“root_cause”:[{“type”:“security_exception”,“reason”:“missing authentication token for REST request [/]”,“header”:{“WWW-Authenticate”:"Basic realm=“security” charset=“UTF-8"”}}],“type”:“security_exception”,“reason”:“missing authentication token for REST request [/]”,“header”:{“WWW-Authenticate”:"Basic realm=“security” charset=“UTF-8"”}},“status”:401}
那么表示无权限访问或未授权访问目标Elasticsearch集群,需要加上用户名和密码
命令如下:

elasticdump  --input=D:/ryxx.json --output=http://username:password@IP:9200/my_index  --type=data

有些人用

elasticdump  --input=D:/ryxx.json --output=http://IP:9200/my_index  --username=username --password=password --type=data

这个是不对的,这个会报错

3、将es导入另一个es

elasticdump --input=http://ip:9200/demo --output=http://127.0.0.1:9200/demo

4 .其他参数

elasticdump \
  --input=http://elastic:password@host:port/index_aaa \
  --output=http://elastic:password@host:port/index_bbb \
  --type=data --limit 1000 --support-big-int

通过指定--limit 1000,设置每批次同步文档数量。

注:通过指定--support-big-int参数,解决long类型字段丢失精度问题。

根据条件进行查询 到的数据进行迁移,

现在kibana中查询好,然后复制查询语句,将语句进行压缩转义然后执行即可

查询语句json要先进行压缩转义

https://www.bejson.com/

elasticdump迁移ES数据详解

使用–searchBody

elasticdump --input=http://elastic:elastic@ip:9200/a_ems_xqd_11/xqd  --output=D:/xqd.json --searchBody {\"query\":{\"bool\":{\"must\":[{\"range\":{\"JD\":{\"from\":116.388474,\"to\":116.67818,\"include_lower\":true,\"include_upper\":true,\"boost\":1.0}}},{\"range\":{\"WD\":{\"from\":39.621549,\"to\":39.839061,\"include_lower\":true,\"include_upper\":true,\"boost\":1.0}}}],\"must_not\":[{\"term\":{\"JLZT\":{\"value\":\"0\",\"boost\":1.0}}}],\"disable_coord\":false,\"adjust_pure_negative\":true,\"boost\":1.0}}} --limit 10000
  elasticdump --input=http://elastic:elastic@ip:9200/a_ems_xtzd/xtzd  --output=D:/xtzd.json --searchBody {\"query\":{\"bool\":{\"must\":[{\"term\":{\"ZDLX\":{\"value\":\"ZQXX_ZQLX\",\"boost\":1.0}}},{\"prefix\":{\"BZXX\":{\"value\":\"A01\"}}}]}}}

使用–searchBody 向本机ES导数据

elasticdump --input=http://elastic:elastic@ip:9200/a_ems_xqd_11/xqd  --output=http://localhost:9200/a_ems_xqd_11/xqd --searchBody {\"query\":{\"bool\":{\"must\":[{\"range\":{\"JD\":{\"from\":116.388474,\"to\":116.67818,\"include_lower\":true,\"include_upper\":true,\"boost\":1.0}}},{\"range\":{\"WD\":{\"from\":39.621549,\"to\":39.839061,\"include_lower\":true,\"include_upper\":true,\"boost\":1.0}}}],\"must_not\":[{\"term\":{\"JLZT\":{\"value\":\"0\",\"boost\":1.0}}}],\"disable_coord\":false,\"adjust_pure_negative\":true,\"boost\":1.0}}} --limit 10000

使用–type=analyzer导出分析器

elasticdump --input=http://elastic:elastic@ip:9200/a_ems_xqd_11/xqd  --output=D:/xqd.json --type=analyzer

结语

🔥一个人可以掌握知识,但只有与他人交流才能形成智慧。
🔥One person can acquire knowledge, but wisdom is formed only in the exchange with others.
📝 欢迎大家关注博主公众号 Rockey小何同学 添加博主微信:he18339193956进群,一起学习,一起成长,一起提高认知。
🏆 我坚信人与人之间的差距是表面上是财富的差距,本质上是大脑中认知的差距,文章来源地址https://www.toymoban.com/news/detail-415635.html

到了这里,关于elasticdump迁移ES数据详解的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • ElasticSearch 数据迁移工具elasticdump

    Elasticdump 是一个用于导入和导出 Elasticsearch 数据的命令行工具。它提供了一种方便的方式来在不同的 Elasticsearch 实例之间传输数据,或者进行数据备份和恢复。 使用 Elasticdump,你可以将 Elasticsearch 索引中的数据导出为 JSON 文件,或者将 JSON 文件中的数据导入到 Elasticsearch 索引

    2024年02月16日
    浏览(46)
  • 使用elasticdump实现es数据导入导出示例(持续更新中)

    Elasticdump是一个命令行工具,可用于将数据从Elasticsearch导出到JSON文件,以及将JSON文件导入到Elasticsearch中。以下是一个简单的示例,演示如何使用Elasticdump实现数据导入导出: 您可以使用npm命令在命令行中安装Elasticdump。(npm请自行安装。)例如,使用以下命令安装最新版本

    2023年04月11日
    浏览(45)
  • ES快照备份及恢复(ES数据迁移)

    目录 ES配置仓库 elasticsearch.yml 注册仓库 仓库相关操作 查看仓库 删除仓库 创建快照 快照相关操作 查询快照 删除快照 恢复快照 快照全量恢复 指定索引恢复 恢复时重命名 合并索引 索引相关操作 查询全量索引 查询索引状态 打开/关闭索引 删除索引 迁移步骤说明: 需搭建共

    2023年04月09日
    浏览(43)
  • ES数据迁移

    场景:单机迁移到集群 1、物理文件拷贝: 数据目录:到elasticsearch.yml中找到path.data的配置 2、替换调新集群中其中一台的数据文件目录,同时清空集群其余节点的数据目录文件 3、启动集群节点: 报错: java.io.IOException: failed to find metadata for existing index XXX 在节点启动的时候,

    2024年02月11日
    浏览(34)
  • ES数据迁移(snapshot)

    以下是我从5.x版本集群迁移至6.x集群,比较简单,因此简单记录一下

    2024年02月17日
    浏览(42)
  • ES 数据迁移最佳实践

           数据迁移是 Elasticsearch 运维管理和业务需求中常见的操作之一。以下是不同数据迁移方法的最佳实践和讲解: 方案 优点 缺点(限制) 适用场景 是否有版本要求 开发程序 灵活,方便,可以定制。例如es的搜索快照是一个付费API,可以用程序实现同样的功能,把不

    2024年02月04日
    浏览(42)
  • ES 7.7.0 数据迁移

    本文使用 elasticdump 做数据迁移,支持在线和离线俩种方式,适用于数据量比较小的情况。 由于elasticdump 依赖于 node,首先需要安装下node。 选择对应的windows版本一路下一步即可,以下是64位的安装包标注: linux和windows基本相同,建议全局安装下: ES索引的迁移需要一个个的迁

    2024年02月02日
    浏览(54)
  • es单机数据迁移到另一个es单机

    将一个Elasticsearch单机的数据迁移到另一个Elasticsearch单机主要可以分为两步: ## 第一步:备份原有数据 将原有Elasticsearch单机中的数据备份到一个文件中。可以使用 Elasticsearch 提供的 snapshot 功能,将数据快照保存到本地或者远程存储库中。 具体操作步骤如下: 1. 创建一个

    2024年02月08日
    浏览(46)
  • elasticsearch es数据迁移es-dump

    由于现在接管了同事的代码,同事的代码操作es时,导致了线上问题,我又对es不熟悉,怕操作影响了其他线上业务,于是现在将es数据复制一版到本地来。 远程es服务elasticsearch.tencent.xxx.com:80 本地es服务192.168.9.102:9200 现在将远程转换为本地,我们采用【elasticdump工具】来进行

    2024年02月11日
    浏览(40)
  • ES索引数据迁移 _reindex

    集群内部索引迁移,从一个索引迁移数据到另一个索引里 新索引与就索引结构保持一致 通过就索引_mapping _setting 获取配置和结构信息 然后创建新索引 需要注意 添加如下配置 设置number_of_replicas为0防止我们迁移文档的同时又发送到副本节点,影响性能 设置refresh_interval为-1是

    2024年02月12日
    浏览(49)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包