elasticsearch数据迁移
reindex
官方文档:https://www.elastic.co/guide/en/elasticsearch/reference/6.4/docs-reindex.html
_reindex API支持以某个索引为数据源构建一个新的索引。
如果elasticsearch的版本小于5.0,_reindex API只支持集群内部的索引重构迁移。
如果elasticsearch的版本为5.0及以上,不仅支持集群内部的索引重构迁移,而且支持从一个集群迁移数据到另一个集群,并且可以跨版本迁移,如果需要由低版本elasticsearch升级到高版本就可以采用这种方式。
参考:https://blog.csdn.net/qq_36666651/article/details/83792167
同时elasticsearch提供了ingestNODE,可以用于数据清洗等。
snapshot
适用于大量数据的迁移
官方文档:https://www.elastic.co/guide/en/elasticsearch/reference/2.4/modules-snapshots.html#modules-snapshots
不能跨多版本迁移,目标集群必须能够读取源集群的索引,所以1.x最高只能迁移到2.x,2.x最高迁移到5.x,要想跨多版本迁移只能一步步来。
实施步骤参考:https://www.jianshu.com/p/2a569e8039bd
elasticsearch-dump
如果集群版本较低,要进行数据迁移,就需要使用第三方的elasticsearch-dump工具。
github地址:https://github.com/taskrabbit/elasticsearch-dump
安装
# elasticsearch-dump采用node.js 所以需要先安装环境
yum -y install epel-release
yum -y install nodejs
# 检查
node --version
npm --version
# elasticdump
npm install elasticdump -g
迁移
# 依次操作
# 详细参数参考github的文档描述
node --max-old-space-size=2048 /usr/bin/elasticdump \--input=http://172.16.13.14:9200/index_name \--type=settings \--output=http://192.168.3.41:9200 \--limit=20000node --max-old-space-size=2048 /usr/bin/elasticdump \--input=http://172.16.13.14:9200/index_name \--type=mapping \--output=http://192.168.3.41:9200 \--limit=20000node --max-old-space-size=2048 /usr/bin/elasticdump \--input=http://172.16.13.14:9200/index_name \--type=data \--output=http://192.168.3.41:9200 \--limit=20000
PS:还一个类似的工具Elasticsearch-Exporter
logstash
参考 https://www.jianshu.com/p/97dbaf78359b
配置文件示例
input {elasticsearch {hosts => "172.16.13.14:9200" #配置 elasticsearch的地址及indexindex => "test_index"query => '{ "query": {"match_all" : {} } }' #配置匹配模式size => 10000 #配置遍历数据scroll => "5m" # 配置遍历时间间隔docinfo => true}
}output {elasticsearch {hosts => ["192.168.3.20:9200"]index => "test_index"}
}
elasticsearch数据迁移相关推荐
- Elasticsearch 数据迁移方案
常见的业务上云,自建的ES集群迁移上云ES,则需要迁移数据.如果业务可以停服或者可以暂停写操作(冷数据迁移) 迁移方案 COS 快照,即 Cloud Object Storage logstash e ...
- 使用ESM做elasticsearch数据迁移
esm github地址.里面有详细介绍. https://github.com/medcl/esm 由于之前先做了一部分迁移,过了一个星期才正式使用,中间的一星期数据没迁移.此时数据已经开始忘es中 ...
- elasticsearch数据迁移备份还原
需求一:elasticsearch中的数据需要每天备份 需求二:elasticsearch5.2中的数据要迁移到elasticsearch6.5.4中 方案:采用repository-hdfs插件进行 ...
- ElasticSearch 数据迁移
1.indices整体迁移-磁盘文件 迁移环境: centos到windows 版本: ES6.2.4到ES6.2.4 copy 源ES目录下的data文件到新ES目录下 启动新ES即可 ...
- elasticsearch数据迁移esm
es同步工具官网:https://github.com/medcl/esm https://blog.csdn.net/wangkai_123456/article/details/93190827? ...
- ES数据迁移_snapshot(不需要安装其他软件)
参考文章: 三种常用的 Elasticsearch 数据迁移方案 ES基于Snapshot(快照)的数据备份和还原 CDH修改ElasticSearch配置文件不生效问题 目录 1.更改老ES和新ES ...
- 【云上ELK系列】Logstash迁移Elasticsearch数据方法解读
Elasticsearch中数据搬迁是工程师们经常会做的,有时是为了集群迁移.有时是为了数据备份.有时是为了升级等等,迁移的方式也有很多种,比如说通过elasticsearch-dump.通过snap ...
- 【elasticsearch】ES数据库重建索引 -- Reindex(数据迁移)
1.应用背景: 1.当你的数据量过大,而你的索引最初创建的分片数量不足,导致数据入库较慢的情况,此时需要扩大分片的数量,此时可以尝试使用Reindex. 2.当数据的mapping需要修改,但是大量的 ...
- ElasticSearch:Reindex数据迁移使用
一.前言 ES在创建好索引后,mapping的properties属性类型是不能更改的,只能添加.如果说需要修改字段就需要重新建立索引然后把旧数据导到新索引. 二.Reindex 5.X版本后新增_r ...
最新文章
- 创建一个没有边框的并添加自定义文字的UISegmentedControl
- python使用正則表達式
- 大话RxJava:一、初识RxJava与基本运用
- 【Android 逆向】ART 脱壳 ( InMemoryDexClassLoader 脱壳 | DexFile 构造函数及相关调用函数 | Android 源码中查找 native 函数 )
- Java ee第四周作业
- linux之head命令
- redistemplate使用_如何使用 SpringBoot + Redis 优雅的解决接口幂等性问题
- rpc调试工具grpcui的安装使用
- 模板模式(Template Pattern)
- loj 1063(求割点个数)
- 产品经理面试指南,常见面试题及回答思路
- ios游戏使得newpad不断迅速增长
- 靠模仿红牛成为饮料界的“黑马”,东鹏特饮的未来如何谱写?
- Python制作的三个奇怪作品
- html中span隐藏属性,span标签的class属性
- 必杀VI、VIM编辑器命令
- 现代天线设计——学习笔记(一)
- Visio 导出图片时字符间距错乱
- 小程序支付微信回调地址问题
- python打印等腰三角形_Python 打印各种三角形
热门文章
- 关于程序员的自我提升
- 三角函数有理式的不定积分
- IDA动态调试so 指南
- 量子计算机每次秒可达多少次,激光脉冲让运算速度提升百万倍 量子计算机有望实现室温运行...
- 游戏王,查卡器,编号,开源,代码,OCG,程序
- 202109-4 收集卡牌
- Android系统状态栏的信号图标显示流程简介
- 查看Eclipse32位还是64位,查看JDK是32位还是64位
- js截取指定字符前面或后面的内容,可以设置指定符号 “-” “%”等
- “前世青年照”又让你上套了?大数据时代,人生处处市“陷阱”...