暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

Oracle GoldenGate:数据复制的“黄金通道”到底有多厉害?

点击上方蓝字,关注我们


想学会更多实用技巧,欢迎加入青学会MOP技术社区(实名社区)。

加入方法:公众号后台回复关键字“加入”获取小助手微信,添加后登记入会。

同时欢迎大家在评论区留言互动交流!社区会不定期举行相关的抽奖、公开分享活动。

如果你有想了解的知识点希望我们发文可以后台私信。

最近联合几个 Oracle ACE技术专家 开通了一个付费微信群,都是具有10多年金融、医疗、制造业10年以上的一线专家,坑位费399/人,无限期,目前群内近165。加群后会有一些福利(分享各类技术文档,干货资源,问题解答等等),更有特邀嘉宾会定期在群内直播,解读AWR,快问快答等!有问题我们尽量都解答,毕竟399不能都解决所有问题。有兴趣联系微:ywu0613

内部知识库正在筹建中,不止有oracle!


正文开始

在现代企业中,数据的实时性、可靠性和可用性变得越来越重要。无论是银行系统需要实时同步交易数据,还是电商平台需要确保订单信息在多个数据库间一致,数据的快速流动都成了核心需求。而 Oracle GoldenGate(以下简称 GoldenGate)正是解决这类问题的一把“利器”。今天,我们就来聊聊 GoldenGate 的历史、它的工作模式与技术实现,以及它的应用场景和优点,带你全面了解这个数据复制领域的“黄金通道”。


GoldenGate 的历史:从初创到 Oracle 家族

GoldenGate 的故事要从 20 世纪 90 年代说起。它最初由一家名为 GoldenGate Software 的公司开发,诞生于 1992 年,总部位于美国旧金山。这家公司专注于解决金融行业中数据同步的难题。当时,很多银行和金融机构需要将交易数据从一个系统快速复制到另一个系统,以确保业务连续性和灾难恢复。GoldenGate Software 抓住了这个需求,推出了一种高效、灵活的数据复制工具。

早期的 GoldenGate 主要服务于异构环境,也就是说,它可以在不同的数据库和操作系统之间进行数据同步。比如,从 IBM 的 DB2 到 Oracle 数据库,或者从 Windows 到 Unix 系统,这种跨平台的特性让它迅速在市场上站稳了脚跟。随着时间的推移,GoldenGate 的功能不断扩展,从简单的单向复制发展到支持双向同步、实时数据集成等高级功能。

2009 年是一个转折点,Oracle 公司收购了 GoldenGate Software,将其纳入自己的产品体系。Oracle 看中的正是 GoldenGate 在数据复制和集成领域的强大能力。自此之后,GoldenGate 被深度整合到 Oracle 生态中,不仅支持 Oracle 数据库,还扩展到其他主流数据库(如 MySQL、SQL Server)和大数据平台(如 Hadoop、Kafka)。如今,GoldenGate 已经成为企业级数据解决方案中的重要一员。




GoldenGate 的模式与技术实现:它是怎么工作的?

GoldenGate 的核心功能是数据复制,但它并不是简单地把数据从 A 点搬到 B 点。它的工作模式和技术实现充满了“智慧”,让我们一步步拆解。

工作模式

GoldenGate 的架构主要由几个关键组件组成:Extract(提取)、Pump(传输)、Replicat(应用)。这些组件分工明确,像流水线一样协作完成数据复制任务。

  • Extract(提取):这是数据的“侦察兵”。它运行在源数据库上,实时监控数据库的事务日志(比如 Oracle 的 Redo Log),捕获数据的变化,比如插入、更新、删除操作。Extract 会把这些变化提取出来,生成一种叫做“Trail 文件”的中间文件。
  • Pump(传输):Pump 就像“快递员”,负责把 Extract 生成的 Trail 文件从源端传输到目标端。它确保数据在网络中安全、快速地流动。
  • Replicat(应用):这是数据的“搬运工”。Replicat 读取目标端的 Trail 文件,把数据变化应用到目标数据库中,完成同步。

根据业务需求,GoldenGate 支持多种复制模式:

  • 单向复制:数据从源端到目标端单向流动,常用于数据备份或报表系统。
  • 双向复制:源端和目标端互相同步,适合需要高可用性的场景。
  • 多对一/一对多:多个源端同步到一个目标端,或者一个源端分发到多个目标端,灵活性很强。


2. 技术实现

GoldenGate 的技术核心在于“日志捕获”和“实时性”。它通过读取数据库的事务日志来捕获数据变化,而不是直接查询数据库表。这种方式有几个优点:

  • 低侵入性:不需要修改源数据库的结构,对业务系统几乎无影响。
  • 实时性:日志是数据库变化的第一手记录,GoldenGate 能做到毫秒级的延迟。
  • 异构支持:日志捕获是通用的,不管是 Oracle、MySQL 还是其他数据库,GoldenGate 都能适配。

