分布式数据复制技术初探.docVIP

  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

分布式数据复制技术初探   摘要:数据复制技术,在解决数据库由于地理位置的分布,而引发的数据不一致问题上以其突出的优点得到了广泛的应用,现已成为数据库技术研究领域的热点。   关键词:数据复制 分布式数据 常用方法   一、分布式数据复制技术基本概念及优点   分布式数据库技术是目前我们经常提及的分布式计算的一个重要组成部分,该技术允许数据在多个服务器端共享。采用分布式数据库技术,一个本地服务器可以存取不同物理地点的远程服务器上的数据;也可以使所有的服务器均可以持有数据的拷贝/复制,这样分布式系统设计一个分布式计算解决方案首先需要考虑的问题就是应用的完整性、复杂性和可用性以及响应时间等,同时还需要考虑的是对于不同的应用需求是采用实时存取远程数据还是采用延迟存取远程数据。这对于数据复制来讲就是采取实时更新复制方案还是延迟数据复制。   广义上,凡是通过数据库系统生成数据对象副本的过程都可以成为复制。实现数据复制的几种常见方法主要有拷贝法(使用SQL语句中COPY命令)、触发器方法、狭义意义上的复制技术方法。狭义的数据复制,是指由数据库系统提供的数据复制组件(数据复制模块)实现,由数据库系统管理的数据复制。   通过数据复制的方法实现整个分布式数据库中的维护具有以下几点优势:   1、减少网络负载,因为不用每次通过网络获取要访问的数据;   2、提高性能,因为能够进行本地数据访问;   3、更好的负载平衡,较大的工作负载可以分布到多个站点上;   4、能够使用拷贝数据进行开放和测试;   5、更好地支持商业应用。   当然,在实际应用中,由于各个数据库副本可能对相同的数据对象进行操作,当进行数据同步时,就会产生冲突,主要有更新冲突、唯一性冲突、删除冲突等等。这些冲突会严重影响数据库数据的完整性。所以在复制过程中必须尽量防止数据冲突的产生,一旦发生冲突,就必须有预先设置的冲突解决方法。   二、分布式数据复制的常用方法   数据复制按照其变化捕获的方法不同,最常用的有四种:基于触发器法、基于日志法、基于时间戳法、基于API法。   1.基于触发器法   此方法是在主数据表中创建相应的触发器,当主表数据被进行更新、插入和删除操作并成功提交时,触发器就会被触发,通过相应的提取程序,将当前主数据表的变化写入目的数据表中,以实现数据副本与主表数据在任何时间均保持一致,这种方案可用于同步复制、增量复制,但是这种基于触发器的方法占用的系统资源较多,影响系统运行效率,并且对通信网络的可靠性和安全性有较高要求,因为一旦存在网络中断,系统就无法正常运行。同时,基于触发器的复制方法对比较复杂的复制任务需要非常复杂的配置和实施,一定程度造成管理上的不便,尤其对于对等复制和异构复制较难实现。因而这种方法不适用于企业级数据复制,较适宜于小型数据库应用。   2.基于日志法   通过分析数据库日志的信息来捕获复制对象的变化序列,如:INFORMIX提供的CDR就是通过读取逻辑日志来获取变化信息的。这种方法不仅方便,也不会占用太多额外的系统资源,对任何类型的复制都适用,不但能提高效率和保证数据的完整性,还能在对等式复制时提供详细的控制信息。但由于数据库日志的格式是不公开的,因而不得不基于某一固定的数据库日志分析工具或接口,这给异构数据库复制带来了问题。   3.基于时间戳法   基于时间戳的方法主要根据数据记录的更新时间判断是否最新数据,并根据此对数据副本进行相应修改。该方法需要相关应用系统中的每个表中都有一个时间戳字段,以记录每个表的修改时间。这种方法虽然不影响原有应用的运行效率,但却需要对原有系统做较大的调整,而面对捕获那些并非通过应用系统引起的操作数据变化存在困难,虽然可以通过设定触发器记录数据修改时间,但同时也降低了系统运行效率。所以对数据更改较少的主表实现数据复制,基于时间戳法较为合适。   4.基于API法   在应用程序和数据库之间引入中间件,在API上来完成应用程序对数据库修改的同时,记录下复制对象的变化序列。这种方法既可以实现异构数据库复制,也减轻了DBA的负担。   三、数据复制产品   大型关系数据库都提供了数据复制功能的产品,如SY-BASE公司的Relication Server在SYBASE数据库之间实现信息的复制,但它们要求要有相同的数据结构,但对于异构数据库之间的消息传递,replication server则显得无能为力。同时replication server,用户难以控制数据的复制过程。由于缺少足够的日志消息,用户很难监控复制结果。   数据库厂商由于具有对自己数据库的彻底控制权,因而在实现数据复制时具有较大的灵活性。   这类数据复制的特点表现在:   1、支持

文档评论(0)

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

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

1亿VIP精品文档

相关文档