《GoldenGate及其工作原理.ppt》由会员分享,可在线阅读,更多相关《GoldenGate及其工作原理.ppt(28页珍藏版)》请在三一办公上搜索。
1、GoldenGate软件及工作原理介绍,公司目标,GoldenGate为客户提供交易数据管理(Transactional Data Management)解决方案.有效帮助客户优化数据访问性能,提高交易数据的可访问性和可用性,满足关键业务的需要,Real-Time AccesstoReal-Time Information,公司简介,历史及现状,与多家著名厂商结为战略合作伙伴,广泛的客户基础,始建于 1995,在北美、欧洲、亚太、拉丁美洲设有分公司,24x7 全球技术支持,交易数据管理Transactional Data Management,TDM提供异构环境下交易数据的实时捕捉、变换、投递
2、。,TDM 具有:实时性秒一级延迟异构环境支持在不同平台和数据库环境下复制数据以交易为单位复制维护交易一致性,特点:高性能能够以低资源消耗完成每秒数千交易的复制可扩展开放的结构使客户适应各种异构数据平台可靠保证数据的连续可用,GoldenGate支持平台,GoldenGate 解决方案,高可用性与容灾活动备份无宕机运行Active-Active 层次化企业数据,实时数据集成数据仓库实时数据供给实时报表数据整合,灾难恢复 灾难容忍 无间断运行,磁带备份 磁盘镜像 块复制 热备份 Active-Active,硬件 存储 数据库 应用,物理结构 数据 交易,批处理 即时复制 近似实时复制 实时复制,
3、脚本 ETL工具加脚本 EAI和ETL工具加脚本 GoldenGate TDM,Weeks Days Hours Minutes/SecondsSub-seconds,Real Time Threshold,高可用性,数据整合,实时性要求,为什么选择 GoldenGate TDM?,消除批处理窗口方便实现整合流程低资源占用,实时获取数据基于日志的复制对源系统影响小只捕捉数据变化降低系统负荷无需额外编程保证交易完整性和一致性可以保证在各种平台下数据的完整性和一致性,GoldenGate TDM软件技术概览,Transactional Data Management(TDM)Software Pl
4、atform,TDM 工作原理:模块化“积木”,网络,源数据库,目的数据库,队列文件:暂存数据变化.,传输:数据经过压缩和加密传送到目的地.,Capture:实时读取交易日志捕捉数据变化并可实现过滤.,Delivery:执行所需的数据变化,然后将数据变化提交到目的库.,逻辑数据复制的几个重要问题(一),数据变化来源读取在线日志或归档日志在信息不足时与数据库交互数据字典信息查询日志不足信息,例如大对象只复制提交交易如何标志记录的唯一性?Rowid逻辑复制源和目标的rowid是不一致的,除非自行为两端记录建立额外的rowid map主键实际应用中主要业务表均建立有主键唯一索引也可作为唯一标示无主键
5、表可使用全部列作为唯一标示,逻辑数据复制的几个问题(二),oracle数据库附加日志缺省状况下只记录变化记录的rowid及对应变化(前影像、后影像)为了能够在目标投递到对应的记录,需在日志中记录主键或唯一索引数据库级附加日志SUPPLEMENTAL_LOG_DATA_MIN(最小附加日志)SUPPLEMENTAL_LOG_DATA_PK/UISUPPLEMENTAL_LOG_DATA_FK/ALL(10g)表级附加日志 GoldenGate建议方式sqlplus alter table add supplemental log groupGgsci add trandata ctais2.my
6、table/自动寻找PK/UIDba_log_groups和dba_log_group_columns每个log group不能超过32列,超过需要人工分组,逻辑数据复制的几个问题(三),目标端使用附加日志还原sql根据附加日志中的主键信息构筑where条件如果没有附加日志或者没有足够的列则无法执行update和delete操作,而insert不受影响主键变化要重新添加表的附加日志无主键表则列的增删均要重新添加表的附加日志,CREATE TABLE tcustmer(cust_code VARCHAR2(4),name VARCHAR2(30),city VARCHAR2(20),state
7、CHAR(2),PRIMARY KEY(cust_code)USING INDEX);,For Record:(a,a,a,a)Update tcustmer set name=b;Oracle附加日志会记录cust_code列的值a到日志中;目标端根据cust_code=a构筑update 的sql语句;如果两端主键变为city,而没有重新添加附加日志,则目标端会根据自己的主键city建立附加日志,此时日志中没有该字段值,导致目标update失败如果修改表但没有修改主键,则附加日志不受影响,逻辑数据复制的几个问题(四),如何将数据装载到目标库?常规加载通过SQL装载直接加载通过数据块装载不利
8、用空闲存储空间不检查外键等约束装载速度较快GoldenGate采用常规加载保证数据安全和一致性有效提高性能的选项合并小交易拆分大交易批处理的加速,单向复制报表、灾备,双向复制立即接管,点对点负载均衡,高可用性及容灾,广播复制 数据分发,集中复制数据仓库,灵活的拓扑结构,多级复制层次化企业数据,Data Pumps 与一对多复制,Database Transaction Logs,ExtractProcess,ExtractProcess,ExtractProcess,ExtractProcess,GoldenGate Veridata,快速数据对比方案能够快速设别和报告在线数据的差异用途:降低
9、数据差异带来的风险简便快捷的对比无需影响业务关键特性:支持大数据量对比支持在线状态的数据对比优秀的对比效率和速度可执行选择性对比可自动执行无需人工干预灵活的报表,GoldenGate Director,能够使客户定义、配置和管理GoldenGate TDM 各节点和进程,监控运行状态优化系统管理关键特性:集中管理多个GG进程丰富的客户端和web界面提高可用性提供报警以及与第三方软件集成的接口实时获取GG进程信息对原系统无影响,典型案例,案例一:美 国 银 行,超过五千八百家分行及一万六千多部自动柜员机热 备 份 数 据 中 心 从 贯 穿 北 美 的 四 台 主 机(HP NSK)抓 取 数
10、据保 障 ATM 7X24小时可用,热 备 份 点主 数 据 中 心,客 户,客 户,客 户,客 户,双向数据复制,GoldenGate has helped the Bank of America accommodate growth.Michele Schwappach,Vice President and Senior Systems Manager,案例二:中华人民共和国海关总署,远距离容灾低带宽低延时可随时接管的双业务中心快速业务切换,案例三:国家体育总局体彩中心,N+1模式容灾各省市集中备份远距离低带宽,GoldenGate安装及其组件,系统需求,为获取高可用性,建议安装于共享阵列
11、,可以随集群软件切换到备用节点复制软件只需不到200M空间大小,考虑到需要缓存队列数据,建议保留相当于数据库归档日志量3-7天的存储空间复制软件安装目录可位于任何位置复制软件可使用现有系统用户或者建立专门系统用户,需满足一下条件该用户具有为Oracle安装用户组成员,环境变量与Oracle运行用户一致,可访问Oracle数据库其内存限制应当满足数据复制要求,可以通过ulimit a输出察看信息,具体配置在/etc/security/limits 文件中。,双机环境下的理想配置方案,正常运行状态,备机接管状态,安装步骤,Unix下的安装步骤ftp.gz file to GoldenGate安装目
12、录gzip d*.gztar xvf*.tarldd ggsci./ggsciGGSCI CREATE SUBDIRS,数据库需求,复制用户可以使用现有或者新建用户,DML复制要求权限如下:源端:CONNECT/ALTER ANY TABLE/ALTER SESSION/CREATE SESSION/FLASHBACK ANY TABLE/SELECT ANY DICTIONARY/SELECT ANY TABLE/RESOURCE“目标端在源端基础上加以下权限:INSERT ANY TABLE/DELETE ANY TABLE/UPDATE ANY TABLE;需要打开数据库级最小附加日志s
13、elect SUPPLEMENTAL_LOG_DATA_MIN from v$database;ALTER DATABASE ADD SUPPLEMENTAL LOG DATA;针对所有复制表打开表级附加日志GGSCI add trandata select*from user_log_group_columns where table_name=;超过32列无主键表需要手工添加附加日志:Alter table add supplemental log group(column,.)always;,GoldenGate组件与目录结构,基本组件Manager 管理进程,管理其它进程活动Extract 抽取进程,抽取日志(队列)获取数据变化Replicat 投递进程,向目标数据库投递数据Collector(server进程),收集由源端extract发送过来的数据Trail 队列,以通用格式存贮的数据变化Checkpoint 检查点,dirchk下,记录各进程读写的位置参数文件,dirprm下,定义各进程的相关参数文件目录参数文件目录 dirprm队列文件目录 dirdat检查点文件目录 dirchk进程文件目录 dirpcs报告文件目录 dirrpt临时目录 dirtmp其它目录,