变化数据捕捉技术有两个典型的应用场景X面向批处理的CDC
?
pull CDC?和面向实时的CDC?
push CDC?
1.面向批处理的CDC
在这种场景中YETL工具周期性地请求变化Y每次都接收批量数据Y
这些批量数据是在上次请求和这次请求之间所捕捉到的变化变化
分发请求可以采取不同的频度Y比如一天两次或每隔15分钟1次。
对于许多组织而言Y提供变化数据的一种比较好的方式是以数据表的记
录的形式表示这种方式可以使ETL工具通过标准接口?比如ODBC?的
方式无缝地访问变化数据CDC则需要维护上次变化分发的位置和分发
新的变化
这种应用场景和传统的ETL很相似Y不同的是Ypull CDC只需要转移变化
的数据Y并不需要转移所有的数据Y这就极大地减少了资源消耗Y也消
除了传统ETL过程的宕机时间。
面向批处理的CDC技术简单Y很容易实现Y因为它和传统的ETL很相似Y
并且使用现有的技术当企业对时间延迟以分钟或小时来进行衡量时Y
采取这种方式比较可行。
这种场景满足零延迟的要求Y变化分发机制一旦探测到变化Y就把变化
push给ETL程序Y这通常是通过可靠的传输机制来实现的Y比如事件分发
机制和消息中间件?如MQ Series?
虽然面向消息和面向事件的集成方法在EAI产品中更为常见Y但现在Y已
经有很多ETL工具厂商在他们的解决方案中提供这种功能Y以满足高端
实时的商务应用需求当BI应用需要零延迟和最新的数据时Y这种实时的
数据集成方法就是必须的。
很显然YCDC技术提供了诸多好处Y但也有几个值得思考的问题Y具体如
下X
?
1?变化捕捉方法读取数据库的日志文件使用数据库触发器数据比
较和在企业程序内编写定制的事件通知
?
2?对操作型系统的入侵程度对系统造成影响由高到低源代码入侵进
程内或地址空间入侵?数据库触发器?不影响应用的操作型数据源?使
本小章还未完,请点击下一页继续阅读后面精彩内容!
用数据库日志?。
捕捉延迟选择CDC解决方案时最主要的考虑因素实时程度越高Y
入侵程度越高
?
4?过滤和排序服务过滤保证只有需要的变化才被分发]排序定义了变
化被分发的顺序