SQLSeverCDC实施方案..docxVIP

  1. 1、本文档共22页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
SQLSeverCDC实施方案.

SQL Sever CDC 实施手册目录1.SQL Server 变更数据捕获简介32.CDC与传统增量处理方式的对比43.现行数据库架构54.建议方案75.启用变更数据捕获86.添加CDC之后的影响127.注意事项139.监视变更数据捕获进程15SQL Server 变更数据捕获简介变更数据捕获可记录应用于 SQL Server 表的插入、更新和删除活动。这样,就可以按易于使用的关系格式提供这些更改的详细信息。更改表镜像了所跟踪原表的列结构,将修改的行应用到目标环境所需的列信息和元数据会被捕获并存储在更改表中。SQL提供了一些表值函数,以便使用这对更改数据进行系统级访问。CDC技术典型应用场景是提取、转换和加载 (ETL) 应用程序。通常ETL应用程序需要以增量方式将 SQL Server 源表中的更改数据加载到数据仓库或数据集市。虽然数据仓库中的源表的表示形式必须反映源表中的更改,但数据仓库中目标表的数据表现形式不一定和源表相似,因而刷新源副本的端到端技术并不适用。相反,需要一种结构化的可靠更改数据流,以便使用者可以将其应用于不同的目标数据表示形式。SQL Server 变更数据捕获就提供了这一技术。变更数据捕获的变更数据源为 SQL Server 事务日志。 在将插入、更新和删除操作应用于跟踪的源表时,描述这些更改的条目会添加到事务日志中。日志用作变更数据捕获进程的输入来源,它会读取日志,并在所跟踪的表的关联更改表中添加有关更改的信息。系统将提供一些函数,以枚举在更改表中指定范围内发生的更改,并以筛选的结果集的形式返回该值。应用程序进程使用筛选的结果集通常用以在某种外部环境中更新源表示形式。CDC与传统增量处理方式的对比在没有使用CDC之前,为了确定数据更改,通常应用程序开发人员必须在其应用程序中使用触发器、时间戳列和其他表的组合来实现自定义跟踪方法。创建这些应用程序通常涉及多项工作,导致架构更新,并且通常带来较高的性能开销。通过触发器可以把DML操作中的INSERT/UPDATE/DELETE数据记录下来,但是触发器的维护比较困难。另外一种常用的方式是时间戳,?它是以业务表中某一个字段的值,作为判断新旧数据的标志,每次只抽取上次抽取记录时间以后产生的数据。时间戳方式也存在一些问题:变化数据的捕获需要在源数据库上进行,并且只能捕获最终结果,而非整个变化历史。时间戳的粒度通常设置到秒,在某些场合下这个粒度可能会略掉一些变化数据。无法捕获对时间戳以前数据的delete和update操作,在数据准确性上受到了一定的限制。?而且?要求业务系统的表必须一个可以标识新旧数据的列,并且需要对该列做索引,而某些表没有设置这种列。CDC提供了一种机制,对源表数据的更新进行跟踪,在应用程序中使用变更数据捕获而不开发自定义解决方案来跟踪数据库中的更改具有以下好处:减少了开发时间。 由于 SQL Server 中提供了功能,因此无需开发自定义解决方案。不需要架构更改。 您无需添加列、添加触发器或创建要在其中跟踪已删除的行或存储更改跟踪信息的端表(如果无法将列添加到用户表)。具有内置清除机制。 更改跟踪的清除操作在后台自动执行。不需要端表中存储的数据的自定义清除。提供功能的目的是获取更改信息。 降低了 DML 操作的开销。 开销通常会低于使用其他解决方案,对于需要使用触发器的解决方案,尤其如此。提供可用于配置和管理的标准工具。 SQL Server提供标准的 DDL 语句、SQL Server Management Studio、目录视图和安全权限。现行数据库架构DB_1,DB_2,DB_3,……,DB_50是分布在各个学校的数据库。DB1,DB2,……,DB50是集成在一个服务器上50个不同的DB。DC与IDC的区别:DC包含的数据表比较全,系统压力比较大;IDC基本能满足当前所涉及的表,系统压力比DC好一些。ORACLE是最终的目标库。当前共涉及到50个DB,每个DB约有10张表。每张表每天的增量数据统计如下:备选方案和建议第一种方案:在DC服务器上为50个不同的DB启用CDC。(目前涉及10张表)最后用Informatica开发ETL,从DC服务器上50个DB的变化库中循环抽取。影响:1.启用CDC会在每个DB的系统表中会生成6张公用表。为每张表启用时会多增加一个系统表。 50个DB共计增加800张表。2.为每个DB启用CDC,都会在SQL Server代理下job中新增2个job。 50个DB共计增加100个job。第二种方案:在各个学校的DB上启用CDC。然后为每张启用CDC对应的系统表创建分布式服务,将该系统表同步到DC服务器对应的DB的表中。最后用informatica开发,从DC服务器上50个DB循环抽取。影响:1.因为启用CD

文档评论(0)

sa74g0hj + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档