概述
这个工具正好srcoll+bulk原理,进行数据迁移,该工具安装简单,解压即可使用。
scroll查询:es深度分页查询,基于http请求,可以查询索引下所有数据,不会有from+size不能大于1w的问题。
bulk请求:可以批量插入数据,是http请求。
1、下载文件 elasticsearch-migration
源码:https://github.com/medcl/esm-abandoned/tree/v0.4.1
编译好的工具:https://github.com/medcl/esm-abandoned/releases/tag/v0.4.1
2、插入数据;
curl -XPOST 'dmp9:9201/wzp_test/just_test?pretty' -d' {"name": "Jane Doe" }';
curl -XPOST 'dmp9:9201/wzp_test/just_test?pretty' -d' {"name": "Jane wang" }';
curl -XPOST 'dmp9:9201/wzp_test/just_test?pretty' -d' {"name": "Jane he" }';
curl -XPOST 'dmp9:9201/wzp_test/just_test?pretty' -d' {"name": "Jane lv" }';
curl -XPOST 'dmp9:9201/wzp_test/just_test?pretty' -d' {"name": "Jane wang" }';
curl -XPOST 'dmp9:9201/wzp_test/just_test?pretty' -d' {"name": "Jane peng" }';
3、查看建立的索引的情况;
1)、低版本索引1.4.1;
[root@dmp9 logs]# curl dmp9:9200/_cat/indices?v
health status index pri rep docs.count docs.deleted store.size pri.store.size
green open wzp_test 5 1 6 0 30.4kb 15.3kb
2)、高版本索引2.4.1;
[root@dmp9 logs]# curl dmp9:9200/_cat/indices?v
health status index pri rep docs.count docs.deleted store.size pri.store.size
green open dmp-toutiao-allfields-20170410 5 1 4470231 0 21.8gb 10.9gb
green open dmp-toutiao-allfields-20170411 5 1 5483217 0 26.8gb 13.4gb
green open dmp-toutiao-allfields-20170412 5 1 1291251 0 6.5gb 3.2gb
green open dmp-toutiao-allfields-20170413 5 1 3692841 0 17.9gb 8.9gb
green open dmp-toutiao-allfields-20170414 5 1 5683632 0 26.9gb 13.4gb
green open dmp-toutiao-allfields-20170415 5 1 5558394 99 26.4gb 13.2gb
green open dmp-toutiao-allfields-20170416 5 1 5249961 0 24.9gb 12.4gb
green open dmp-toutiao-allfields2 15 3 1862685 274944 22.9gb 5.7gb
green open dmp-toutiao-allfields-20170417 5 1 4502766 0 21.4gb 10.7gb
green open dmp-toutiao-allfields-20170418 5 1 0 0 1.5kb 795b
green open dmp-toutiao-allfields-20170419 5 1 0 0 1.5kb 795b
green open mobilemalware_event_test_all_20180110 6 1 22538 1 109.7mb 54.8mb
green open dmp-toutiao-allfields 15 3 27132 0 309.8mb 77.4mb
green open test-index 5 1 0 0 1.5kb 795b
green open twitter 5 1 2 0 13.9kb 6.9kb
green open .kibana 1 1 41 3 160.3kb 80.1kb
green open dmp-toutiao-allfields5 15 3 38828040 195705 389.5gb 97.3gb
green open dmp-toutiao-allfields4 15 3 576123 12036 6.3gb 1.5gb
green open analysers_test_all 6 1 3843 0 715.6kb 355.1kb
green open dmp-toutiao-allfields6 15 3 12136407 0 122gb 30.5gb
green open dmp-toutiao-allfields-20170421 5 1 0 0 1.5kb 795b
green open dmp-toutiao-allfields-20170422 5 1 0 0 1.5kb 795b
green open dmp-toutiao-allfields-20170423 5 1 0 0 1.5kb 795b
green open dmp-toutiao-allfields-20170401 5 1 1326999 0 6.8gb 3.4gb
green open dmp-toutiao-allfields-20170402 5 1 1286769 0 6.4gb 3.2gb
green open dmp-toutiao-allfields-20170424 5 1 0 0 1.5kb 795b
green open dmp-toutiao-allfields-20170425 5 1 0 0 1.5kb 795b
green open dmp-toutiao-allfields-20170403 5 1 356676 0 1.8gb 930.6mb
green open dmp-toutiao-allfields-20170426 5 1 0 0 1.5kb 795b
green open dmp-toutiao-allfields-20170404 5 1 331578 0 1.6gb 870.2mb
green open dmp-toutiao-allfields-20170405 5 1 1000051 0 14.5gb 7.2gb
green open dmp-toutiao-allfields-20170427 5 1 0 0 1.5kb 795b
green open dmp-toutiao-allfields-20170428 5 1 0 0 1.5kb 795b
green open dmp-toutiao-allfields-20170406 5 1 4616148 216 22.9gb 11.4gb
green open dmp-toutiao-allfields-20170407 5 1 772956 0 3.9gb 1.9gb
green open dmp-toutiao-allfields-20170429 5 1 0 0 1.5kb 795b
green open dmp-toutiao-allfields-20170408 5 1 412638 0 2.2gb 1.1gb
green open dmp-toutiao-allfields-20170409 5 1 4491483 0 22.2gb 11.1gb
green open wherehows 5 1 0 0 1.5kb 795b
green open plugin 5 1 6 0 37.7kb 18.8kb
green open fz_external_table_all 6 1 37 0 234.1kb 117kb
green open dmp-toutiao-allfields-20170420 5 1 0 0 1.5kb 795b
[root@dmp9 logs]#
4、移动数据;
./esm -s http://192.168.91.9:9201 -d http://192.168.91.9:9200 -x wzp_test -w=5 -b=10 -c 10000;
wzp_test
-w 表示线程数
-b 表示一次bulk请求数据大小,单位MB默认 5M
-c 一次scroll请求数量
5、移动过程
[root@dmp9 bin]# ./esm -s http://192.168.91.9:9201 -d http://192.168.91.9:9200 -x wzp_test -w=5 -b=10 -c 10000;
[11-26 00:01:43] [INF] [main.go:401,main] start data migration..
Scroll 6 / 6 [=============================================================================================] 100.00% 0s
Bulk 6 / 6 [===============================================================================================] 100.00% 9s
[11-26 00:01:52] [INF] [main.go:424,main] data migration finished.
[root@dmp9 bin]#
6、移动后数据检查;
[root@dmp9 bin]# curl dmp9:9200/_cat/indices?v
health status index pri rep docs.count docs.deleted store.size pri.store.size
green open dmp-toutiao-allfields-20170410 5 1 4470231 0 21.8gb 10.9gb
green open dmp-toutiao-allfields-20170411 5 1 5483217 0 26.8gb 13.4gb
green open dmp-toutiao-allfields-20170412 5 1 1291251 0 6.5gb 3.2gb
green open dmp-toutiao-allfields-20170413 5 1 3692841 0 17.9gb 8.9gb
green open dmp-toutiao-allfields-20170414 5 1 5683632 0 26.9gb 13.4gb
green open dmp-toutiao-allfields-20170415 5 1 5558394 99 26.4gb 13.2gb
green open dmp-toutiao-allfields-20170416 5 1 5249961 0 24.9gb 12.4gb
green open dmp-toutiao-allfields2 15 3 1862685 274944 22.9gb 5.7gb
green open dmp-toutiao-allfields-20170417 5 1 4502766 0 21.4gb 10.7gb
green open dmp-toutiao-allfields-20170418 5 1 0 0 1.5kb 795b
green open dmp-toutiao-allfields-20170419 5 1 0 0 1.5kb 795b
green open mobilemalware_event_test_all_20180110 6 1 22538 1 109.7mb 54.8mb
green open dmp-toutiao-allfields 15 3 27132 0 309.8mb 77.4mb
green open test-index 5 1 0 0 1.5kb 795b
green open twitter 5 1 2 0 13.9kb 6.9kb
green open .kibana 1 1 41 3 160.3kb 80.1kb
green open wzp_test 5 1 6 0 30.5kb 18.1kb
green open dmp-toutiao-allfields5 15 3 38828040 195705 389.5gb 97.3gb
green open dmp-toutiao-allfields4 15 3 576123 12036 6.3gb 1.5gb
green open analysers_test_all 6 1 3843 0 715.6kb 355.1kb
green open dmp-toutiao-allfields6 15 3 12136407 0 122gb 30.5gb
green open dmp-toutiao-allfields-20170421 5 1 0 0 1.5kb 795b
green open dmp-toutiao-allfields-20170422 5 1 0 0 1.5kb 795b
green open dmp-toutiao-allfields-20170401 5 1 1326999 0 6.8gb 3.4gb
green open dmp-toutiao-allfields-20170423 5 1 0 0 1.5kb 795b
green open dmp-toutiao-allfields-20170402 5 1 1286769 0 6.4gb 3.2gb
green open dmp-toutiao-allfields-20170424 5 1 0 0 1.5kb 795b
green open dmp-toutiao-allfields-20170425 5 1 0 0 1.5kb 795b
green open dmp-toutiao-allfields-20170403 5 1 356676 0 1.8gb 930.6mb
green open dmp-toutiao-allfields-20170426 5 1 0 0 1.5kb 795b
green open dmp-toutiao-allfields-20170404 5 1 331578 0 1.6gb 870.2mb
green open dmp-toutiao-allfields-20170405 5 1 1000051 0 14.5gb 7.2gb
green open dmp-toutiao-allfields-20170427 5 1 0 0 1.5kb 795b
green open dmp-toutiao-allfields-20170406 5 1 4616148 216 22.9gb 11.4gb
green open dmp-toutiao-allfields-20170428 5 1 0 0 1.5kb 795b
green open dmp-toutiao-allfields-20170407 5 1 772956 0 3.9gb 1.9gb
green open dmp-toutiao-allfields-20170429 5 1 0 0 1.5kb 795b
green open dmp-toutiao-allfields-20170408 5 1 412638 0 2.2gb 1.1gb
green open dmp-toutiao-allfields-20170409 5 1 4491483 0 22.2gb 11.1gb
green open wherehows 5 1 0 0 1.5kb 795b
green open plugin 5 1 6 0 37.7kb 18.8kb
green open fz_external_table_all 6 1 37 0 234.1kb 117kb
green open dmp-toutiao-allfields-20170420 5 1 0 0 1.5kb 795b
[root@dmp9 bin]#
1)、索引数量没问题;
2)、查看索引基本内容;
curl -XGET dmp9:9200/wzp_test
[root@dmp9 bin]# curl -XGET dmp9:9200/wzp_test
{"wzp_test":{"aliases":{},"mappings":{"just_test":{"properties":{"name":{"type":"string"}}}},"settings":{"index":{"creation_date":"1543161765737","number_of_shards":"5","number_of_replicas":"1","uuid":"osBa1LPYR_CJQCqCzn1kzA","version":{"created":"2040199"}}},"warmers":{}}}
[root@dmp9 bin]#
3)、查看文档;
curl -XGET dmp9:9200/wzp_test/just_test/_search;
{"took":5,"timed_out":false,"_shards":{"total":5,"successful":5,"failed":0},"hits":{"total":6,"max_score":1.0,"hits":[
{"_index":"wzp_test","_type":"just_test","_id":"AWdLgMctkUaRg-1cNRHJ","_score":1.0,"_source":{"name":"Jane wang"}},
{"_index":"wzp_test","_type":"just_test","_id":"AWdLgOWXkUaRg-1cNRHK","_score":1.0,"_source":{"name":"Jane he"}},
{"_index":"wzp_test","_type":"just_test","_id":"AWdLgP62kUaRg-1cNRHL","_score":1.0,"_source":{"name":"Jane lv"}},
{"_index":"wzp_test","_type":"just_test","_id":"AWdLgQwekUaRg-1cNRHM","_score":1.0,"_source":{"name":"Jane wang"}},
{"_index":"wzp_test","_type":"just_test","_id":"AWdLgJyOkUaRg-1cNRHI","_score":1.0,"_source":{"name":"Jane Doe"}},
{"_index":"wzp_test","_type":"just_test","_id":"AWdLgSIGkUaRg-1cNRHN","_score":1.0,"_source":{"name":"Jane peng"}}]}}
[root@dmp9 bin]#
结论:数据都是完整的,因此数据迁移成功;
#######################ES升级过程的注意点问题(别人说的,自己看看需要不需要###########################
因为ELK中Kibana版本依赖ES的版本的,在ES升级同时,Kibana 也需要升级。
有的时候可能不是最新的就是最合适的,在选择新版本过程中需要进行评估:比如插件的支持,尤其是第三方插件。我们用了IK中文分词插件,当时ES最新版的是5.6.2,而IK最新版的还只支持到5.6.1.
elasticsearch-migration只会插入数据,不会更新数据。所以在第四步做业务迁移时,若是迁移数据量较大,可以考虑先将迁移可能会被修改数据,对于其他确定不会被修改的数据,可以等业务迁移完成之后,再进行。
IK配置文件:2.3.3版本IK的配置是在ES安装目录plugin下面,5.6.1版本是在ES安装目录的config下。
5.x string分为text和keyword两种数据类型。
因为5.x对一些查询(比如filter查询)和聚合查询进行的调整,在业务应用迁移之前,需要在测试环境下先对原有业务进行回归测试。目前我发现的有:
5.x版本,term聚合查询时,聚合中size不能为0,否则会报错。
5.x 对于filter查询结构进行调整,回归业务测试时需要注意。
最后
以上就是舒心柠檬为你收集整理的elasticsearch-migration 跨集群数据迁移的全部内容,希望文章能够帮你解决elasticsearch-migration 跨集群数据迁移所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复