吴远辉 吴远新 罗雄兰
摘 要:异构数据库的研究与应用是目前计算机领域较为活跃的领域之一,但是随着科技的进步与时代的发展,应用环境的不同,因此需要不同的数据库系统对其进行同步操作,而不同数据库之间的异构同步操作则成为了不可回避的问题,本文也正是针对不同数据库之间的异构同步操作的实现进行研究。
关键词:异构数据库;同步;操作
随着信息化的发展与网络技术的进步,越来越多的计算及研究涉及到了数据共享的问题,但是为了可以更好的对数据进行同步操作,采用了不同类型的数据库模型与系统对其进行共享,实现异构数据库之间的数据同步。
1 XML与WEB SERCICES的特性
XML主要用于不同数据库之间的数据描述,并侧重于数据类型的描述。其不仅具备可扩展性、自定义性、结构性强、纯文本性、数据存储与数据分离性、可读性等特点,可以令不同数据库之间的数据进行异构同步操作。
WEB SERCICES技术则是将不同数据库之间的数据传送看做服务,其不仅可以在网络数据传递过程中被发现、组织和重用。更可以屏蔽业务逻辑的复杂性,实现不同数据库之间的异构同步操作。
WEB SERCICES采用XML作为同步操作的实现格式,不仅可以将WEB SERCICES的架构灵活性、动态性进行合理运用,更可以实现良好的共同性、松耦性、平台无关性。基于HTTP的SOAP协议,也可以轻松的穿越防火墙,不仅解决了互操作性的有限性,更加提高了不同数据库之间的异构同步操作问题。
2 基于XML/WEB SERCICES技术的不同数据库之间的异构同步系统
不同数据库之间的异构同步操作需要掌握三个方面的核心要求,首先,怎样解决不同数据库之间异构系统的相互操作问题;其次,怎样将不同数据库之间的异构系统进行信息的相互传输问题;第三,怎样解决不同数据库之间同构与异构的数据转换问题。
本文正是利用XML作为交换数据,实现数据之间的信息分开,并定义为明确的数据值文档与数据结构文档,从而完成数据库文档的信息转换。WEB SERCICES的使用不仅可以将不同数据库之间的信息进行连接,更可以将各数据库之间进行SOAP协议通信。不同数据库之间的异构同步操作的前提就是每个参与同步操作的数据库系统都需要支持存储过程与触发器,从而实现数据转换与处理。
3 不同数据库之间的异构同步操作设计与实现
3.1 源数据库触发器的结构定义
源数据库安装的触发器其目的在于完整记录数据库的变动与数据传输信息。但是由于不同的数据库之间需要同步操作。假设每个数据库都需要建立一个触发器,这种方式不但具备复杂性,更加不便于数据库之间的维修,缺乏便捷性、可扩展性与通用性。因此,则需要在不同数据库之间的异构同步操作实现中,使多个数据库之间共享。
3.2 触发器的使用
触发器的优势在于当计表进行修改时可以自用进行内嵌执行过程。而不同数据库之间的异构同步操作一旦使用触发器,则是根据触发器内嵌装置中定义的合法性与不合法性进行执行,如果不合法,那么触发器则不会触发。而数据库发生变化时,则触发器则会将数据库中的数据进行转化,并写入触发器数据表中。
3.3 数据提取组件
基于数据库的触发器进行信息的提取,然后按照定义规则将其转化成XML文档。不同数据库之间的异构同步操作系统采用的就是XML格式,在进行WEB SERCICES编写过程中,则需要利用利用C#实现不同数据库之间异构同步操作需要的WEB SERCICES,建立WEB SERCICES的程序清单。
3.4 数据加载组件
将符合不同数据库之间异构同步操作的XML文档,添加进数据库中,加载转换后不同数据库之间异构同步操作的 XML文档到目的数据库。
3.5 数据的接收/发送组件
在进行不同数据库之间异构同步操作的的数据库WEB SERCICES提供刚发之前,需要创建改WEB SERCICES的PROXY OBJECT。根据WEB SERCICES的WSDL文件生成代理,并用手动方式调动WEB SERCICES。
3.6 数据的转换组件
用注册表内的XSLT文档接受来自XML文档,并将其转化成为符合不同数据库之间异构同步操作的XML格式。通过上述方法,可以逐渐实现不同数据库之间异构同步操作转化功能,并有效解决不同数据库之间异构同步操作问题。
4 结论
数据库在计算机网络中具备不同的节点,且具备一致性与分散性等特点,同步更新不仅仅是一种技术,更是需要达到数据分布存放的目的,从而实现异构数据库的同步操作,本文提出的方案则更加具备可靠性、扩展性与跨平台性,实现不同数据库之间异构同步操作。
[参考文献]
[1]贾长云.基于XML的异构数据库数据交换的研究与实现[D].河海大学.2005(3).
[2]王军.基于XML的分布式异构数据库同步研究与设计[D].南昌大学.2007(6).
[3]姚旭.基于JMS与Web Service的分布式异构数据库同步的研究[D].辽宁工程技术大学.2009(11).