分布式数据库数据同步技术其在气象行业中的应用

更新时间:2024-03-25 作者:用户投稿原创标记本站原创 点赞:12444 浏览:48050

【 摘 要 】 本文采用.NET Remoting分布式远程对象处理方法,建立了一种在分布式数据库系统上能够使用的数据同步模型,并将该模型成功应用于自动气象站数据管理系统中,解决了网络环境中分布式数据库的数据同步传输问题.经过一年来的业务应用表明,采用.NET Remoting 技术可以简化分布式远程处理的开发过程,是一种可取的分布式数据同步应用解决方案.【 关 键 词】 分布式数据库;数据同步;XML;.NET Remoting技术;自动气象站数据管理Data Synchronization Technology in Distributed Database andits Application in the Meteorological IndustrySong Chang-qing 1 Wu Li-ping 2 Guo Rui 1 Liu Zhi-bang 1 Wang Hao-yu 1(1.Yingkou Meteorological Bureau LiaoningYingkou 115001;2.Tianjin Maritime Safety Administration Yingkou Beacon Department LiaoningYingkou 115001)【 Abstract 】 This paper uses the.NET Remoting remote distributed object processing method, builds a data model can be used on distributed database system, and this model is applied in the automatic weather station data management system, solves the question of distributed database’s data synchronization tranission in the work environment .It indicated that the.NET Remoting technology can simplify the development process of distributed remote processing after a year of business application, and is a desirable solutions of distributed data synchronization application.【 Keywords 】 distributed database; data synchronization; XML; .NET Remoting technology; automatic weather station data management1 引言分布式对象技术是在面向对象技术的基础上发展起来的,分布式对象技术在中间件系统、Web怎么写作以及面向怎么写作架构等许多领域都发挥着重要的作用.当前主流的分布式对象技术有OMG的CORBA、Microsoft的COM/DCOM以及Ja/RMI.然而,CORBA缺少方便的开发工具和强有力的厂商支持,COM/DCOM跨平台性较差,RMI对多语言集成的支持却很弱.而微软的.NET Remoting作为一个丰富的、可扩展的平台,提供了高效的、安全的处理远程对象的方法,非常适合通过网络访问资源.本文就通过.NET Remoting技术,来实现分布式数据库系统数据同步,并介绍了该技术在气象自动气象站数据管理系统中的应用.2 分布式数据库与数据同步技术2.1 分布式数据库分布式数据库系统是指数据物理上分散而逻辑上集中的数据库系统.利用计算机网络技术,分布式数据库系统将地理位置分散的多个逻辑单位联接起来,共同组成一个统一的数据库系统.分布式数据库具有分布性和逻辑协调性.因此,分布式数据库系统可以看成是计算机网络与数据库系统的有机结合.在分布式数据库系统中,被计算机网络联结的每个逻辑单位,称为站点(Site)或结点(Node).一个用户如果只访问他注册的那个站点上的数据则称为本地(或局部)用户或本地应用;如果访问涉及两个或两个以上的站点中的数据,则称为全局用户或全局应用.2.2 数据同步技术数据同步技术通过使在分布式数据库中的数据库站点之间的数据更新的同步,达到使数据分布存放的目的,从而实现数据库的分布式处理应用.这种技术可以使用户透明地处理和使用数据,大大增加了站点的自治性.3 .NET Remoting技术.NET Remoting 提供了一种允许对象通过应用程序域与另一对象进行交互的框架,它在很多方面可以认为是DCOM(分布式COM)的升级.它为进程间通信提供了一种抽象的方法,可将远程处理的对象与特定客户端或怎么写作器应用程序域以及特定的通信机制隔离开来.因此,这很灵活且容易自定义,可以用一种通信协议替换另一种通信协议,或者用一种序列化格式替换另一种序列化格式,不必重新编译客户端或怎么写作器端.3.1 .NET Remoting技术的基本原理.NET Remoting技术基于网络传输技术来实现客户通道与怎么写作器通道间的通信.当客户端需要访问怎么写作器端时,通过传递对象引用以获得远程对象的写作技巧.对于客户程序来说,写作技巧提供了与远程对象完全一样的方法和属性.当写作技巧的方法被调用时,就会创建消息,并将这些消息串行化发送到客户通道中.怎么写作器通道则使用格式化程序并行化消息,从而将方法发送给远程对象.这样,客户端就可以像使用本地对象一样来操作远程对象了. 3.2 .NET Remoting技术与Web Service的比较.NET Remoting和Web Service是.NET框架下构建分布式应用的两种典型方案.两种方案都支持事务处理机制、负载均衡和语言无关性.Web Service可以响应来自任何支持HTTP,XML,SOAP协议的平台请求,更能实现异构系统、跨平台系统的集成,但其支持的XML、SOAP消息文本数据因附带较多的格式数据,降低了数据处理效率;.NET Remoting仅能支持构建在CLR基础上的托管应用程序,但其既支持XML,SOAP的消息文本数据,又支持基于TCP channel信道的二进制数据,具有更高的执行效率和安全性.4 数据同步技术分析4.1 数据同步过程基于XML与.NET Remoting的分布式数据同步模型,采用典型的三步数据同步过程,同步时由源端以推式方式进行.该模型适用于具有触发器功能的数据库管理系统,它利用触发器来捕获源数据库的差异数据.数据同步系统由捕获差异数据模块、分发差异数据、更新差异数据模块三部分组成.4.2 基于XML与.NET Remoting的数据同步模型基于XML与.NET Remoting的分布式数据同步模型工作时首先由下级怎么写作器的源数据库通过触发器捕获变化了的数据并将其存储于差异数据表中,利用ADO.NET技术将差异数据表关系模式转化为XML Schema模式,并将差异数据表中的数据填充为XML文档,经过对XML文档加密处理后,调用上级怎么写作器中的远程对象,获得远程对象的相关方法,将得到的DML同步队列应用于上级怎么写作器的目标数据库当中,这就实现了同步周期内的一次数据同步.5 在自动气象站数据管理系统中的应用为避免大量的观测数据造成网络流量负担过重,我们通过完成自动气象站数据管理系统来解决这一问题,其中数据同步传输是其中重要一个环节.考虑到目前多数气象台站计算机终端采用Windows操作系统,因此采用了基于.NET Remoting远程通信的分布式应用方案,以得到更多的协议支持、更高的沟通作业效率和安全性.5.1 系统的实现环境自动气象站数据管理系统实现了自动气象站远程数据同步处理的分布式应用,数据库采用SQL Server 2005,怎么写作器端采用Windows Server 2003操作系统,客户端采用Windows XP Professional操作系统,程序采用易于网络编程的C#语言实现.5.2 程序的实现为满足自动气象站数据管理系统中分布式数据的同步需求,我们将基于XML与.NET Remoting的分布式数据同步模型应用于业务实践,解决了如何捕获差异数据、如何利用XML作为媒介导出数据、如何基于.NET Remoting实现同步数据传输以及如何解析XML文件等问题,最终实现了分布节点间的数据同步.在程序的具体实现过程中,先创建一个接口程序集,即中间业务层代码,并将其编译成动态链接库,用于在怎么写作端部署远程对象.在怎么写作器端,主要需要数据库的访问和远程对象的发布,数据库访问我们通过ADO.NET来实现,ADO.NET可以方便、高效和可靠地访问数据库,同时易于解决数据的完整性和一致性问题.远程对象是业务逻辑的具体实现,远程对象与其它类用户对象惟一的区别在于远程处理对象支持引用调度,因此远程对象必须从System.Marshal ByRefObject对象派生.在客户端,客户怎么写作层采用Windows 窗口应用程序实现,为了实现与远程对象的通信,必须添加对远程对象和.NET Remoting名称空间的引用,并激活远程对象.6 结束语.NET Remoting技术凭借其良好的扩展性、高效性和安全性,为通过网络远程访问数据资源,实现分布式数据库数据同步,提供了科学的解决方案.参考文献[1] 赵明宇. 基于.NET框架的分布式系统应用研究[D]. 南京:河海大学,2003.3[2] 陈绪君,胡君红,张大斌,金灿,秦鑫. .NET框架Web Service和.NET Remoting分布式应用解决方案及评价[J]. 计算机应用研究,2003(9).[3] 姜亦学.分布式数据库系统同步技术研究[D].长春理工大学,2008.[4] 李素萍.分布式数据库的同步更新技术研究[J].中国科技信息,2008年第16期.[5] MacDonalod M,MicroSoft .NET分布式应用程序:集成XML Web怎么写作和.NET远程处理[M]. 北京:清华大学出版社,2005.[6] 周伟,刘丰.分布式数据库数据同步技术研究[J].计算机与信息技术,2010年第10期.[7] 李黄.自动气象站实用手册[D].气象出版社,2007.作者简介:宋长青(1979-),男,锦州师范学院毕业,大本学历,硕士学位,现任营口市气象局网络工程师,一次被中国气象局、三次被辽宁省气象局评为年度优秀网络维护人员.主要从事天气雷达机务保障、网络维护管理、数据库管理和软件开发等工作.


相关论文范文