Oracle GoldenGate技术培训(公司内部培训)_第1页
Oracle GoldenGate技术培训(公司内部培训)_第2页
Oracle GoldenGate技术培训(公司内部培训)_第3页
Oracle GoldenGate技术培训(公司内部培训)_第4页
Oracle GoldenGate技术培训(公司内部培训)_第5页
已阅读5页,还剩112页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

OracleGoldenGate技术交流,XX公司技术沙龙第二期XXX2017年3月,OracleGoldenGate介绍,前GoldenGate公司简介,创建于1995年,总部在美国旧金山。数据复制领域的专业公司。全球超过4,000个安装许可,分布在政府、银行、制造、传媒、电信、证券、医疗和零售等各大行业,其中有多个全球财富500强企业。Oracle、IBM、HP、Microsoft、Sybase、Teradata等著名企业建立了紧密合作关系。中科领新信息技术有限公司是GoldenGate公司中国区总代理和技术支持中心。2009年被Oracle收购。,GoldenGate是什么?,OracleGoldenGate提供异构环境间事务数据的实时、低影响的捕获、路由、转换和交付实时数据整合市场的领导者GoldenGate给Oracle的数据整合方案带来了在异构平台的快速的,可扩展的,实时数据整合能力GoldenGate为应用或数据库的提供了在线升级,迁移的能力,GoldenGate产品组件,ManagementPackforOracleGoldenGate需要安装OracleWeblogic标准版,需要购买相关的License,GoldenGateTDM介绍,GoldenGateTDM是基于日志的实时CDC软件平台,提供异构环境下大量交易数据的实时捕捉、变换和投递,同时保持亚秒一级的数据延迟。基于GoldenGateTDM,我们提供高可用/容灾和实时数据集成的解决方案。GoldenGateTDM采用高内聚低耦合的结构,能够支持多种拓扑结构,包括一对一,一对多,多对一,多对多,层叠和双向复制。,CDC:ChangeDataCapture,就是我们通常提到的变化数据捕获,GoldenGate工作原理,交易数据管理TransactionalDataManagement(TDM),GoldenGate提供异构环境下交易数据的实时捕捉、变换、投递,主要是支持异构数据库环境下的变化数据同步。,GoldenGate变化数据捕捉的优势,针对SQLSERVER,DB2都提供基于日志的CDC直接从数据库日志中通过自己的专有程序抽取数据。支持在备份系统上抓取变化数据。对一些数据类型如LONG,XML,BLOB都提供了支持。,基于日志的实时数据复制,亚秒级复制不依赖源数据库的触发器和规则,对源数据库影响小。,OGG在数据传输方面的优势,OGG有很好的机制来保证传输的交易一致性和断点续传。事务完整性-事务级粒度只复制成功提交的事务防止源和目标的不一致性,OracleGoldenGate架构,OracleGoldenGate架构,OracleGoldenGate架构,OracleGoldenGate架构,OracleGoldenGate架构的优势,GoldenGate的工作特点,实时数据复制支持异构环境可靠性:断点续传,不影响系统连续运行。高性能,对生产系统影响小事务完整性整合:ETLtools,MessageService灵活拓扑结构复制冲突检测和解决事件标记基础架构(Eventmarkerinfrastructure)路由和压缩:TCP/IP,LAN,WAN加密:128-位,SSL自定义延时应用修改根据事务大小和数量自动管理内存,事务完整性-事务级粒度,只复制成功提交的事务防止源和目标的不一致性,GoldenGate支持异构环境任意组合,GoldenGate10.4支持的主流数据库版本,Oracle8i(DMLonly)Oracle9.1and9.2(DMLandDDL)Oracle10.1and10.2(DMLandDDL)Oracle11g(DMLandDDL)DB2UDB8.xand9.5onWindowsandUNIXDB2UDBforOS/390andz/OS7.1(untilIBMendofservicedate)DB2UDBforz/OSVersion8.1and9.1SQLServer2000and2005onMS-supportedOSasasourceortarget.SQLServer2008onMS-supportedOSasatargetonly.Sybase12.5.4and15ASEMySQLversions4.0and4.1,GoldenGate架构中关键的技术,分布式松散耦合的进程架构初始化装载时不影响数据库使用可以在异构平台之间进行数据初始化装载可扩展性:变化数据捕获API(VAM)客户化定制:UserExits,SQLcallouts,Macros异步的数据变化传输只传输提交的数据DML,Metadata,DDL统一的Trail文件格式在异构平台之间交换数据可以设定数据转换规则,设置数据和操作过滤条件(table,row,column)基于的事务的批量操作,GoldenGate架构中关键的技术-续,归档和审计功能Trail文件备份审计保存所有变化(Insertallrecords)数据冲突的检测和解决机制:用于双向数据传输(双活)的系统在目标数据库延迟应用目标端的数据基于事件驱动的基本架构e.g.,自动的主备机切换进程的自动定位支持动态回滚和基于时间点的数据恢复支持并行操作批量数据抽取和批量数据入库恢复,GoldenGate的核心竞争点,Active-Active避免了资源浪费,提高系统利用率即时接管在线迁移基于事务日志的数据抽取处理量大,负载小过滤配置并行可靠的数据传输Checkpoint机制,以便于发生错误时恢复基于TCP/IP网络,对网络连接要求低强大的异构支持无需停机的数据比较方案图形化的集中管理,OracleGoldenGate使用场景,很多客户需要连续的实时数据降低IT系统的成本赢得业务系统运行的效率,数据复制的拓扑结构,OracleGoldenGate用例满足实时数据需求的企业级解决方案,降低成本降低风险实现卓越的运营,GoldenGate解决方案,高可用性:容灾与应急备份,实现:快速恢复和切换最小化数据损失重新同步主备两端数据用途:在非计划性停机时保持业务连续,高可用性:减少计划内停机,实现:保障业务零或者近似零停机滚动升级降低业务中断带来的损失用途:保障系统/应用/数据库在升级、移植和维护期间业务的可用性,高可用性:双业务中心(Active-Active),实现:负载均衡,提高系统整体性能连续可用,快速的容灾接管冲突检测和处理,数据仓库实时供给(和ODI结合使用),实现:数据仓库数据实时得到更新对源系统低影响用途:提升商务智能和信息分析能力实时可用的数据仓库,实时报表,实现:将实时报表从主系统剥离,可根据客户需求定制显著提高主系统性能用途:实时报表提高系统性能和可用性,OGG与Oracle其他数据复制产品,OGG在oracle数据复制产品中的定位,Lantency延迟Transformation转换,OracleActiveDataGuard(ADG),OracleGoldenGate,OracleDataIntegrator,GoldenGate与Streams的比较,OracleStreams,Oracle从9i开始推出streams,用于提供灵活的复制和容灾解决方案。但是9i的streams配置相当的麻烦,少说也有十几个步骤,还容易出错。10gR2则将整个配置过程封装在几个简单的PL/SQL过程中,使得配置过程大大的简化。但是实际的配置步骤还是一样的,Oracle只是利用这些PL/SQL过程先生成对应的脚本,然后再执行脚本进行配置。这个过程可以全自动完成,也可以先将脚本生成到某个指定的目录,我们根据需要修改脚本,然后再执行脚本进行配置,这样就灵活又方便。Streams的原理其实很简单,通过logmnr技术从oracle的log中解析出数据,然后传递到目标库并应用,从而将源库的数据复制到目标库。当然,复制可以是双向的,也可以是单向的。双向复制还需要考虑数据冲突的问题。而多源复制其实是双向复制的基础上衍生而来的。,OracleStreams,整个的复制过程可以分成三个步骤:捕获(capture),传播(propagation)和应用(apply),利用高级队列(advancequeue)来将这三个步骤的数据串起来,通过在步骤中定义不同的规则(rule)来控制需要复制的数据。复制可以基于全库,基于表空间,基于用户或者基于表,提供了相当大的灵活性。捕获进程可以直接在源库捕获日志,也可以先将日志(归档日志或者联机日志)传递另外的库中进行捕获,这就是本地捕获(localcapture)和异地捕获(downstreamcapture)。对于异地捕获,根据是传递归档日志还是联机日志,可以分为普通的异地捕获和实时异地捕获。日志的传递其实和DataGuard中是一样的机制。Oracle11g的streams还提供了同步捕获。,Oracle数据集成平台,OracleEnterpriseDataQuality,OracleMetadataManagement,相关产品网站快速链接,OracleADG主页面,OracleGoldenGate实施架构,OracleGoldenGate实施步骤,实施流程,OracleGoldenGate项目实施大致流程检查操作系统和数据库是否满足OracleGoldenGate要求配置数据库及要复制的表,使其满足OracleGoldenGate要求启动OracleGoldenGateExtract进程捕获增量数据获取和记录数据库SCN,使用数据库工具完成到目标数据库的数据初始加载启动OracleGoldenGateReplicat进程,从记录的SCN号起开始同步增量数据,Step1.PreparetheEnvironment(准备环境),Step1.PreparetheEnvironment(准备环境),Setupeachsystem:InstallOracleGoldenGatesoftwareonsourceandtarget(安装软件)ConfigureandstartGoldenGateManageronsourceandtarget(配置并启动ogg管理器)Ifheterogeneoussource/target,generatesourcedefinitionsandcopytotarget(如果异构,生成源端定义并复制到目标端)Preparethedatabase.Forexample:EnsuredatabaseaccessbyGoldenGate(确保数据库可被ogg访问)Enabletransactionlogging(启用事务日志),准备工作,OracleGoldenGate检查操作系统及数据库如果操作系统是AIX5.3,须确保xlC/C+的版本是9.0或者以上.如果源数据库的版本是9iR1或者9iR2,确保参数_log_parallelism或者log_parallelism的值为1.确认源数据库处于归档模式,可用命令archiveloglist查看.确认源数据库undo_retention的值足够大,undotablespace的空间足够多.确认源及目标数据库的open_cursors值足够大.检查源库redolog的Thread数目.支持DDL:如果数据库的版本是10gR1,将_recyclebin设置为false;如果数据库的版本是10gR2或者以上,将recyclebin设置为off.,准备工作,OracleGoldenGate数据库及表的设置在源和目标数据库为OracleGoldenGate创建数据库用户:createusergoldengateidentifiedbyoracledefaulttablespaceuserstemporarytablespacetemp;grantdba,connect,resourcetogoldengate;打开源数据库的supplementallog开关:alterdatabaseaddsupplementallogdata;altersystemswitchlogfile;altersystemarchivelogcurrent;在源端,对于要复制的表(样例):ggscidbloginuseridgoldengate,passwordoracleaddtrandatadbaccadm.dconmsg如果复制表没有主键也没有唯一索引,且字段数目超过32个,则需要手动将表所有的字段都加入supplementallog.在目标端,disable复制表的触发器及cascadeconstraints.,准备环境:安装-GoldenGate目录,Step2.ChangeCapture(变化捕获),ChangeCapture-ExtractOverview,Extractcanbeconfiguredto:Capturechangeddatafromdatabaselogs(根据数据库日志捕获变化的数据)Distributedatafromlocaltrailstoremotesystems(datapump)(根据本地trail文件把数据分发到远程主机)Capturedatadirectlyfromsourcetablesforinitialdataload(直接从源端数据库表中捕获数据),捕获增量,OracleGoldenGate捕获增量在数据初始化之前,在源端启动Extract来捕获增量数据AddextractThreads:将Threads设置为当前数据库真实的redologThread数目,不论其是否是RAC环境.,Step3.InitialLoad,初始化,OracleGoldenGate数据初始化(SCN的意义)数据初始化手段:EXP/IMPDATAPUMPTransportableTablespace(TTS)RMAN以上方法均可以指定SCN以上方法均可以不中断业务系统,初始化,Step4.ChangeDelivery(变化交付),ChangeDelivery-ReplicatOverview,Replicatcan:ReaddataoutofGoldenGatetrails(从trail文件中读取数据)Performdatafiltering(执行数据过滤)Table,row,operationPerformdatatransformation(执行数据转换)Performdatabaseoperationsjustasyourapplicationperformedthem(执行数据库操作,以应用程序的执行模式),加载,OracleGoldenGateDataPump和ReplicatOracleGoldenGateDataPump进程也是一个Extract进程.DataPump将Trail文件送到远端(远端可以不是目标端)由于DataPump的任务较轻,从性能的角度出发,可以考虑在DataPump这一侧做过滤和转换Replicat:使用startreplicat.,afterscn.可以对同一个Trailfile启用多个Replicat,但最好别超过四个.,数据初始化(10G)同构,数据初始化(10G)异构,各模块介绍,各模块结构,Extract(Capture)Extract的两个功能,Extract(Capture)DB变更信息的获取(1),Extract(Capture)DB变更信息的获取(2),Extract(Capture)双向复制,双向复制场合的注意事项为避免重复应用、应设置不捕获GoldenGate(Replicat)的SQL语句通过Extract(Capture)的参数可指定GETAPPLOPS/IGNOREAPPLOPS指定捕获/忽略Replicat以外的更新数据库进程的动作GETREPLICATES/IGNOREREPLICATES指定捕获/忽略Replicat对数据库的更新动作,各组件的结构,Collector变更信息的收发,DataPump变更信息的发送(两种方式),方式:另外起动发送专用的Extract(即DataPump)先保存到本地的Trail文件然后发送方式:一个Extract兼Capture和DataPump之职从REDO日志取得信息然后直接向远端发送,DataPump多个目标发送(两种方式),各部件的结构,ReplicatReplicat的功能,Replicat的功能从Trail文件生成SQL语句在目标DB执行以变更的行为单位生成SQL语句、执行基于主键(或唯一键)和变更前的值(可选)更新(主键或唯一键的值是在源端通过附加日志方式从日志中获得),各部件结构,ManagerGoldenGate整体的监控/管理,Manager的作用Trail文件的管理Trail文件的生成/删除进程的监控/管理定期监控进程进程的启动/停止、再启动GoldenGate整体的监控/报表执行用户的命令,ManagerGoldenGate整体的监控/管理,Manager与各部件之间通信UIManager:TCP/IPExtract/ReplicatManager(本地):共享内存各进程状况(如处理完的检查点等等)都保存在共享内存,Manager查询后产生相关报表Extract(DataPump)Manager(远端):TCP/IP,OracleGoldenGateCapture,OracleGoldenGateDelivery,Filter/MapMAPscott.empTARGETjames.empFILTER(ONUPDATE,COMPUTE(sal*100)100000);数据变换:可以对列进行映射和列值的变换数据变换可以利用GoldenGate的函数和宏例:MAPhr.contact,TARGEThr.phone,COLMAP(USEDEFAULTS,name=cust_name,phone_number=STRCAT(“(”,area_code,“)”,ph_prefix,“-”,ph_number);注意:不支持多字节的列名或文字串作为条件,函数,主要函数条件判断函数IF,CASE,EVAL,VALONEOF等例:FILTER(IF(sal100,sal,0)100);文字列/数値操作函数COMPUTE,STRCAT,STRCMP,STRLEN,STRFIND等注意:不支持对多字节文字列进行操作例:FILTER(STRLEN(ename)40);日期函数DATE,DATENOW等例:FILTER(hiredateDATENOW);,GoldenGateVeridata,什么是GoldenGateVeridata?,“GoldenGateVeridata是一个快速、低影响的数据比较解决方案,它用于鉴别和报告两个数据库之间的数据差异,而不需要中断这些系统或他们的业务流程支持.”,为什么需要Veridata?,数据之间的差距是现实存在的用户错误-输入错误-无意识的使用-恶意的企图基础架构错误-系统故障-磁盘损坏-网络故障移植确认-数据库升级-数据库移植-操作系统升级-应用升级实时数据集成验证-数据仓库-查询分载-营销数据库应用错误-逻辑故障-升级失败-潜在缺陷配置错误-应用-复制-网络,Veridata数据库比较工具,支持异构数据库生成直观

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论