关于Change Data Capture(一)

关于Change Data Capture(一)

一、概述

CDC(Change Data Capture)是oracle在数据库级别实现的增量抽取解决方案。在一般的ETL过程中,对于增量抽取,无非是在数据上加时间截,全记录比对,关键字段比对,日志分析抽取等几种方法,要么需要修改原表结构,要么需要大量的算法,要么借助第三方的工具实现。Oracle从9i开始引入的CDC特性,使得有机会在数据库层面上直接实现增量抽取功能,在性能方面由于和数据库引擎的直接集成,比第三方工具应该具有一定的优势。

CDC有两个模式:同步和异步。两种模式的实现机制是截然不同的。同步CDC主要是采用触发器记录新增数据,基本能够做到实时增量抽取。而异步CDC则是通过分析已经commit的日志记录来得到增量数据信息,有一定的时间延迟,并且提供了到Oracle Streams的接口。同步CDC在企业版或者标准版中都可以使用,异步CDC则只包含在企业版中。注意CDC在9i和10g中有了比较大的改变,异步CDC主要采用了和Streams相同的技术。

CDC中将系统分为两个角色:发布者和订阅者。发布者主要负责捕获增量数据,订阅者则将增量数据传递给实际应用。这些任务都可以通过oracle提供的PL/SQL包实现。
[继续阅读全文]

Cognos DecisionStream简介(一)

decisionsteam.JPG

DecisionStream是Cognos公司出品的一款ETL工具,完全采用多维模型的思想设计,非常适合用多维数据仓库的数据抽取,转换和装载过程。主要包括两个组件:DecisionStream EngineDecisionStream Designer。前者是运行引擎,后者则是设计工具。

比起其他两款比较著名的ETL工具:Informatica和DataStage,DecisionStream要简单得多。软件自身带了一些示例数据和一个Step by Step的教程(Discoving DecisionStream)。如果对多维模型的概念比较熟悉,那么安装完后按照教程操作一遍,很快就能上手。

[继续阅读全文]