SQLSERVERCDC增量数据抽取.doc

SQLSERVERCDC增量数据抽取.doc

ID:62033933

大小:300.50 KB

页数:20页

时间:2021-04-15

SQLSERVERCDC增量数据抽取.doc_第1页
SQLSERVERCDC增量数据抽取.doc_第2页
SQLSERVERCDC增量数据抽取.doc_第3页
SQLSERVERCDC增量数据抽取.doc_第4页
SQLSERVERCDC增量数据抽取.doc_第5页
资源描述:

《SQLSERVERCDC增量数据抽取.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、SQLSERVERCDC增量数据抽取。版本历史日期版本描述作者〈26/04/2010<1。0〉SQLSERVERCDC增量数据抽取方案拟制刘建军,目录1、概述41.1、需求概述41。2、场景分析42、依赖关系53、服务方案53.1设计的目标53。2相关关键技术说明53.3、报表服务方案113.4报表服务表结构133.5报表服务过程及其描述143.6报表服务使用141、概述1。1、需求概述本文档的主要目的是提出和测试报表服务实现,来提高Q3系统的报表统计性能。该服务方案主要参考ERP报表服务方案,并结合Q3系统与SQLServer2008数据库的特点来实现,并尽量统一规划以提高该方

2、案的兼容性。1。2、场景分析报表服务需要将要进行统计、分析的数据库某一业务相关数据在一段时间内的变化(增量数据),同步到报表服务中间库,并将统计结果报表同步更新,这就需要:1.报表中间库转储和引用业务库对象。2.同一数据库实例上不同数据库或分布式数据库的变更数据捕捉3.获得数据增量、并根据增量形成增量报表数据同步报表中间库.4.或直接同步报表中间库.5.业务执行的唯一性。6.抽取日志的记录的记录.7.增量数据日志记录清除。8.同步异常记录。2、依赖关系Q3系统采用SQLServer2008数据库,并且该版本数据库提供了CDC(changedatacapture)捕获变更数据的方法

3、,并且提供了同义词和数据库级应用锁功能,结合排序函数,为在数据库级别上实现与ERP类似的报表服务提供了可能。3、服务方案3.1设计的目标Q3的报表服务方案,要满足如下功能性和非功能性要求。n业务数据增量抽取.n增量数据合并(算法最优)。n增量抽取数据的准确性和有效性。n数据抽取执行线程并发控制唯一性和入口统一性(采用数据库级应用锁并需要进行封装,提供与ERP一致的入口).n跨数据库或分布式数据库的抽取实现(链接服务器)。n数据同步路径最短、同步效率最高(根据业务数据量和业务的复杂性分别采用不同的数据同步方式)。3。2相关关键技术说明CDC(changedatacapture): 

4、  CDC为数据仓库常用技术手段,是当对数据库执行insert、update、delete操作的时候,捕获变更数据的方法.CDC的原理是每次对源表(SourceTables)执行增删改操作时,数据库事务日志会记录该DML操作造成的变更数据,然后捕获处理过程将日志中源表的变更数据写入变更捕获表(ChangeTables)。使用步骤:1.通过SQLServer配置管理器(SQLServerManagementStudio、服务),启用数据库的SQLServerAgent代理服务。2.执行存储过程,启用了数据库的CDC特性。EXECsys。sp_cdc_enable_db3.执行存储过

5、程,对数据库中某一表启用CDC特性。EXECsys。sp_cdc_enable_table@source_schema=N’dbo',@source_name=N’test’,@role_name=N’cdc_admin',@capture_instance=N’test_cdc1’,@supports_net_changes=1,@index_name=N’PK_test’,@captured_column_list=N'col1,col2,col3',@filegroup_name=N’PRIMARY';4.系统自动在系统表下建立对应变更捕获表,变更捕获表的命名规则是cdc.

6、+实例名+CT.其中其中__$operation代表的是执行的是何种DML,1=delete,2=insert,3=update(更新前),4=update(更新后)5.系统建立了其他多个关于CDC函数和过程,其中涉及报表相关过程与函数:lsys.fn_cdc_get_max_lsn返回cdc.lsn_time_mapping系统表中start_lsn列中的最大日志序列号(LSN).您可以使用此函数为任何捕获实例返回变更数据捕获时间线的高端点.lsys。sp_cdc_cleanup_change_table清除变更数据存储过程手动清理:使用sys.sp_cdc_cleanup_c

7、hange_table存储过程清除变更数据。自动清理:在启用数据库CDC时,系统自动在SQLServerAgent中加入每日清除变更数据的作业。作业自动执行清理变更数据过程。1.停用CDC存储过程用于停用CDC实例。EXECUTEsys.sp_cdc_disable_table@source_schema=N’dbo',@source_name=N’test1’,@capture_instance=N’test1_cdc1’;2.存储过程用于停用数据库CDC功execsp_cdc

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。