Elasticdump 是一个蛮好用的命令行工具,专门 Elasticsearch 之间的数据导入导出。如果你用的是 ELK 栈,尤其是 Elasticsearch,绝对会对这个工具有高的评价。它可以把数据轻松从一个 Elasticsearch 索引迁移到另一个,适合做数据备份、恢复或者迁移。如果你经常要在不同环境间搞数据迁移,或者只是想做一些备份,elasticdump 就挺合适的。只需要通过命令就能做到这些,像是导出数据为 JSON 格式,或者把数据从一个索引导入到另一个,操作也相当直接。
Elasticdump 是基于 Node.js 的,所以你得确保你的系统安装了 Node.js。,只需要运行npm install -g elasticdump
来安装。你就可以用elasticdump --input=http://localhost:9200/your_index --output=backup.json
这样的命令来导出数据。要导入数据只需改成elasticdump --input=backup.json --output=http://localhost:9200/new_index
。
有一点要注意,Elasticsearch 的版本差异会影响数据迁移的兼容性,操作前最好检查一下版本。除此之外,Elasticdump 也支持分批导入和并发设置,能提高迁移的性能,避免对服务产生太大影响。这个工具对日常管理 Elasticsearch 数据会有,操作简单、灵活,挺适合做集群数据的管理和迁移的。