异地容灾系统和数据仓库中数据同步的设计及其关键技术实现.docVIP

异地容灾系统和数据仓库中数据同步的设计及其关键技术实现.doc

  1. 1、本文档共5页,可阅读全部内容。
  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文档。上传文档
查看更多
异地容灾系统和数据仓库中数据同步的设计及其关键技术实现.doc

  异地容灾系统和数据仓库中数据同步的设计及其关键技术实现   摘要:以异地容灾系统和数据仓库需要实时同步生产系统的数据为背景,介绍了一个异地容灾系统和数据仓库中数据同步软件的功能模型;对两个系统中数据同步的设计和体系结构作了介绍,并阐述了该数据同步软件所采用的Oracle高级复制技术。   关键词:数据同步; 容灾系统; 数据仓库; Oracle高级复制     0引言      尽管人们小心谨慎,各种各样的灾难仍不可避免,如系统硬件故障、 网络 故障、机房断电甚至火灾、地震,广为人知的“9·11”事件就是触目惊心的例子[1]。这些灾难造成了重要数据的丢失, 影响 了 企业 的正常运转[2]。另外,激烈的市场竞争迫使企业高层寻找更为 科学 、系统、有效的辅助决策技术和整体解决方案来处理日益复杂的公司事务。数据挖掘就成了很好的选择之一,但是数据挖掘需要大量的生产数据,有时甚至是实时的生产数据。如果直接在生产系统上进行数据挖掘,必然会影响到生产的效率,并将严重威胁生产的稳定运行。如何在灾难发生时能够保留生产数据,并启用异地容灾系统及时恢复生产,如何把生产数据及时传递到数据仓库供数据挖掘使用,这些是 现代 企业需要面对的共同 问题 。   近年来为了解决上述问题,许多企业不惜耗费巨资来分别建立异地容灾系统和数据仓库。但遗憾的是,很多系统由于无法及时准确地同步生产数据,不能有效地运行。鉴于此,笔者设计并开发了一套基于Oracle高级复制技术的数据同步软件,实现了将一个数据容量为3TB的Oracle 9i RAC数据库的生产数据及时准确同步到异地容灾系统和数据仓库。该系统不仅将对原生产系统的影响降至最小,还极大地降低了项目费用。      1软件模型      该软件的功能模型图如图1所示。   (1)初始同步模块   该模块主要是在表进行初始同步时使用的;它能够根据实际需要生成物化视图及其索引的创建语句,并完成表的初始同步。如果没有特别的要求,则调用普通初始同步子模块进行目的端表的初始同步,创建语句将从源数据库获取;如果有特别的要求,如按指定的分区初始同步或者按照一定的条件进行初始同步,则会根据这些要求调用分区初始同步或条件初始同步子模块生成特定的创建语句来进行目的端表的初始同步。该模块能够批量自动进行表的初始同步,从而大大减少了人工干预,保证了初始同步的准确性和自动化。   (2)调度模块   由于源端的数据在时刻变化着,在初始同步模块的基础上需要有一个调度模块将这些不断变化的数据同步到目的端,使目的端与源端始终保持数据一致性。该模块中的增量调度子模块是在表的增量同步过程中使用的,并能根据刷新间隔要求对目的端表进行及时准确的刷新;完全刷新调度子模块是在对表进行重新同步时使用;特殊要求调度模块是给需要做特殊同步的表使用的,如需要暂时停止同步、在每天的固定时间不同步等。   (3)监控模块   该模块是为了及时发现同步中断和同步效率低的表。由于其告警方式为短信告警,可以实现任何时间、任何地点的告警,保证了能在第一时间发现同步的中断以及同步效率低下的情况,实现了异常处理的及时性。   (4)错误处理模块   该模块主要是处理同步刷新过程中出现的各种错误。通过对捕获的错误进行相应的处理,从而保证同步能够稳定、高效地运行。另外,由于Oracle高级复制技术自身存在一定的缺陷,需要使用该模块来捕获造成数据不准的源头,并进行相应的处理。   (5)优化模块   该模块主要是处理同步过程中出现的性能瓶颈,保证能够及时发现性能问题并采取相应的优化手段来加以维护,包括源端优化和目的端优化。      2系统设计和体系结构      数据仓库中同步的数据只要实现小时级别的同步就可以满足要求,但异地容灾的数据库实时性较高,基本上都要求实现分钟级别的同步。现在生产数据库总的数据量约为3 TB,容灾需要同步的数据量比数据仓库要大得多,而且数据仓库需要同步的数据都可以从容灾系统中获取;另外,生产数据库的性能和稳定程度对公司生产有直接的影响。因此在同步过程中,不仅应该尽量减少生产数据库的负担,还应该尽量避免同步过程中的异常情况,如网络故障、同步性能低下等问题[3]。基于以上考虑,笔者设计了如下方案:先将生产数据同步到异地容灾系统后,再以异地容灾系统为数据源同步数据到数据仓库。   系统的体系结构如图2所示。   (1)生产系统数据同步到异地容灾系统   生产系统与异地容灾系统之间是通过百兆网连接的;生产系统的数据库是Oracle 9i RAC,总的数据量大约为3 TB,涉及五千多张表。对这些表进行 分析 归类,发现容灾系统真正需要实时同步的表大约只有五百张,数据量

文档评论(0)

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

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

1亿VIP精品文档

相关文档