elasticdump迁移ES数据详解

简介: elasticdump迁移ES数据详解

elasticdump 简介


elasticdump是一个能够将es的数据快速导入、导出、迁移的工具。


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/


使用–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.

🏆 我坚信人与人之间的差距是表面上是财富的差距,本质上是大脑中认知的差距,

相关文章
|
JSON 数据格式 索引
记一次ES节点扩容、数据迁移实践
ElasticSearch、ES数据迁移、ES扩容
13725 1
|
5月前
|
数据采集 运维 DataWorks
DataWorks产品使用合集之如何从es同步数据到es
DataWorks作为一站式的数据开发与治理平台,提供了从数据采集、清洗、开发、调度、服务化、质量监控到安全管理的全套解决方案,帮助企业构建高效、规范、安全的大数据处理体系。以下是对DataWorks产品使用合集的概述,涵盖数据处理的各个环节。
|
7月前
|
分布式计算 DataWorks 关系型数据库
DataWorks操作报错合集之离线同步任务中,把表数据同步到POLARDB,显示所有数据都是脏数据,报错信息:ERROR JobContainer - 运行scheduler 模式[local]出错.是什么原因
DataWorks是阿里云提供的一站式大数据开发与治理平台,支持数据集成、数据开发、数据服务、数据质量管理、数据安全管理等全流程数据处理。在使用DataWorks过程中,可能会遇到各种操作报错。以下是一些常见的报错情况及其可能的原因和解决方法。
|
7月前
|
存储 自然语言处理 关系型数据库
Elasticsearch如何修改Mapping结构并实现业务零停机
Elasticsearch如何修改Mapping结构并实现业务零停机
|
8月前
|
存储
ES批量写入数据
ES批量写入数据
305 1
|
数据库
解决logstash同步数据库内容到ES时,同步时间点用到了别的表的最新时间点
解决logstash同步数据库内容到ES时,同步时间点用到了别的表的最新时间点
188 0
|
JSON 移动开发 NoSQL
【ES系列九】——批量同步数据至ES
通过es官网提供的bulk方法进行实现
|
开发者 索引
使用 elasticdump 跨版本迁移 ES 数据
使用 elasticdump 跨版本迁移 ES 数据
使用 elasticdump 跨版本迁移 ES 数据
|
存储 分布式计算 资源调度
白话Elasticsearch72_利用HDFS备份与恢复ES生产集群的数据
白话Elasticsearch72_利用HDFS备份与恢复ES生产集群的数据
250 0
|
JSON 分布式数据库 数据格式
ES 10000条限制解决方案
ES 10000条限制解决方案
969 0