🔥🔥 AllData大数据产品是可定义数据中台,以数据平台为底座,以数据中台为桥梁,以机器学习平台为中层框架,以大模型应用为上游产品,提供全链路数字化解决方案。
✨杭州奥零数据科技官网:www.aolingdata.com
✨Github项目:github.com/alldatacent…
✨Gitee项目:gitee.com/alldatacent…
✨AllData官方手册:www.yuque.com/aolingdata/…
✨AllData正式环境:http://43.138.156.44:5173/ui_moat
摘要:DBSwitch是款开源数据库迁移工具,支持多种主流及国产数据库间的全量与增量迁移,涵盖表结构同步与数据同步。文章内容主要为以下四部分:
一、在线演示环境
二、功能简介
三、源码编译部署安装
四、访问大模型应用开发平台页面
🔹AllData数据中台线上正式环境:http://43.138.156.44:5173/ui_moat/
请联系市场总监获取账号密码
一、数据库同步平台基于开源项目DBSwitch建设
DBSwitch是款开源数据库迁移工具,支持多种主流及国产数据库间的全量与增量迁移,涵盖表结构同步与数据同步,采用模块化设计,具备高扩展性与灵活性,可保障数据迁移与访问的高效稳定,降低企业多数据库汇聚入湖仓成本,提升系统兼容性与可扩展性。
🔹DBSwitch开源项目: gitee.com/inrgihc/dbs…
二、数据库同步平台功能特点:
- 全场景数据同步能力
- 深度表结构适配
- 智能任务调度与运维
- 国产数据库与中间件生态
- 企业级安全与扩展性
- 高性能与稳定性
三、数据库同步平台功能技术特点:
DBSwitch以“全场景同步+深度适配+智能运维”为核心,覆盖从结构化数据迁移到国产数据库生态整合的完整需求,为企业提供高效、安全、可扩展的数据同步解决方案。
DBSwitch工具提供源端数据库向目的端数据库的离线批量迁移同步功能,支持数据的全量/增量/变化量方式同步。
3.1 结构迁移
支持字段类型、主键信息、建表语句等的转换,并生成建表SQL语句;
支持基于正则表达式转换的表名与字段名映射转换。
3.2 数据同步
🔹全量迁移: 基于JDBC的分批次离线读取源端数据库数据;
并基于insert/copy方式将数据分批次写入目的数据库。
🔹增量同步: 支持指定增量标识字段的增量同步(适用于日志表等存在增量标识字段的同步场景);
支持有主键表的 变化量同步 (变化数据计算Change Data Calculate)功能(千万级以上数据量的性能尚需在生产环境验证)。
🔹定时调度: 内置 CronJob 定时任务引擎,支持手动触发或自动化调度,满足周期性数据同步场景。
3.3 多数据库支持: 覆盖RDBMS/Olap数据库:MySQL、Oracle、SQL Server、PostgreSql、DB2、Sybase、Hive、Sqlite3、ClickHouse、MongoDB、ElasticSearch、StarRocks、GreenPlum、Doris、TDEngine 等主流数据库。
支持国产数据库:达梦数据库,人大金仓数据库,神通数据库,南大通用数据库,瀚高数据库,Gauss数据库, OceanBase数据库。
🔹高效数据写入:
通过二进制协议与批量操作优化写入性能,减少网络与 I/O 开销。
🔹灵活扩展性: 模块化设计支持快速适配新数据库或定制功能,如新增方言实现或写入优化。
💡部署步骤:
一、环境准备 --跨平台兼容性保障
1.1 基础环境要求: 操作系统: 支持Linux(CentOS/Ubuntu)和Windows Server,需配置JDK 1.8+、Maven 3.6.3+(兼容JDK 17)及Git。
数据库驱动: 预置Oracle、MySQL、PostgreSQL、SQL Server等主流数据库的JDBC驱动包,商业版需集成达梦、GaussDB等国产数据库驱动。
网络配置: 开放管理端口(默认9088)及数据库连接端口,配置防火墙规则允许跨库访问。
1.2 环境优化建议:
Maven镜像加速: 修改settings.xml使用阿里云镜像,缩短依赖下载时间。
Docker容器化: 提供预构建镜像(如registry.cn-hangzhou.aliyuncs.com/inrgihc/dbswitch:1.9.7),支持快速部署测试环境。
二、源码编译部署获取安装包
三、版本管理策略
标签管理: 使用git tag标记稳定版本(如v2.0.1),避免直接基于master分支开发。
子模块集成: 若需扩展CDC(变更数据捕获)功能,可引入Debezium子模块实现实时同步。
四、编译构建 --自动化与定制化
4.1 标准编译流程:
Linux/macOS:
Windows:双击build.cmd脚本,生成target/dbswitch-release-x.x.x.tar.gz。
4.2 商业版增强构建:
Profile配置:
通过-Pcommercial参数激活企业级模块,例如
插件扩展:
集成AllData中台的自定义插件(如数据质量校验插件),在pom.xml中添加依赖:
五、部署级运行配置 --高可用与安全
5.1 解压部署:
Linux:
Windows: 解压至D:\alldata\,运行startup.cmd。
5.2 核心配置文件:
conf/config.yml(推荐YAML格式):
5.3 高可用方案:
集群部署:通过Nginx负载均衡多台DBSwitch实例,配置健康检查:
5.4 高可用部署:
集群模式:通过Nginx负载均衡(配置示例):
数据持久化:将任务调度记录存储至Redis集群,避免单点故障。
六、可选配置 --性能优化与功能扩展
6.1 数据转换规则:
字段映射:通过正则表达式转换表名/字段名,例如:
数据脱敏:集成AllData中台的脱敏算法,对敏感字段(如身份证号)进行SHA-256哈希处理。
6.2 监控与告警:
Prometheus集成: 暴露/actuator/prometheus端点,监控任务执行耗时、错误率等指标。
企业微信告警:通过Webhook推送同步失败通知,配置示例:
6.3 多租户支持:
动态数据源: 基于Spring Cloud Config实现租户级配置隔离,每个租户拥有独立的数据库连接池。
权限控制: 集成Spring Security OAuth2,按租户角色分配任务管理权限。
七、验证与调优
7.1. 功能验证 全量同步测试: 迁移10GB级MySQL表至PostgreSQL,验证数据一致性(通过CHECKSUM TABLE命令)。
增量同步测试: 模拟源库数据变更,检查目标库是否实时更新。
7.2. 性能调优 并行度调整: 修改task.parallel-threads参数(默认4)以充分利用CPU资源。
批量大小优化: 根据网络带宽调整batch-size(建议1000-5000行/批)。
1、数据库同步平台-系统概览
可一键呈现多数据库连接状态、迁移任务进度及系统资源占用等关键信息
2、数据源
支持多类型数据库接入,可便捷配置管理,保障数据稳定高效同步
3、数据源-测试
4、数据源-编辑
5、数据源-编辑-更新
6、数据源-详情
7、数据源-详情测试成功
8、数据源-创建数据源
支持多类型数据库参数配置,一键快速接入,实现高效数据交互
9、驱动配置
可灵活管理多数据库驱动,支持上传、加载与更新,保障连接稳定
10、驱动配置-添加
11、数据导航-元数据-基本信息
可直观展示表结构、字段等核心信息,助力数据管理
12、数据导航-元数据-字段信息
数据导航的元数据字段信息功能,能清晰呈现字段名称、类型、长度等详情,辅助精准掌握数据特征
13、数据导航-元数据-索引信息
可快速检索不同数据源的索引详情,展示索引结构、关联字段等关键信息,助力高效管理数据索引,优化数据查询性能
14、数据导航-元数据-取样信息
可按需抽取数据样本,展示字段值分布等关键信息,辅助用户快速了解数据特征与质量情况
15、数据导航-SQL在线
SQL在线功能支持多数据源的SQL查询与执行,提供语法高亮、自动补全及结果可视化展示,助力用户高效完成数据探索与分析任务
16、任务管理
支持多类型数据库同步任务的创建、配置与调度,提供任务状态监控、执行日志查看及异常告警,助力用户高效管理数据同步流程,保障数据迁移的稳定性和可靠性
17、任务管理-日志
18、任务管理-启动
19、任务管理-执行成功
20、任务管理-详情
21、任务管理-创建任务-基本信息配置
22、任务管理-创建任务-同步源端配置
23、任务管理-创建任务-目标端配置
24、支持切换同步模式,同步表结构/表+数据/仅数据同步
25、任务管理-创建任务-映射转换配置
26、任务管理-创建任务-配置确认提交
27、监控调度
可实时监控数据源连接状态与任务执行情况,支持定时调度与依赖调度,确保数据同步任务按计划稳定运行,并提供异常告警与日志记录,助力高效运维
28、监控调度-查看日志详情
29、操作日志
操作日志功能可完整记录数据同步任务执行过程中的关键操作,包括任务启动、停止、异常等状态变更,助力用户实时监控任务进度,快速定位并解决潜在问题