Sqlserver 2008+:变更数据捕获(CDC) 和 更改跟踪(CT)

 

SQL Server 2008 引入了两项跟踪功能,以使应用程序能够确定对数据库中的用户表所做的 DML 更改(插入、更新和删除操作)。 在这些功能出现之前,必须在应用程序中实现自定义跟踪机制。 这些自定义机制通常要求对跟踪的表进行架构更改,或者使用触发器。 变更数据捕获和更改跟踪均不要求在源中进行任何架构更改或使用触发器。

变更数据捕获

变更数据捕获通过获取进行 DML 更改的方面和更改的实际数据,提供用户表的历史更改信息。 更改是使用异步进程捕获的,此进程读取事务日志,并且对系统造成的影响很小。

正如下图所示,对用户表所做的更改是在相应更改表中捕获的。 这些更改表提供了更改随时间变化的历史视图。 借助于 SQL Server 提供的功能,可以方便且系统地使用更改数据。

更改跟踪

更改跟踪捕获更改了表行这一事实,但不会捕获更改的数据。 这样,应用程序就可以确定使用从用户表中直接获取的最新行数据更改的行。 因此,与变更数据捕获相比,更改跟踪可以解答的历史问题比较有限。 但是,对于不需要历史信息的那些应用程序,更改跟踪产生的存储开销要小得多,因为它不需要捕获更改的数据。 它使用同步跟踪机制来跟踪更改。 此功能旨在最

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值