• 休闲生活
  • 教育教学
  • 经济贸易
  • 政法军事
  • 人文社科
  • 农林牧渔
  • 信息科技
  • 建筑房产
  • 环境安全
  • 当前位置: 达达文档网 > 达达文库 > 信息科技 > 正文

    移动数据库同步技术在征稽系统中的应用

    时间:2021-04-09 08:00:39 来源:达达文档网 本文已影响 达达文档网手机站

    摘要:在移动计算环境中,人们通过数据同步机制利用无线或者移动设备处理和存储各种数据。本文研究了SQL Serve复制技术和基于XML的数据同步方式,并将两种同步复制方式进行了深入分析比较,研究出一种将两种方式结合同步方案,并应用于实际系统。

    关键词:移动数据库;复制;同步;XML

    中图分类号:TP274文献标识码:A 文章编号:1009-3044(2008)31-0778-03

    Application of Mobile Data synchronize in Charging Management System

    DU Juan, XIONG Yi-long

    (Department of Computer Science and Technology, Wuhan University of Technology, Wuhan 430063, China)

    Abstract: Based on data synchronization, people can process and store data in wireless devices or mobile devices in the mobile computing environment. The technology of data replication of mobile database and data synchronization based XML are researched in the article. Combination the two kinds of data synchronization ,gives out a new method and applied in practical System.

    Key words: mobile database; duplicate; synchronize; XML

    1 引言

    本文研究分布式水路交通规费征稽系统固定征稽与移动征稽相结合的方式,其中移动子征稽通过数据同步技术实现与固定征稽数据统一。众所周知,在传统的分布计算系统中,各个结点之间都是假定通过固定网络连接,并保持网络的持续连接性,而移动计算系统改变了这种假设条件。移动计算环境的一个显著特点是移动终端与服务器之间的连接是一种弱连接,即低带宽、长延迟、不稳定和经常性的断开。为了支持用户在弱环境下对数据库的操作,现在普遍采用乐观复制方法(Optimistic Replication或Lazy Teplication)。即移动端将需要的数据先复制到移动设备的存储介质上,形成移动节点上的本地数据库部分,在移动节点和网络断开连接时允许用户对本地缓存上的数据副本进行操作,待移动节点和网络重新连接后再与数据库服务器交换数据修改信息,并通过冲突检测和协调来恢复数据的一致性。本文提出了一种基于SQL Serve数据复制技术和XML数据传输结合实现移动数据同步的解决方案。

    2 数据同步业务模型

    一个理想的移动数据库复制应该是一种异步的多主副本复制,即系统允许移动主机在断连的情况下在本地副本上执行读写操作,从而造成系统短暂的不一致,重新连接时进行数据同步处理,将移动节点上所做的数据修改上传至固定网络上的主机,同时将固定主机副本上所做的修改下传到移动主机,从而使系统重新达到一致性的状态,上述过程称为同步处理过程。在此过程中,必须进行冲突处理,因为系统可能同时在多个副本上对同一数据对象执行了更新操作,于是产生了如何维护数据一致性问题,而这正是移动数据库系统的同步机制所要解决的。

    数据同步业务是一种支持两数据源间进行数据同步的机制,由于个人用来存放信息的电子设备种类繁多,而这些电子设备之间物理连接的方式也是多样的,例如:红外、蓝牙、GPRS、CDMA、电缆等。所以,数据同步业务不应该对具体承载方式进行约定。

    本文的实现采用了如图1所示的模型,在这个环境中固定网络相对于无线网络单元拥有更高可靠和安全性,将固定网络部分称为可信部分。整个系统由四类节点组成:

    1) 数据库服务器,由各主流商用数据库服务器组成。

    2) 固定客户端,通过固定网络直接和数据库服务器连接。

    3) 移动客户端,具有移动性的主机,经常与服务器断连,我们选择移动设备与网络连接时进行的操作,避免了因无线网络不通无法连接远程服务器导致的无限等待,提高了工作效率,同时减少网络通信所需的费用。

    4) 同步服务器,负责整个系统的同步。同步服务器是移动节点连接到固定网络的唯一接口,所有移动节点和中心数据库服务器之间的数据流都要通过同步服务器来传递。同步服务器在整个移动数据库系统的体系结构中处于中间服务层,是连接移动节点和固定网络的桥梁,也是整个系统的关键部件。正是由于同步服务器中间层的引入,使得整个系统具有较灵活的可扩充性。

    3 SQL Server数据复制技术

    一般的数据复制不需要保持实时完全一致,不同服务器上的数据同步有一个延时。源数据库的变化,不是立刻反应到其它数据库中,而是把产生变化的事务写入专门的分发数据库中(Distribution)。当这些事务累计到设定值时,由事务分发器(Distribution Task)把事务送到其它服务器中,由服务器再执行这些事务来保持源数据与拷贝数据的一致。分发数据库完成了一种缓冲的作用,当因网络或其他问题使复制不能完成时,源数据的变化会一直保存在分发数据库中直到问题解决再自动把所有保存的事务送出,并且复制两端的数据仍保持一致。这种方式使数据的复制有极大的自适应性和可靠性,最大限度减少用户的干预。

    在数据复制的过程中,复制组管理着复制过程中相关联的复制对象。通常,要创建并使用复制组来组织支持特定数据库应用程序必需的方案对象。在主站点(发布数据的站点)创建复制组后,就相当于发布了出版物,源站点服务器是数据复制的目的地,无条件地获得发布的出版物,并且接收从其它源站点传送过来的变化的数据。主站点在初始同步后,只是它具有管理的权限,可以删除复制对象,重新定义数据链路调,其本身和其它的站点是对等的关系。数据传输是双向工作时,它是一个对等的复制过程,而且是以推、拉的方式结合进行复制的,当数据复制过程完成后,复制对象就成为本地实际存储的表,表的结构和记录与源数据库一直,提高了本地自治的能力。进行实体化视图复制时,最小的复制单位可以是表记录的一部分,相当于对表中的数据进行了过滤。过滤数据有三种方法,即水平过滤、垂直过滤和水平垂直混合过滤。水平过滤就是包含表一部分列,是列的子集。这时,复制对象的内容只包含原表的可复制列。垂直过滤就是包含了表的一部分行,是行的子集,复制对象只包含原表的部分行,在对等复制中维护的是整个复制对象的信息,无法进行数据过滤。在复制过程中,如果允许多个站点可以修改数据,为了避免复制冲突,就可以采取过滤数据的方法,使不同的站点复制一个表中的不同部分中的数据。

    SQL Server能在不同节点间复制数据并自动同步这些节点的数据。用户可以在同一服务的不同数据库或不同的远程连接服务器之间复制数据。

    SQL Server数据复制基于“出版-订阅”,模式,该模式由以下组件构成:

    1) 发布服务器 (Publisher):发布服务器是使数据成为其他服务器复制时使用的服务器。发布服务器不仅是用以指定要复制哪些数据的服务器,同时还检测在事务复制过程中哪些数据发生了变化,并保留关于该站点上所有发布的信息。

    2) 分发服务器(Distributor):分发服务器是用于存储历史数据、事务以及元数据的服务器。分发服务器的功能根据执行复制类型的不同而不同。

    3) 订阅服务器(Subscriber):订阅服务器是接收复制数据的服务器,并管理数据的更新。根据复制类型和复制选项,订阅服务器还可以选择是将数据更改返回给发布服务器,还是将数据重新发布给其它订阅服务器。

    4) 发布(Distribution):发布是一个数据库内的一个或多个项目的就集合。

    5) 订阅 (Subscription):订阅是对要复制的一个数据副本或数据库对象的请求,它定义要接收哪些发布,以及在何时何处接收。

    为此, SQL Server提供了三种复制类型来满足不同环境中的应用需要。我们采用合并复制如图2所示,允许用户修改订阅服务器中的订阅数据,它能够自动监视订阅数据库中的数据变化,并定期将这些变化进行合并再把合并后的结果分发给所有订阅者,如果在合并过程中发现不同用户对数据所做的修改存在冲突时,合并代理程序将根据建立订阅时为订阅者所设置的优先级裁决哪个用户的修改有效。

    4 基于XML数据同步技术

    传统的分布式数据库系统中的数据同步与数据复制紧密相关,以SQL Server为例,它的数据同步系统是典型的分布式数据库同步系统。SQL Sever的数据复制是指在数据库之间对数据和数据库对象进行复制和分发并进行同步以确保其一致性的一组技术。复制一般分两步:首先将现有数据完全按照数据和数据库对象出现时的状态一次性地从发布服务器复制到订阅服务器上,基于XML的数据库数据同步的目的是在网络环境下实现不同数据库间自动地、实时地数据交换,以达到某一时间范围内数据的一致性。它对数据同步的定义和所要达到的数据一致的目的与分布式数据库系统中的数据同步一致。然而基于XML的数据库同步系统和传统分布式系统的数据库同步在应用环境和所面对的同步对象上又有所差别。如SQL Server专门用于在支持SQL Server同步协议的分布式数据库平台之间复制和同步数据,它的同步对象只能是SQL Server;数据库或可兼容的关系数据库。而基于XML的数据库同步要解决的是网络范围内已经存在的各种类型、各种版本的数据库平台之间进行数据的自动交换,同步对象具有更强的独立性和多样性。由于应用上的差别,二者的功能目标也就不同了。SQL Server数据同步的目标是要在SQL Server数据复制的构架下实现分布式的SQL Server数据库间的数据同步功能,实时性和准确性是其主要的衡量标准。而基于XML的数据库同步的目标是要能支持网络中最大范围的数据库之间的数据同步功能,对通用性,灵活性和安全性要求比较高。基于XML的数据传输方式主要有三个过程:XML文件的创建、XML文件的传输、XML文件的解析。

    1) XML文件的创建

    XML文件的创建主要是分为2步:XML架构和XML数据。

    2) XML文件的传输

    PC与PDA之间的数据传输可以使用存储卡形式、无线网络形式。无线网包含无线局域网、GPRS、CDMA、红外线等多种方式。本文中采取USB电缆直接连接。

    3) XML文件的解析

    不管哪一端接收到XML文件,首先需要对XML文件进行解析,分析出表名、表字段以及对应的记录值。通过分析记录中的更新标志字段,在数据库中对该记录进行相应的更新。

    5 数据复制与XML数据同步方式的结合

    基于上面分析两种数据同步方式,都是为了是实现移动设备与PC之间数据的一致性,但两种方式在实现和运行的过程中还有所不同,下面结合本系统开发实践,介绍下同步的控制方式不同,因为 SQL Server的数据同步是在分布式系统中运行的,所以采用的是由分发服务器集中控制同步的方式,如图3所示,各个移动站点订阅数据库。

    在基于XML的数据库同步中,由于网络中数据库的相对独立性和多样性,所以不适合进行集中控制,而采用的是同步代理控制方式,基于XML同步方式中,同步的过程主要是通过服务器的同步代理和客户端的同步代理完成,客户端向服务器发出同步请求,同步代理之间相互交互,然后通过XML作为中介,接受端解析XML数据,更新数据库表记录,从而达到数据的同步。

    由于网络条件的多样性,在整个移动计算空间中,不同的时间和地点连网条件相差十分悬殊。因此,同步技术应该提供充分的灵活性和适应性,提供多种系统同步方式和资源优化方式,以适应网络条件的变化。考虑实际数据传输上行链路的通讯代价与下行链路有很大的差异,这要求同步实现中能充分考虑这种差异,采用合适的方式来传递数据。网络状况好的情况主要采用SQL复制技术进行大量数据同步,并且结合SQL技术进行数据筛选,使传输到移动设备数据达到最小,实际情况中网络状况的不稳定性时,无法利用SQL Server数据复制机制,不能及时将移动设备中征稽系统所有信息传输到中心服务器,在这种情况下,采用XML传输文件同步方式,网络故障时我们把XML数据利用存储设备拷贝到实际中心服务器,在服务器端解析XML文件,把信息传输到服务器。

    6 结束语

    随着移动数据库应用的发展,我们可以使用移动计算数据技术等数字化手段完成稽查收费,但基础信息环节是必须通过物理性活动才能完成的,基础信息中心提供船舶,港口信息管理、运输物品以及市场分析和预测等服务,因此建立一套整合性的规费征稽系统是收费体系迈向信息化的基础建设. 本文通过分析移动的数据库同步复制应用,希望能推广移动数据库技术在信息收费领域的应用,这样,既可以实现高质量的收费管理,又可对长江流域的船舶缴费情况进行随时动态追踪查询,还可以根据所获知的信息进行分析和预测等. 随着移动数据库技术的发展,我国的水陆信息化建设水平得到更进一步提升。

    参考文献:

    [1] 何新贵,唐常杰,李霖,刘云生. 特种数据库技术[M].北京:科学出版社,2000.

    [2] 胡虚怀,郑若忠. 移动数据库及其关键技术计算机与网络[M],2000(5).

    [3] 黄子中,韩伟红. 移动数据库技术[J].上海微型计算机,1999(39):12-20.

    [4] 王珊,丁治明,张孝. 移动数据库及其应用[J].计算机应用,2000(9):20-30.

    [5] 钱文海,贺元启. 基于数据复制技术的移动数据库系统[J].计算机应用研究,2002(7):10-20.

    [6] Chrysanthis P K. Transaction Procession in a Mobile Computing Environment,Proceedings of IEEE workshop on Advances in Parallel and Distributed Systems,2002,10:77-82.

    [7] Byun S.,Monn,S. Resilient data management for replicated mobile database systems.Data and Knowledge Engineering,1999,29(1):43-55.

    • 生活居家
    • 情感人生
    • 社会财经
    • 文化
    • 职场
    • 教育
    • 电脑上网