「ES数据迁移可视化工具(Python实现)」支持7.x索引数据互传

工具概述

这是一个用于 Elasticsearch 7x 的数据迁移 Python 脚本,支持以下功能:

  • 跨集群数据迁移(支持认证)
  • 按索引前缀或精确名称筛选迁移
  • 批量处理(可配置批量大小)
  • 自动创建目标索引(保留源索引结构)
  • 实时进度显示和性能统计

功能特性

核心功能

✅ 完整的索引结构和数据迁移

✅ 支持源和目标集群不同认证信息

✅ 断点续传能力

✅ 详细的迁移报告

筛选功能

🔍 按索引前缀筛选(--index-prefix)

🔍 按精确索引名筛选(--index-filter)

🔍 支持同时使用两种筛选方式

性能监控

📊 实时显示迁移速度

📊 每个索引的进度条

📊 迁移完成后的详细统计

环境要求

  • Python 3.6+
  • 以下Python包
  • elasticsearch==7.15.2(你使用的版本)
  • tqdm==4.62.3

安装依赖:

bash 复制代码
pip install elasticsearch==7.15.2 tqdm==4.62.3

使用说明

基本命令

复制代码
python es_migration.py \
    --source-host <源ES地址> \
    --source-user <源用户名> \
    --source-pass <源密码> \
    --target-host <目标ES地址> \
    --target-user <目标用户名> \
    --target-pass <目标密码> \
    [其他参数]

参数说明

参数 必选 说明 示例
--source-host 源ES地址 http://192.168.1.210:9200
--source-user 源ES用户名 elastic
--source-pass 源ES密码 yourpassword
--target-host 目标ES地址 http://192.168.1.136:9200
--target-user 目标ES用户名 elastic
--target-pass 目标ES密码 yourpassword
--batch-size 每批处理的文档数(默认5000) 10000
--scroll-keepalive scroll API保持时间(默认15m) 30m
--index-filter 精确匹配的索引名(可多个) index1 index2
--index-prefix 索引名前缀匹配 logs.

使用示例

复制代码
python es_migration.py --source-host http://192.168.1.210:9200 --source-user elastic --source-pass pass@2025 --target-host http://192.168.1.136:9200 --target-user elastic --target-pass pass@2025 --batch-size 5000 --scroll-keepalive 15m --index-prefix "log."

输出说明

脚本运行时将显示:

  • 连接测试结果
  • 发现的索引数量和列表
  • 每个索引的迁移进度条
  • 实时迁移速度
  • 已迁移文档数/总文档数

迁移完成后将生成报告:

  • 开始和结束时间
  • 总耗时
  • 成功/失败的索引列表
  • 平均迁移速度

源码下载:https://download.csdn.net/download/MaYuKang/90677592?spm=1001.2014.3001.5503

相关推荐
2301_7644413324 分钟前
使用python构建的应急物资代储博弈模型
开发语言·python·算法
计算机毕设VX:Fegn089534 分钟前
计算机毕业设计|基于springboot + vue服装商城系统(源码+数据库+文档)
数据库·vue.js·spring boot·课程设计
喏喏心1 小时前
深度强化学习:价值迭代与Bellman方程实践
人工智能·python·学习·机器学习
小白勇闯网安圈1 小时前
supersqli、web2、fileclude、Web_python_template_injection
python·网络安全·web
天远数科1 小时前
前端全栈进阶:使用 Node.js Crypto 模块处理 AES 加密与天远API数据聚合
大数据·api
天远API1 小时前
后端进阶:使用 Go 处理天远API的 KV 数组结构与并发风控
大数据·api
用户8356290780511 小时前
从一维到二维:用Spire.XLS轻松将Python列表导出到Excel
后端·python
千匠网络1 小时前
S2B供应链平台:优化资源配置,推动产业升级
大数据·人工智能·产品运营·供应链·s2b
WX-bisheyuange1 小时前
基于Spring Boot的智慧校园管理系统设计与实现
java·大数据·数据库·毕业设计
l木本I2 小时前
uv 技术详解
人工智能·python·深度学习·机器学习·uv