- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
SQLSERVERCDC增量数据抽取.
SQL SERVER CDC 增量数据抽取.版本历史
日期 版本 描述 作者 26/04/2010 1.0 SQL SERVER CDC 增量数据抽取方案拟制 刘建军,
目录
1、概述 4
1.1、需求概述 4
1.2、场景分析 4
2、依赖关系 5
3、服务方案 5
3.1 设计的目标 5
3.2 相关关键技术说明 5
3.3、报表服务方案 11
3.4 报表服务表结构 13
3.5 报表服务过程及其描述 14
3.6 报表服务使用 14
1、概述
1.1、需求概述
本文档的主要目的是提出和测试报表服务实现,来提高Q3系统的报表统计性能。
该服务方案主要参考ERP报表服务方案,并结合Q3系统与SQLServer2008数据库的特点来实现,并尽量统一规划以提高该方案的兼容性。
1.2、场景分析
报表服务需要将要进行统计、分析的数据库某一业务相关数据在一段时间内的变化(增量数据),同步到报表服务中间库,并将统计结果报表同步更新,这就需要:
报表中间库转储和引用业务库对象。
同一数据库实例上不同数据库或分布式数据库的变更数据捕捉
获得数据增量、并根据增量形成增量报表数据同步报表中间库。
或直接同步报表中间库。
业务执行的唯一性。
抽取日志的记录的记录。
增量数据日志记录清除。
同步异常记录。
2、依赖关系
Q3系统采用SQLServer2008数据库,并且该版本数据库提供了CDC(change data capture)捕获变更数据的方法,并且提供了同义词和数据库级应用锁功能,结合排序函数,为在数据库级别上实现与ERP类似的报表服务提供了可能。
3、服务方案
3.1 设计的目标
Q3的报表服务方案,要满足如下功能性和非功能性要求。
业务数据增量抽取。
增量数据合并(算法最优)。
增量抽取数据的准确性和有效性。
数据抽取执行线程并发控制唯一性和入口统一性(采用数据库级应用锁并需要进行封装,提供与ERP一致的入口)。
跨数据库或分布式数据库的抽取实现(链接服务器)。
数据同步路径最短、同步效率最高(根据业务数据量和业务的复杂性分别采用不同的数据同步方式)。
3.2 相关关键技术说明
CDC (change data capture): ???
CDC为数据仓库常用技术手段,是当对数据库执行insert、update、delete操作的时候,捕获变更数据的方法。
CDC的原理是每次对源表(Source Tables)执行增删改操作时,数据库事务日志会记录该DML操作造成的变更数据,然后捕获处理过程将日志中源表的变更数据写入变更捕获表(Change Tables).
使用步骤:
通过SQL Server 配置管理器(SQL Server Management Studio、服务),启用数据库的SQL Server Agent代理服务。
执行存储过程,启用了数据库的CDC特性。
EXEC sys.sp_cdc_enable_db
执行存储过程,对数据库中某一表启用CDC特性。
EXEC sys.sp_cdc_enable_table
@source_schema = Ndbo
, @source_name = Ntest
, @role_name = Ncdc_admin
, @capture_instance = Ntest_cdc1
, @supports_net_changes = 1
, @index_name = NPK_test
, @captured_column_list = Ncol1,col2,col3
, @filegroup_name = NPRIMARY;
系统自动在系统表下建立对应变更捕获表,变更捕获表的命名规则是cdc.+实例名+CT. 其中其中__$operation代表的是执行的是何种DML,1=delete,2=insert,3=update(更新前),4=update(更新后)
系统建立了其他多个关于CDC函数和过程,其中涉及报表相关过程与函数:
sys.fn_cdc_get_max_lsn
返回 cdc.lsn_time_mapping 系统表中 start_lsn 列中的最大日志序列号 (LSN)。您可以使用此函数为任何捕获实例返回变更数据捕获时间线的高端点。
sys.sp_cdc_cleanup_change_table
清除变更数据存储过程
手动清理:使用sys.sp_cdc_cleanup_change_table存储过程清除变更数据。
自动清理:在启用数据库CDC时,系统自动在SQL Server Agen
您可能关注的文档
最近下载
- 2025版《煤矿安全规程》宣贯培训课件.pptx VIP
- 2025年中国石油数智研究院秋季高校毕业生招聘60人笔试上岸历年真考点题库附带答案详解.doc
- 变电所改造工程施工方案(3篇).docx VIP
- 欧洲标准化委员化BS EN 10283 - 2010.pdf VIP
- 2025年中国石油数智研究院招聘笔试备考题库(带答案详解).pdf
- 期末模拟质量检测卷-2024-2025学年统编版语文三年级上册.docx VIP
- 山东省建筑施工企业安全生产管理人员安全生产知识考试题库(含答案).pdf VIP
- 城市规划设计计费(2004)中规协秘字第022号.pdf VIP
- 数据库原理及应用教程(MySQL版)全套教学课件.pptx VIP
- 关爱困境儿童让爱守护成长PPT模板.pptx VIP
文档评论(0)