基于分布式异构数据库的同步系统设计研究

来源 :计算机光盘软件与应用 | 被引量 : 0次 | 上传用户:pengxianwei1986
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  摘 要:在分布式网络结构中,最大的问题就是异构数据库之间的一致性问题。针对该问题,文中设计一种基于XML的异构数据库同步系统。该系统已Java/XML为基础,并通过Web界面来实现分布式数据库之间的同步。实际应用结果表明,该系统具有较好的可操作性和可扩展性。
  关键词:数据同步;异构数据库;JAVA/XML;Web
  中图分类号:TP311.13
  随着现代网络技术的发展和应用范围的扩展,需要在不同结构的网络间进行数据交换。这其中,最大的障碍就是异构数据库的存在,使得数据难以进行有效和统一的管理与维护。其中,这种异构性体现在多个方面,比如网络中不同节点上计算机系统的异构、各种类型操作系统的异构、数据库管理系统中数据模型的异构等。
  针对网络数据交互中的异构问题,人们采用了多种方法,比如日志法、触发器法、API法等。但是,这些方法各有优缺点,难以满足用户多方面、多层次的需求。为此,本文以异构数据库的同步为研究内容,以XML技术为基础,设计并实现了一种异构数据库进行同步的系统。在所设计的同步系统中,具体划分成客户端和服务器端。前者主要负责对数据进行捕获、对数据的类型进行转换,以及对数据文件的写入、压缩和加密等;而后者则主要负责的实现数据文件的解密、解压以及各种传输数据的解析和入库操作等。
  1 异构数据库数据同步系统
  1.1 系统框架阐述
  现有的以后数据库系统在应用过程中,存在的一些能够给数据交互产生影响的问题有多种,主要包括异构数据库之间的命名冲突、格式冲突以及结构冲突等。所以,为了能够实现多种异构数据库之间的数据同步,主要解决思路就是要正确表达异构数据库之间的同步规则,即针对存在异构特征的源数据库与目标数据库之间存在的各种同步需求,以及采用的同步解决方法进行声明和处理;此外,还需要针对数据的变化进行有效检测,并对其进行及时捕获;最后,还需要经捕获的数据传送给目标数据库,完成数据的更新过程,最终完成异构数据库的数据同步。
  以上述思路为基础,文中所设计的系统就采用C/S架构模式。在客户端,需要完成同步规则定义、初始化、数据同步处理、同步数据文件处理以及FTP文件传输等操作,并设置相应的功能模块。在服务器端,其同样包含了这几个功能模块,不过,服务器端的数据同步处理与客户端存在差异。在下面的图1中,给出了本文所设计同步系统中所包含主要模块的设计框图。
  1.2 同步规则分析
  在同步系统的设计和实现中,所依据的同步规则,是指系统中的客户端和服务器端之间采用的一种数据同步和交互策略。常用的数据库之间的同步策略有多种,比如:定时同步、日志同步以及即时同步等。考虑到这些策略的适用性,文中设计和采用了基于策略表的自定义同步技术。该技术需要在客户端增加同步策略表,以策略表为依托完成不同数据表的配置过程。
  1.3 数据扫描过程
  在数据扫描过程中,主要采用基于时间戳的可配置数据扫描方法。这样,客户端就可以根据异构规则来定义声明中定义的同步对象数据库以及扫描模式,使得系统能够根据扫描表中的信息完成数据库扫描过程。文中所设计系统中的扫描表包含了多种信息,比如需要同步的数据对象的名称、捕获周期、扫描模式等。此外,扫描模式还对扫描源数据库中变动数据的方式进行了定义。
  1.4 数据转换处理过程
  对于异构数据库,其结构和功能各不相同,为了保存相同语义的同步数据,可能需要采用不同的数据结构、数据类型和数据名称。所以,在完成数据捕获后,则需要针对这些数据进行转换。概括起来,数据的差异性主要体现在如下几个方面:
  (1)字段名称的异构。对于同一数据实体的字段,名称存在差异。
  (2)数据类型的异构。由于相同数据实体中能够所采用的数据类型表示方法也有可能存在差异,所以就需要针对两种数据之间的数据类型变换函数进行预先定义。
  (3)数据结构的异构。需要说明的是,如果在目标数据库所包含的字段只是源表的一部分,则需要针对冗余数据进行捕获操作。
  对于这几种异构问题,文中所采用的方法主要为基于异构屏蔽的数据转换技术,在该方法中,首先需要对基于XML的异构屏蔽文件进行定义,才能实现源数据库和目标数据的异构声明操作,最终实现异构数据库中异构数据的同步转换。
  2 系统实现与测试
  本文所设计的数据同步系统主要以Java环境为依托,基于XML技术实现异构数据库的同步。同时,还将系统的客户端和服务器端在局域网的不同主机上进行测试,在测试过程中,对于不同位置的网络主机,安装有Oracel和Mysql数据库,并对实验中需要的同步数据库进行了定义。
  对于测试过程中所出现的源数据库中数据的变换情况,可以通过客户端对这些数据进行捕获,然后进行数据的转换与交换操作。这样,在服务器端对数据文件成功监测的基础上,就可以实现数据的转换处理,完成数据的更新过程和数据同步过程。需要补充的是,在数据文件的处理过程中,所采用的加密标准为AES标准,而压缩方式则采用了标准文件压缩程序,即Gzip。
  3 结束语
  本文主要针对存在于分布式网络中的异构数据库间的数据同步问题进行研究,设计了基于XML的异构数据库数据同步系统,能够实现客户端和服务器端的数据库同步,数据的一致性得到了维护。在系统实现过程中,考虑系统的平台无关性,采用了Java作为开发平台,并以XML作为中间件来实现异构数据的数据同步。
  参考文献:
  [1]张洪.基于JAVA的异构数据库同步技术的研究和实现[J].中国科技信息,2009(23):125-127.
  [2]杨鹏,杨海涛,王正华.异构数据库变化捕捉及同步策略[J].计算机工程,2008(34):53-55.
  [3]林源,陈志泊.分布式异构数据库同步系统的研究与应用[J].计算机工程与设计,2010(31):5279-5281.
  [4]熊辉,刘彦峰,郭大庆.分布式异构数据库迁移系统的设计与实现[J].计算机工程,2008(31):57-59.
  作者简介:周岚(1977.06-),女,江苏徐州人,讲师,本科,研究方向:软件开发、数据库、程序设计等。
  作者单位:江苏联合职业技术学院徐州财经分院,江苏徐州 221008