此外,GoldenGate 使用了一种“检查点(Checkpoint)”机制,确保数据在传输过程中不会丢失。如果网络中断,系统会从上一个检查点继续,而不是从头开始。这种可靠性让它在企业级应用中备受信赖。


三、GoldenGate 的应用场景与优点

GoldenGate 的功能强大,应用场景非常广泛。以下是一些常见的例子,以及它带来的优点。

应用场景

  • 实时数据同步:比如,银行需要将核心系统的交易数据实时同步到分析系统,用于风险监控。GoldenGate 可以做到近乎实时的复制,延迟通常在秒级甚至毫秒级。
  • 高可用性与灾难恢复:企业可以在主数据库之外维护一个实时同步的备用数据库。如果主数据库宕机,备用数据库可以立即接管,确保业务不中断。
  • 数据迁移:当企业需要将数据从旧系统迁移到新系统(比如从本地 Oracle 到云端的 ADW),GoldenGate 可以在不停机的情况下完成迁移。
  • 大数据集成:GoldenGate 支持将数据流式传输到 Kafka、Hadoop 等平台,帮助企业构建实时数据仓库。



优点

  • 实时性强:相比传统的批量 ETL(抽取-转换-加载)工具,GoldenGate 的日志捕获技术让数据同步几乎无延迟。
  • 灵活性高:支持异构环境,无论是不同的数据库还是操作系统,都能无缝衔接。
  • 可靠性好:检查点机制和错误处理能力,确保数据一致性和传输的稳定性。
  • 零停机:无论是同步还是迁移,GoldenGate 都能在业务运行时完成,不影响用户体验。

举个例子,假设一家电商平台有多个数据中心,分别位于北京、上海和广州。用户在上海下单后,订单数据需要实时同步到其他两个数据中心。如果用传统方法,可能需要每隔几分钟批量同步一次,容易造成数据延迟。而有了 GoldenGate,订单数据几乎是“瞬移”到其他数据中心,用户体验大大提升。


GoldenGate 的未来与总结

随着云计算和大数据的兴起,GoldenGate 的作用越来越重要。Oracle 也在不断升级它,比如支持更多的云服务(AWS、Azure)、优化性能、增强安全性。可以预见,未来 GoldenGate 将在分布式系统和微服务架构中扮演更关键的角色。

总的来说,GoldenGate 从一家初创公司的产品,发展到今天的企业级数据复制解决方案,靠的是它的技术创新和实用性。它就像一条“黄金通道”,连接了数据的起点和终点,让企业在数字化时代跑得更快、更稳。如果你对数据同步、高可用性或者云迁移感兴趣,不妨深入了解一下 GoldenGate,也许它正是你需要的“秘密武器”。

如果您想进一步深入学习GoldenGate的知识并掌握最新的动态,来老曹的星球吧






END

往期文章回顾

MOP社区新闻

  青学会MOP技术社区成立了!

  青学会专家顾问团成员介绍

金仓专栏

  告别繁琐!KingbaseES v9数据库一键安装-青学会&金仓专栏(1)

  KingbaseES v9数据库Docker安装-青学会&金仓专栏(2)

  KingbaseES数据脱敏-青学会&金仓专栏(3)

  KingbaseES后台服务管理-青学会&金仓专栏(4)

  电科金仓KES日常运维命令集锦-青学会&金仓专栏(5)

DBA实战小技巧

  推荐一款超实用的openGauss数据库安装工具!

  实战:记一次RAC故障排查
  DBA实战运维小技巧安装篇(一)Oracle 主流版本不同架构下的静默安装指南
  DBA实战运维小技巧存储篇(一)根目录满了如何处理
  DBA实战运维小技巧存储篇(二)打包迁移单机数据库至新存储

MOP社区投稿-内核开发

  浅谈 PostgreSQL GUC 模块原理

  简单解析 IvorySQL 增强 Oracle xml 兼容能力的原理

  简单讨论 PostgreSQL C语言拓展函数返回数据表的方式

  简单分析 pg_config 程序的作用与原理
  Redis 日志机制简介(一):SlowLog
  Redis 日志机制简介(二):AOF 日志
  Redis 日志机制简介(三):RDB 日志
  pg_cron插件使用介绍
  Redis 的指令表实现机制简介
  pg几款源码工具介绍
  Redis 事务功能简介

MOP顾问说

   MOP顾问说:MOP 三种主流数据库常用 SQL(一)

  MOP顾问说: 服务器内存

  MOP 顾问说:Linux Nice 值与 CPU 优先级揭秘


文章转载自青年数据库学习互助会,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论