WEB开发网
开发学院数据库MSSQL Server SQL 2008数据仓库可扩展性 阅读

SQL 2008数据仓库可扩展性

 2008-09-28 10:06:42 来源:WEB开发网   
核心提示: 变更数据捕捉变更数据捕捉(Change Data Capture, CDC)是SQL Server2008中推出的一个新的数据跟踪功能,它主要是为数据仓库场景设计的,SQL 2008数据仓库可扩展性(8),可以有效的跟踪和获取对用户表所做的数据改动,并使你能够以一种简单的方式来访问变更数据

变更数据捕捉

变更数据捕捉(Change Data Capture, CDC)是SQL Server2008中推出的一个新的数据跟踪功能,它主要是为数据仓库场景设计的,可以有效的跟踪和获取对用户表所做的数据改动,并使你能够以一种简单的方式来访问变更数据。一般情况下,在一个操作数据库中使用CDC来捕捉变更,以便用于之后转移到数据仓库中。在SQL Server中使用CDC 就不再需要使用插入相关的方法,例如用户触发器、时间戳字段、以及高昂的查询来确定操作系统中什么发生了改变。

与变化数据一起获得的辅助信息使得CDC可以提供许多问题的答案。例如,下面列出了一些CDC可以有效提供答案的问题:

我想获得在12:00 A.M.和12:00 P.M 之间发生改变的所有记录。

我想要知道这个改变是插入、更新、还是删除。

对于一条更新记录,我想知道哪个(些)字段发生了改变。

提取、转换和加载(ETL)场景下最能发挥CDC 的作用。随着数据量的增加以及全局操作所导致的维护窗口的缩减,使得优化ETL处理变得尤为重要。变更数据捕捉为你提供了一个非常有用的方法,在增量基础上提取变更,从而降低整个ETL处理时间。

下图提供了对变更数据捕捉的组件概述。

CDC使用一个捕捉作业从SQL Server事务日志中提取变更信息,生成变更表。CDC API使你可以编写一个应用程序,从变更表中获得信息,也可以在ETL包中使用它。CDC清除作业删除了变更表中不再需要的信息。

最低限度日志记录INSERT

一般情况下,当你往一个数据库中写数据时,必须将对磁盘执行两次写入操作:一次是写到日志,一次是写到数据库中。这是因为数据库系统使用一个undo/redo 日志,所以在需要的情况下可以回滚或重做事务。但在某些重要的情况(涉及插入数据到现有的表中,从而加速你的ETL处理速度的情况)下,可以将数据只写入到磁盘一次。这就是SQL Server2008中的最低限度日志记录INSERT特性。

上一页  3 4 5 6 7 8 9 10  下一页

Tags:SQL 数据 仓库

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接