Tapdata Cloud 场景通关系列: Oracle → MySQL 异构实时同步

【前言】作为中国的 “Fivetran/Airbyte”, Tapdata Cloud 自去年发布云版公测以来,吸引了近万名用户的注册使用。应社区用户上生产系统的要求,Tapdata Cloud 3.0 将正式推出商业版服务,提供对生产系统的 SLA 支撑。Tapdata 目前专注在实时数据同步和集成领域,核心场景包括以下几大类:

  • 实时数据库同步,如Oracle - Oracle, Oracle - MySQL, MySQL - MySQL 等
  • 数据入湖入仓,或者为现代数据平台供数,如:
    • 常规 ETL 任务(建宽表,数据清洗,脱敏等)
    • 为 Kafka/MQ/Bitsflow 供数或下推

具体场景则数不胜数,值此之际,我们将以系列文章形式,为大家盘点 Tapdata Cloud 可以支撑的业务场景,以便大家更好地在业务中应用 Tapdata,本期为系列文章第一弹。(点击申请产品内测,抢先体验 →

当前,异构数据库数据实时同步的应用场景极为常见,一方面随着数据库技术的更新换代、国产化替代,以及数据应用场景的拓展,传统数据库难以满足需求,亟待进行数据迁移与数据库升级;另一方面,历经几十年的数字化历程,企业数据孤岛越来越严重,将数据实时汇聚统一的需求也越发急迫。

传统异构数据库同步的常见实现方式主要是:1、数据库厂商本身提供的迁移/同步工具,像是 Oracle 的 OGG ;2、通过开源工具和自己编写 SQL 构建数据链路。而 Tapdata 则在这些模式之外,自研了一套完全脱离复杂执行逻辑的极简方案,并支持低代码、可视化操作。

一、Tapdata Cloud:低代码可视化实现异构数据库数据实时同步

作为一款由 Tapdata 推出的异构数据库实时复制与同步 SaaS 服务,Tapdata Cloud 在产品能力上具备以下优势:

  • 更广泛的数据源支持:支持多种常见数据库和 SaaS 数据源,在 MongoDB、MySQL、Oracle、SQL Server、DB2、Elastic、Kafka、Sybase、PostgreSQL、Redis、GaussDB、Doris 等主流及新兴的开源或商业数据库之余,还在不断扩展对包括 Gbase 8s、OceanBase、Tablestore、Kylingence 等在内的国产数据库支持;

  • 更实时:基于日志的数据库 CDC 技术,0入侵实时采集,毫秒级同步延迟,助力平滑迁移;

  • 低代码更高效:拖拽式的“零”代码配置操作,基于JS的低代码,轻松实现跨系统跨类型的数据实时同步和处理;

  • 更灵活可靠:基于云原生架构,更加弹性,更具安全保障性;

  • 更自主可控:纯国产自研,对国产数据库更友好,高度适配国产化发展需求。

二、操作演示:以 Oracle → MySQL 的数据同步任务为例

第一步:创建数据源 Oracle 连接

[【△ 查看操作详情视频】](【Tapdata Cloud 如何创建 Oracle 连接】 https://www.bilibili.com/video/BV1ue4y1W7qA/?share_source=copy_web&vd_source=525e77577f52360567a3f2398915f5ba)

第二步:创建数据目标 MySQL 连接

[【△ 查看操作详情视频】](【Tapdata Cloud 如何创建 MySQL 连接】 https://www.bilibili.com/video/BV1h3411f7Fb/?share_source=copy_web&vd_source=525e77577f52360567a3f2398915f5ba)

第三步:开启数据复制任务

[【△ 查看操作详情视频】](【Tapdata Cloud 如何开启数据复制任务】 https://www.bilibili.com/video/BV1gv4y127uK/?share_source=copy_web&vd_source=525e77577f52360567a3f2398915f5ba)

附录:操作注意事项

① 创建连接:配置时要特别留意屏幕右侧的【连接配置帮助】,确保【先决条件】所列各项,均已在服务器上得到支持。

② 源节点设置:

  • 数据读取范围可选【全表】和【自定义】:
    • 选择全表时,可手动开启【动态新增表】,任务将会自动处理新增、删除表。

  • 选择自定义时有两种方式,一是通过鼠标点击加入到选择表中,二是通过粘贴表名的形式加入。

  • 【批量读取】条数为全量同步时,可以根据服务器的压力和带宽设置每一次读取的数据条数。
  • 【DDL 事件采集】开启后将会自动同步原表结构的变化,譬如新增修改字段、修改属性以及删除字段。

③ 目标节点的【高级设置】说明:

  • 【重复处理策略】:当复制任务启动时,如果发现目标端已经存在相同表名的表时,是使用现有的表和数据还是删除重建

  • 【插入策略】:当源端插入了一条目标端已经存在的数据时,是更新目标端还是忽略该条数据

  • 【更新事件】:当源端修改了一条目标端没有的数据时,目标端是插入该数据还是忽略该数据

  • 【删除事件】:当源端删除了目标端不存在的数据时该如何操作(*MySQL 目前只支持不存在时丢弃一个策略)

  • 【全量多线程写入】:这里默认为8,可以根据服务器的性能选择合适的线程
  • 【增量多线程写入】:默认为关闭,开启时可能会存在并发写入时的重复风险,需要根据数据库的实际情况进行选择

④ 【任务设置】说明:

可设置【同步类型】:当选择【全量】时只进行一次性的复制;如果只选择【增量】,则只会将任务启动后的变更同步到目标表。

⑤ 任务的【高级设置】说明:

  • 【共享挖掘】:若有多个任务需要从源库读取数据时,为降低源库压力,开启后会将增量日志存储到中间库中(*注意:只有任务和源链接都开通时才有效)
  • 【数据校验】:开启后会对任务中所有的表数据进行校验,不一致时,可以在任务监控中查看。这里需要注意的是,当任务符合以下三种情况时,即使开启任务也不会进行校验:a) 添加了中间处理节点;b) 源连接不支持校验;c) 目标连接不支持校验

  • 【增量同步并发写入】:可以全局控制所有目标节点是否能进行多线程写入。
  • 【增量滞后判断】:时间可设置滞后时间,超过该时间才会触发增量滞后的统计。
  • 【处理器线程数】:为该代理做中间数据转换运算时使用的线程数量
  • 【增量数据处理模式】当设置为批量时,服务器性能压力较小;当设置为逐条时性能较差,但实时性更高。

⑥ 任务的保存和运行:

创建的任务都会被系统保存下来,处于【编辑中】状态。可以直接点击右上方的【启动】按钮进行配置检测和任务启动;也可以只点击【保存】按钮,只检测任务配置。如果可以启动,任务会被置为【待启动】状态。(*请注意定期清理编辑中的草稿任务)。

⑦ 画布的操作:

可以在画布上方点击撤销、重做或者删除节点、将内容居中、自动布局、框选、放大缩小、查看任务日志以及对任务进行详细的设置。

小结:
如前演示,本参考示例适用于多种异构数据库数据实时同步场景。Tapdata Cloud 3.0 数据源支持:MySQL、MariaDB、PostgreSQL、Oracle、MongoDB、IBM DB2、SQL Server、ClickHouse、Kafka、ActiveMQ、RabbitMQ、RocketMQ 等;数据目标支持:ElasticSearch、Redis、Hive1、ClickHouse、Apache Doris、Kafka、ActiveMQ、RabbitMQ、RocketMQ、Gbase 8s、OceanBase、Tablestore、Kylingence、BigQuery 等,均可按照上述操作方式,执行并完成数据迁移/实时同步任务。

三、限量内测报名中:Tapdata Cloud 3.0 抢鲜试用

全新升级的 Tapdata Cloud 3.0 拥有更加全面的链路可观测性的可视化操作界面、增强的数据复制能力,以及数据开发beta 等多重功能特性上新,现已开放内测报名通道:https://tapdata.net/tapdata-cloud/closed-beta-version.html
内测权益

将您的应用场景在最新的 Tapdata Cloud 上得到验证,帮助您解决切实的技术/业务痛点,您的内测反馈和宝贵建议,将第一时间在 Tapdata Cloud 上得到实现。

-** 使用及技术支持**:当您遇到使用问题或疑问时,将获得快速响应和支持。

  • 专享订阅折扣:新版 Tapdata Cloud 将推出收费版本,用户可获得 SLA 级服务,保障生产使用的要求。内测用户将获得优惠订购特权。
  • 成为产品共创贡献者:您将成为 Tapdata Cloud 产品的共创贡献者,内测提出的功能需求及优化建议,将有机会纳入产品路线图。

参与方式

Tapdata Cloud 3.0 已开放内测报名通道:https://tapdata.net/tapdata-cloud/closed-beta-version.html ←戳这里即可参与

原文链接:https://tapdata.net/real-time-sync-of-hdb-from-oracle-to-mysql.html

posted @ 2023-01-12 17:28  Tapdata钛铂数据  阅读(148)  评论(0编辑  收藏  举报