OceanBase 分布式数据库的 ETL 实践:从抽取到实时分析

如果企业一直使用的传统关系数据库,正考虑迁移至 OceanBase,那么以下几个问题你一定无法回避:两种数据库在语法、数据类型甚至事务实现上存在诸多差异,如何确保数据精准无误地迁移?面对海量历史数据,如何设计迁移方案才能将对业务的影响降至最低?在国产化改造的大背景下,选择一个可靠的 ETL 工具,不仅仅是完成数据的“搬运”,更是要解决从生态到架构的“水土不服”。而 ETLCloud 作为一款零代码、高可视化的数据集成平台,让数据同步过程变得异常简单。接下来本文会演示使用 ETLCloud 从源端 PostgreSql 数据库将数据离线全量同步到 OceanBase,也会演示如果通过 ETLCloud 的监听器监听增量数据进行实时的同步。
一、数据源连接
来到平台首页,进入数据源管理模块。
要创建一个 OceanBase 的数据源连接,由于每个数据源连接都要指定一个分类,默认的分类都是按照数据库类型定义的,没有 OceanBase 的分类,可以手动创建一个 OceanBase 的分类。
点击新建数据源按钮创建新的数据源连接。
OceanBase 的官方文档可以看到,如果是基于 MySql 模式的 OceanBase 可以使用 MySql 的 jdbc 驱动包去进行连接,如果是基于 Oracle 模式的需要手动去下载官方驱动包放到 tomcat\webapps\ROOT\WEB-INF\lib 下重启 tomcat 才能被识别。
接下来配置 PostgreSql 的数据源。
系统自带了 PostgreSql 的分类,直接创建数据源连接。
PostgreSql 数据源的具体配置:
到这里,ETLCloud 已经打通了源端和目标端的数据库配置,接下来配置数据同步流程。
二、离线全量数据同步
根据弹窗提示创建一个新的数据流程。
进入流程设计页配置流程组件。
库表输入配置:
库表输出配置:
配置好流程后,在上方的工具栏里面,找到运行按钮并点击。
流程成功运行。
三、实时增量数据同步
来到首页,进入实时数据集成模块,创建数据库监听器。
修改源端数据
查看目标表
查看监听器记录
删除数据:
四、最后
以上便是通过 ETLCloud 打通 PostgreSql 与 OceanBase 数据库的流程,通过 ETLCloud 平台,企业能够以 零代码 的方式,高效、简单地完成从传统数据库到 OceanBase 分布式数据库的数据迁移和实时同步。该实践不仅解决了数据“搬运”问题,更重要的是通过可视化的操作,降低了技术门槛,为数据库国产化改造和分布式架构升级提供了可靠、平滑的数据流通方案。







评论