在现代企业中,数据是至关重要的资产,确保数据在不同数据库间的实时同步变得尤为重要。Oracle数据库作为业界领先的数据库管理系统,提供了多种技术方案用于实现实时数据同步。本文将介绍几种常见的Oracle数据同步方案,包括使用GoldenGate、数据库触发器与自定义应用、第三方ETL工具以及LogMiner方式。
目前,比较常用的数据同步软件有 CDC(Oracle Change Data Capture 变更数据捕获)、迪思杰(DSG)、九桥软件 DDS、OGG 、Debezium、Flink CDC、阿里 dataX 等等,今天在来聊聊 OGG 基础知识(注意:以下为两年前的旧文分享)。之前也有关于 OGG 基础知识的介绍文章,感兴趣的可点此链接查看。
Best Practice for Data migration from Oracleto Tidb
Oracle GoldenGate 是一款实时访问、基于日志变化捕捉数据,并且在异构平台之间迚行数据传输的产品。GoldenGate TDM是一种基于软件的数据复制方式,它从数据库的日志解析数据的变化(数据量只有日志的四分之一左右)。GoldenGate TDM将数据变化转化为自己的格式,直接通过TCP/IP网络传输,无需依赖于数据库自身的传递方式,而且可以通过高达10:1的压缩率对数据迚行压缩,可以大大降低带宽需求。在目标端,GoldenGate TDM可以通过交易重组,分批加载等技术手段大大加快数据投递的速度和效率,降低目标系统的资源占用,可以在亚秒级实现大量数据的复制,并且目标端数据库是活动的。
GoldenGate软件是一种基于日志的结构化数据复制软件。GoldenGate 能够实现大量交易数据的实时捕捉、变换和投递,实现源数据库与目标数据库的数据同步,保持亚秒级的数据延迟。
由此可见,GoldenGate TDM的复制模式非常灵活,用户可以根据自己的需求选择特定的复制方式,并根据系统扩展对复制进行扩展。
最近在学习 Oracle 数据库的迁移与升级,用到了 OGG 这块知识,故和大家在来学习一下。之前有过两篇相关文章,感兴趣的可点下方链接查看。
Oracle GoldenGate是用于实时数据集成和复制的综合软件包。它支持高可用性解决方案,实时数据集成,事务性更改数据捕获,数据复制,转换以及运营和分析企业系统之间的验证。
说 明:源端 Oracle 数据库版本 19c, ogg 19.1 源端也可以是 11.2.0.4 db,ogg 版本 12.3.0.1.2 目标端:Kafka 版本 kafka_2.11-2.0.0(本次不涉及) ogg for bigdata 12.3.2.1.1
OGG有传统的经典架构,也有最新的微服务,2个都可以远程捕获和应用数据,对数据库服务器是0侵入,而传统的经典架构是纯命令行模式,最新的微服务架构是图形化界面操作,几乎所有操作都可以在界面进行。相关文章可以参考:
下表描述了两种Oracle GoldenGate体系结构以及何时使用每种体系结构。
今天谈下大数据平台构建中的数据采集和集成。在最早谈BI或MDM系统的时候,也涉及到数据集成交换的事情,但是一般通过ETL工具或技术就能够完全解决。而在大数据平台构建中,对于数据采集的实时性要求出现变化,对于数据采集集成的类型也出现多样性,这是整个大数据平台采集和集成出现变化的重要原因。
字段映射关系请参考: https://blog.csdn.net/weixin_34128839/article/details/91644197
提取,转换和加载(ETL)工具使组织能够跨不同的数据系统使其数据可访问,有意义且可用。通常,公司在了解尝试编码和构建内部解决方案的成本和复杂性时,首先意识到对ETL工具的需求。
基于数据库的数据复制技术大体上可分为两类:数据库自己提供的数据容灾模块和第三方厂商提供的数据库复制技术。以最常见的Oracle数据库为例,Oracle自己的数据复制技术有Data Guard,Streams,Advanced Replication和Golden Gate数据复制软件。第三方厂商的数据复制技术有Quest公司的Share Plex和DSG的RealSync等。
前面几天发布了一篇使用 OGG 21c 遇到的几个问题之后,居然在新的周一后又发现了一个与 OGG 相关的问题,那是什么问题呢?且听小哥我慢慢道来。说来也简单就是使用 OGG21c 在中间机配置好了远程捕获 EXTRACT 进程,将数据导入到目标端 19c 后,源端捕获进程有很大的延迟,按照这个延迟来看,本地的归档日志也都删除了,可这个捕获进程呢没有任何报错,延迟一直在增大。
从去年开始便一直使用的是 ogg 19c,但今年年中时候发现 Oracle 官方居然将 Linux x64 位的 ogg 下载链接下架了,不知为何无法下载到这个版本了(PS:有需要的前去我的墨天轮地址下载:https://www.modb.pro/download/761440),微服务版本也没有了,现在只能从官网看到 21c 的安装包。
ETL(Extract-Transform-Load的缩写,即数据抽取、转换、装载的过程),对于企业或行业应用来说,我们经常会遇到各种数据的处理,转换,迁移,所以了解并掌握一种etl工具的使用,必不可少。最近用kettle做数据处理比较多,所以也就介绍下这方面内容,这里先对比下几款主流的ETL工具。
先说为啥是第二版呢,这里有两个原因,一是因为第一版大概是去年这个时候写的,没有考虑到序列同步的问题,如果你的数据库使用了序列,第一版是没有配置序列实时同步的,这样就导致了迁移完成后如果不单独导入系列,业务就没法使用,所以还需要处理序列。第二个原因是因为去年写的第一版大概是因为封面图使用了 O 注册商标,还是说文章抄袭了 O 享有的著作权,被北京某德事务所投诉,微信直接删除了这篇文章并清除了我历史关键字回复功能。。。点背,没办法,我也没办法申诉,只能默默认了。下面开始正文:
有时候随着业务的需要,需要将 Oracle 的部分数据通过 Kafka 进行分析,以获取最大的数据价值。那么就需要通过 OGG 抽取数据同步到 Kafka 了,搭建过程可查看上文,今天记录下遇到的一个罕见的错误,问题是这样的,通过 OGG 同步 Oracle 11g 数据到 Kafka 的一个应用进程 rep1,运行一段时间突然异常 ABENDED,查看日志报错如下:
以oracle 11G版本为准进行解析 Data Guard Architecture Overview (Data Guard架构概述) Data Guard provides the management, monitoring, and automation software to create and maintain one or more synchronized copies of a production database to protect Oracle data from failures, disasters, human error, and data corruptions while providing high availability for mission critical applications. Data Guard is included with Oracle Database Enterprise Edition. Data Guard提供管理,监视和自动化软件,用于创建和维护生产数据库的一个或多个同步副本,以保护Oracle数据免受故障,灾难,人为错误和数据损坏,同时为关键任务应用程序提供高可用性。 Data Guard包含在Oracle数据库企业版中。 Active Data Guard Functionality Overview (Active Data Guard功能概述) Active Data Guard is an option license for Oracle Database Enterprise Edition. Active Data Guard enables advanced capabilities that that extend basic Data Guard functionality. These include:
我们通过GoldenGate技术在Oracle DB和Kafka代理之间创建集成,该技术实时发布Kafka中的CDC事件流。
作者简介 桑凯 现任职于云和恩墨,具有多年 Oracle 数据库企业级运维经验,擅长容灾项目解决方案设计,作为项目经理负责多个基于 Oracle DataGuard 和 GoldenGate 的双中心
Oracle Goldengate(以下简称OGG)是业界广泛使用的准实时数据复制软件,主要基于数据库日志进行变更数据的抽取,也就是我们常说的CDC(change data capture)的能力,Goldengate的优势主要体现支持各种异构环境下的数据复制,对生产库的影响最低(基于日志读取,非Sqoop这样直接查询数据的方式,同时可以支持remote capture)。
昨天使用GoldenGate同步数据,数据量玩得有些大了。最后发现很多小问题变得更加严峻,比如空间问题。 而且由于没有更多的经验,导致这个问题被我引入了另外一个极端。 查看目标端的空间,一个临时创建的目录一下子满了,得清理一下空间了。 [oracle@newtest ogg_10g]$ df -h Filesystem Size Used Avail Use% Mounted on /dev/sda5 9.9G 9.4G 17M 100% / 停止了目标端的replicat进程
摘要:本文由社区志愿者陈政羽整理,内容来源自阿里巴巴高级开发工程师徐榜江 (雪尽) 7 月 10 日在北京站 Flink Meetup 分享的《详解 Flink-CDC》。深入讲解了最新发布的 Flink CDC 2.0.0 版本带来的核心特性,包括:全量数据的并发读取、checkpoint、无锁读取等重大改进。
源端环境:RHEL 6.5 + Oracle 11.2.0.4 RAC + OGG 19.1.0.0.4 目标端环境:RHEL 7.6 + Oracle 19.3 + OGG 19.1.0.0.4 故障现象:源端表结构某字段数据类型长度增加,并插入对应数据,目标端因还是之前的数据类型长度,导致应用进程无法更新对应数据进而导致ABENDED,一般来说,只需目标端依据源端修改为一致的字段长度即可,但这里发现依然会ABENDED,且报错信息不变。
ps: 特别注意 spring.datasource.data.continue-on-error: true 配置
OGG有传统的经典架构,也有最新的微服务,2个都可以远程捕获和应用数据,对数据库服务器是0侵入,而传统的经典架构是纯命令行模式,最新的微服务架构是图形化界面操作,几乎所有操作都可以在界面进行。
对于基于日志复制的主备数据库来说,由于配置不当或者备库空间问题造成主数据库的日志被自动清理,造成主备数据库同步中断,对于管理人员来说,也许就是一种失责甚至灾难(如果主发生故障),同样基于日志复制的同步软件来说,存在同样的问题,日志由于各种原因被删除,造成同步数据被中断,如果有定时备份日志,无非就是延迟的问题,如果无日志,可能重新初始化,尤其对于架构复杂以及多链路的复制,修复数据也是头疼事情。
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/wzy0623/article/details/53895518
关于Oracle GoldenGate (简称OGG)的 Lag at Chkpt和Time Since Chkpt的理解,前提需要理解OGG的每个进程都有它自己的checkpoint file。每当一个进程看到在事务的commit时,检查点文件中就将产生一个检查点。OGG的恢复进程总是以检查点作为起点。而OGG是通过监控的checkpoint和Lag at Chkpt和Time Since Chkpt这2个指标来衡量数据同步延迟时效的。
摘自:ENABLE_GOLDENGATE_REPLICATION database parameter (Doc ID 1568417.1)
在这篇文章开始之前,先跟大家推荐一位 PG 大佬公众号,一直深耕 PostgreSQL 多年,混迹于各大互联网公司和各种大会,也属于数据库老司机,云计算泥石流,开源 RDS —— Pigsty 大本营,感兴趣的朋友可以关注下。
使用OGG 21.3可以远程同步Oracle 11.2.0.4的数据库,这个我之前已经测试过,参考:https://www.xmmup.com/shiyongogg-21-3yuanchengshishihuxiangtongbuoracle-11-2-0-4shuangzhu.html
摘要 通常我们要进行数据迁移,可以使用的方案有很多,比如数据泵、RMAN、GoldenGate,甚至是第三方同步软件DSG、DDS等。但是对于传统的迁移方式来说,数据量越大,需要的停机时间越长。增强版
客户需要将华为云rds for MySQL和天翼云rds for MySQL做一个双向同步,当华为云rds宕机的时候,可以切换到天翼云继续提供服务,而且此时,天翼云的数据也可以自动同步到华为云rds,平时只使用华为云的rds,和双A方案有点差异,需要注意的是rds环境不能安装任何的软件,所以,我目前想到的方案有:
作者个人研发的在高并发场景下,提供的简单、稳定、可扩展的延迟消息队列框架,具有精准的定时任务和延迟队列处理功能。自开源半年多以来,已成功为十几家中小型企业提供了精准定时调度方案,经受住了生产环境的考验。为使更多童鞋受益,现给出开源框架地址:
Oracle GoldenGate Command Interpreter for Oracle
近几年来,NoSQL运动如火如荼,不断有业内的巨头加入阵营,发布和推广NoSQL的相关产品,开拓应用场景。传统关系型数据库软件厂商也不甘寂寞,新产品、新版本、新特性不断发布,新官司、新收购也频频爆出,即使一向沉静的数据库市场,也被震出了几丝波澜。
使用 TapData,化繁为简,摆脱手动搭建、维护数据管道的诸多烦扰,轻量代替 OGG、DSG 等同步工具,「CDC + 流处理 + 数据集成」组合拳,加速仓内数据流转,帮助企业将真正具有业务价值的数据作用到实处,将“实时数仓”方法论落进现实。 TapData 持续迭代产品能力,优化用户体验的同时,也在不断探索各行各业数据需求的底层逻辑,力求为行业用户提供更加简洁、更具针对性的解题思路。本期内容便是我们在汽车制造行业做出的实践以及展望。
使用OGG中间件(框架)实时采集Oracle数据库表的数据,同步到Kafka分布式消息队列中。 OGG 是一种基于日志的结构化数据复制软件,它通过解析源数据库在线日志:online log或归档日志:archive log获得数据的增删改变化(数据量只有日志的四分之一左右);
D:\Oracle官方文档\E11882_01\install.112\e24326\toc.htm
数据准实时复制(CDC)是目前行内实时数据需求大量使用的技术,随着国产化的需求,我们也逐步考虑基于开源产品进行准实时数据同步工具的相关开发,逐步实现对商业产品的替代。本文把市面上常见的几种开源产品,Canal、Debezium、Flink CDC 从原理和适用做了对比,供大家参考。
Java 开发者常常都会想办法如何更快地编写 Java 代码,让编程变得更加轻松。目前,市面上涌现出越来越多的高效编程工具。所以,以下总结了一系列工具列表,其中包含了大多数开发人员已经使用、正在使用或将来一定会用到的高效工具。这份列表名单包括集成开发环境、集成工具、测试和质量工具等。
最近有朋友在群里面咨询oracle resetlogs后,goldengate无法继续抽取日志,如何能够继续工作.
领取专属 10元无门槛券
手把手带您无忧上云