较好的方式是以数据表的记
录的形式表示这种方式可以使ETL工具通过标准接口??0??5比如ODBC??0??6的
方式无缝地访问变化数据CDC则需要维护上次变化分发的位置和分发
新的变化
这种应用场景和传统的ETL很相似Y不同的是Ypull CDC只需要转移变化
的数据Y并不需要转移所有的数据Y这就极大地减少了资源消耗Y也消
除了传统ETL过程的宕机时间。
面向批处理的CDC技术简单Y很容易实现Y因为它和传统的ETL很相似Y
并且使用现有的技术当企业对时间延迟以分钟或小时来进行衡量时Y
采取这种方式比较可行。
这种场景满足零延迟的要求Y变化分发机制一旦探测到变化Y就把变化
ph给ETL程序Y这通常是通过可靠的传输机制来实现的Y比如事件分发
机制和消息中间件??0??5如MQ Series??0??6
虽然面向消息和面向事件的集成方法在EAI产品中更为常见Y但现在Y已
经有很多ETL工具厂商在他们的解决方案中这种功能Y以满足高端
实时的商务应用需求当BI应用需要零延迟和最新的数据时Y这种实时的
数据集成方法就是必须的。
很显然YCDC技术了诸多好处Y但也有几个值得思考的问题Y具体如
下X
??0??5
1??0??6变化捕捉方法读取数据库的日志文件使用数据库触发器数据比
较和在企业程序内编写定制的事件通知
??0??5
2??0??6对操作型系统的入侵程度对系统造成影响由高到低源代码入侵进
程内或地址空间入侵??0??5数据库触发器??0??6不影响应用的操作型数据源??0??5使
用数据库日志??0??6。
捕捉延迟选择CDC解决方案时最主要的考虑因素实时程度越高Y
入侵程度越高
??0??5
4??0??6过滤和排序服务过滤保证只有需要的变化才被分发排序定义了变
化被分发的顺序
??0??5
5??0??6支持多个消费者CDC解决方案需要支持多个消费者Y每个消费者可
能具有不同的延迟要求。
失败和恢复保证变化能够被正确分发恢复时保证变化分发数据流
从最近一次的位置开始Y且满足变化事务一致性
??0??5
7??0??6主机和遗产数据源将非关系型数据源映射成关系型数据源再进行
ETL
??0??5
8??0??6和ETL工具的无缝集成考虑不同ETL工具之间的难易程度和互联。
数据集成为分散在企业不同地方的商务数据了一个统一的视图我
们可以使用不同的技术来构建这个统一视图这个统一视图可以是一个
物理数据视图Y其中的数据来自多个分散的数据源Y并被整合存储到一
个集成的数据存储中Y比如数据仓库或者Y统一视图也可以是一个虚
拟数据视图Y其中的数据分散在多个数据源中Y而不是集中存储在一个
地方Y只有当需要使用这些数据的时候Y才临时把它们从多个数据源中
抽取出来Y并加以适当处理后Y提交给数据请求者本章内容介绍