其他文献
思想政治教育的创新发展需要以协同理论的视角分析和解决存在的问题,大学生思想政治教育可以分为主体协同系统、内容协同系统、载体协同系统三个组成部分。不同大学生思想政
改变传统分词系统字典词语的线性排列方式,结合现代汉语词语特点,采用树型结构表示词语——词树。词语匹配过程中,依托树型字典,使用直接查找算法匹配字符,从空间和时间两个
本文简要介绍了基于C/S模式的数字电视综合网络管理系统,意在解决网管系统中告警信息传递的有效性和及时性问题,提出了模块化管理的告警功能,以及邮件和短信的告警信息发送方
摘要:分析数据加密技术中的置换算法及其加密解密指导思想,给出加密解密置换算法的程序设计方法与具体实现步骤,并提供一个完整的加密解密算法的C++源程序。  关键词:C++语言;加密;置换算法;移位  中图分类号:TP391  虽然已有多种技术可应用到计算机系统和网络的安全性,然而近几年来,国内外针对数据安全方面的研究比较注重在两个方面,首先是以密码学为基础的各种应用性加密措施(如公开密钥算法和保密密
本文根据对Android问卷调查客户端问卷题目的分析的结果,设计出题目加载视图的布局,并对题目分页加载的实现提出了详细方案。
根据某煤矿瓦斯涌出量的测试结果,定量探讨了瓦斯涌出量与煤层厚度及其变化之间的关系.结果表明,随着煤层厚度及其变化的增大,煤层瓦斯涌出量反而减少.究其原因,主要是邻近煤
LAM、ADV、ETV、Ld T等核苷(酸)类似物口服抗H B V治疗是乙型肝炎、肝硬化患者最基本与最常用的治疗,患者的治疗与定期复查依从性直接与治疗效果密切相关,擅自停药导致乙型肝炎
煤是一种天然高聚物,按照高聚物阻燃设计的概念设计出一种新型煤炭阻燃添加剂,介绍了该阻燃添加剂的性能及其阻燃机理.该阻燃添加剂具有促进形成焦化炭层和阻断自由基链式反
通过介绍数字视频服务器,详细说明了PC式和嵌入式视频服务器的结构和技术特点.分析了视频服务器关键技术,包括采用不同压缩算法在视频传输中的特性以及网络拥塞和流量控制和