CDC概述文档.pptVIP

  1. 1、本文档共19页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
CDC概述文档

CDC(Change Data Capture) 增量数据抽取 (oracle在数据库级别实现的增量抽取解决方案) 1、CDC概述 CDC(Change Data Capture)是oracle在数据库级别实现的增量抽取解决方案。 在一般的ETL过程中,对于增量抽取,常用办法是在数据上加时间截,全记录比对,日志分析抽取等几种方法。这些方法要么需要修改原表结构,要么需要大量的算法,要么就要借助第三方的工具实现。 Oracle从9i开始引入了CDC特性,使得有机会在数据库上直接实现增量抽取功能,在性能方面由于和数据库引擎的直接集成,比第三方工具具有一定的优势。 1、CDC概述 CDC中将系统分为两个角色:发布者和订阅者。 发布者主要负责捕获增量数据。能决定哪些源数据库和表是订阅者关心的,以及要使用的 CDC 的模式,使用Oracle 提供的包 DBMS_CDC_PUBLISH 从源表中建立 CDC 系统通过 GRANT 和 REVOKE 这样的SQL 语句来管理订阅者访问变更表的权限 订阅者则将增量数据传递给实际应用,是已经发布的并更数据的用户。订阅者需要完成下面的任务:使用Oracle 提供的包 DBMS_CDC_SUBSCRIBE 来完成 创建订阅:通知CDC准备接收变更的数据、通知CDC 完成一组变更数据;使用 SELECT 语句从订阅者视图中抽取变化的数据。 1、CDC概述 CDC有两个模式:同步和异步。两种模式的实现机制是截然不同的。 同步CDC主要是采用触发器记录新增数据,基本能够做到实时增量抽取,同步CDC在企业版或者标准版中都可以使用。 异步CDC则是通过分析已经提交的日志记录来得到增量数据信息,有一定的时间延迟,异步CDC只包含在企业版中。 注意CDC在9i和10g中有了比较大的改变,异步CDC主要采用了和Streams相同的技术。 2、名词解析 Change Source (变更源 ) 增量数据的抽取来源,比如同步CDC模式是通过trigger直接从database中获取的,change source就是source database(源数据库)。异步CDC模式则是从日志文件中获取的,则change source则表示redo logfile(重做日志)。 2、名词解析 Change Set (变更集 ) 一组逻辑上相关的增量数据,需要保证其一致性。change set必须是某个change source的成员。对于异步分布式HotLog模式,同一个change source的所有change set必须在同一个staging database(中间数据库)中。而异步AutoLog模式中一个change source只能有一个change set。 2、名词解析 Change Table (变更表 ) 一个change table对应一个source table,用于保存source table中的增量数据。Change table中除了需要保存source table的增量数据,还有一些控制列用于保存相关的元数据。 2、名词解析 change table、 change set、 change source 三者之间的关系 change table是一个关系表,包含了源表中变化的数据。对于发布者而言,变更表就是数据发布。 change set是一组变更的数据,它们用来保证事务的一致性,包含一个或多个变更表。 change source是对源数据库的一种逻辑表示,它包括一个或多个变更集。 3、CDC模式介绍 CDC模式分为同步CDC模式和异步CDC模式。 同步模式相对简单,就是通过触发器捕获增量数据,类似于物化视图的实现机制。而异步CDC根据实现的内部机制区别,又可以分为异步HotLog模式,异步分布式HotLog模式和异步AutoLog模式。 有些模式有固定的预先定义change source,有些则没有。比如同步CDC的change source是SYNC_SOURCE,异步HotLog模式则是HOTLOG_SOURCE,这是因为这两种模式都只有一个source database。而其他的,像异步分布式Hotlog模式和异步AutoLog模式,除了source database,还需要一个staging database。 3、(1)同步CDC模式 同步CDC模式(Synchronous Mode)通过在源库上建立trigger的方式来捕获增量数据,因此可以做到实时抽取增量数据。当源库执行commit的时候,增量数据将生成在change table中。但是同步CDC模式的缺点也是明显的,由于需要在源库创建trigger,对于源库将造成不小的压力,并且change table也必须在源库中生

文档评论(0)

qwd513620855 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档