本发明专利技术公开了一种基于XML的空间数据增量同步更新方法。用于建立空间数据双向同步机制,实现多副本数据近似一致性维护,解决普通的数据同步方法不支持离线环境,不支持异构数据库以及同步对象粒度、同步过程不可自由控制等问题。利用.NET、XML等技术作为实现空间数据同步更新方法的基础,包括变更记录收集模块、变更数据组织模块、变更数据冲突仲裁模块、变更数据同步模块,四大功能模块协同作用实现空间变更数据的监控、组织和同步,达到空间数据的增量同步更新。本发明专利技术技术实现方法简单,对空间数据进行了有效地管理,计算机自动处理,人机交互少,节约了时间,提高了工作效率,在数据一致性维护领域中应用前景非常广泛。
【技术实现步骤摘要】
本专利技术属于空间数据管理
尤其涉及一种基于XML的空间数据增量同步更新方法。
技术介绍
随着空间数据库的发展及普及,我国各类空间数据库的建设取得了很大的成就, 尤其是多节点空间数据库模式在政府、企事业单位等部门的基础地理信息平台系统中得到了广泛的应用。在多节点空间数据库系统中,如何保证各个节点空间数据的一致性始终是基础地理信息平台中的关键问题。目前,美国著名的GIS软件厂商ESRI公司提供了基于Geodatabase复制技术的商业化解决方案,它能够在两个或者多个Geodatabase之间实现数据的复制与同步。 Geodatabase复制技术(Geodatabase Replication)是建立在版本化数据的基础上,支持拓扑与网络等完全的数据模型,并且能够在不同类型的数据库之间实现数据的复制与同步;但Geodatabase Replication技术也存在如资源消耗过大,需要连通网络环境,且同步数据库对象粒度不可自由控制等缺陷。另外,国内一些学者也对数据同步这个难题进行了相关的研究,见陈珉.分布式空间数据库主动数据更新研究.博士学位论文,武汉大学,2004 ; 周春莲.基于时间戳的数据同步技术实现研究.硕士学位论文,南昌大学,2009 ;张坤,刘士彬,彭海龙.空间数据库双向按需同步方案的研究与实现.遥感信息,2010 (001)99-102; 这些学者采用触发器机制、时间戳、消息等机制研究了数据同步技术,这些方法在网络连通的环境下可以正常工作,但在一些网络条件较差的环境中,如外业环境、移动环境等,就无法正常工作了。随着3G网络的建设,未来的网络条件将会得到改善,由于空间数据量较大, 仍然无法满足实际中的应用。由于多用户终端用户无法经常连接网络和在离线环境下仍然需要对数据进行操作,这就导致了终端用户与服务器中数据不一致,因此需要有空间数据冲突仲裁机制的同步策略来维持数据的一致性。传统的空间数据同步方案一般都是在网络连通的环境下进行数据同步更新,不支持离线环境,且存在同步空间数据对象粒度、同步过程均不可自由控制等缺陷,另外在同步过程中也不具备有效的冲突仲裁机制来维护空间数据的一致性,不仅应用领域有限,而且又费时费力且易出错。
技术实现思路
本专利技术的目的是克服现有技术的不足,提出一种基于XML的空间数据增量同步更新方法。基于XML的空间数据增量同步更新方法包括如下步骤1)从服务器上的变更记录收集功能模块监控从服务器上空间数据的所有变化,并将变化的信息记录到辅助空间信息变化表中;2)从服务器上的变更数据组织功能模块根据用户配置,结合数据库变更摘要辅助表中的记录信息,附加上同步动作和表名信息,将变更数据组织为待交换的XML数据文件,并将它发送给主服务器;3)在主服务器收到步骤2)中的XML数据文件后,则直接调用变更数据冲突仲裁功能模块,对变更的数据进行冲突检测,并根据设定的冲突消除规则进行自动消除,对于不符合规则的冲突标记为人工处理,最终实现冲突数据的消除;4)主服务器在完成步骤3)中的冲突仲裁后,则进入变更数据同步功能模块,根据变更数据的变化类型,分别执行不同的同步操作,最终达到主从服务器上的空间数据一致性。所述的变更记录收集功能模块为从服务器监控空间副本数据的所有变化,并将变化的信息记录到辅助空间信息变化表中,需要记录的数据包括变更的图层,变更要素的全球唯一标识码,要素的类型即点状、线状、面状,要素变更的动作,记录产生的时间。所述的变更数据组织功能模块为当完成变更记录收集任务时,从服务器上的变更数据组织模块根据用户配置,结合数据库变更摘要辅助表中的数据信息,附加上同步动作和表名信息,将变更数据组织成XML文件,最后,将该XML文件、元数据文件及与空间要素关联的其他数据按规则过滤打包压缩、并增加MD5验证串处理,并发送给主服务器。所述的变更数据冲突仲裁功能模块为主服务器在接收到XML同步数据文件后, 会对文件中的数据进行冲突检测,空间数据冲突的类型包括数据增加冲突、数据更新冲突和数据删除冲突,识别每一种冲突,并设定相应冲突的自动维护的规则,对于符合规则的冲突设置自动处理,否则设置为人工处理,报告该冲突,交由执行数据合并操作的用户做人工处理。所述的变更数据同步功能模块为在处理冲突数据之后,从服务器会根据变更数据的变化类型,分别执行不同的同步操作,最终达到主从服务器上的空间数据一致性。本专利技术与现有技术相比具有的有益效果1)实现了多副本空间数据的一致性同步,该方法具有支持离线和在线双重环境,支持异构数据库优点,是一个透明的、可扩展的、可控制的、细粒度的数据同步技术。2)在空间数据同步过程中进行了数据冲突仲裁,避免了数据合并的错误,保证了数据的正确性和一致性。3)本专利技术技术实现方法简单,数据增量同步更新,执行效率高。 附图说明图1为本专利技术中变更摘要辅助表结构示意图; 图2为本专利技术中空间数据同步的模型图3为本专利技术中空间数据冲突检测流程图。具体实施例方式基于XML的空间数据增量同步更新方法包括如下步骤1)从服务器上的变更记录收集功能模块监控从服务器上空间数据的所有变化,并将变化的信息记录到辅助空间信息变化表中;2)从服务器上的变更数据组织功能模块根据用户配置,结合数据库变更摘要辅助表中的记录信息,附加上同步动作和表名信息,将变更数据组织为待交换的XML数据文件,并将它发送给主服务器;3)在主服务器收到步骤2)中的XML数据文件后,则直接调用变更数据冲突仲裁功能模块,对变更的数据进行冲突检测,并根据设定的冲突消除规则进行自动消除,对于不符合规则的冲突标记为人工处理,最终实现冲突数据的消除;4)主服务器在完成步骤3)中的冲突仲裁后,则进入变更数据同步功能模块,根据变更数据的变化类型,分别执行不同的同步操作,最终达到主从服务器上的空间数据一致性。所述的变更记录收集功能模块为从服务器监控空间副本数据的所有变化,并将变化的信息记录到辅助空间信息变化表中,需要记录的数据包括变更的图层,变更要素的全球唯一标识码,要素的类型即点状、线状、面状,要素变更的动作,记录产生的时间。所述的变更数据组织功能模块为当完成变更记录收集任务时,从服务器上的变更数据组织模块根据用户配置,结合数据库变更摘要辅助表中的数据信息,附加上同步动作和表名信息,将变更数据组织成XML文件,最后,将该XML文件、元数据文件及与空间要素关联的其他数据按规则过滤打包压缩、并增加MD5验证串处理,并发送给主服务器。所述的变更数据冲突仲裁功能模块为主服务器在接收到XML同步数据文件后, 会对文件中的数据进行冲突检测,空间数据冲突的类型包括数据增加冲突、数据更新冲突和数据删除冲突,识别每一种冲突,并设定相应冲突的自动维护的规则,对于符合规则的冲突设置自动处理,否则设置为人工处理,报告该冲突,交由执行数据合并操作的用户做人工处理。所述的变更数据同步功能模块为在处理冲突数据之后,从服务器会根据变更数据的变化类型,分别执行不同的同步操作(具体内容如下表所示),最终达到主从服务器上的空间数据一致性。权利要求1.一种基于XML的空间数据增量同步更新方法,其特征在于它的步骤如下1)从服务器上的变更记录收集功能模块监控从服务器上空间数据的所有变化,并将变化的信息记录到辅助空本文档来自技高网...
【技术保护点】
【技术特征摘要】
【专利技术属性】
技术研发人员:杜震洪,刘仁义,张丰,常磊,侯志通,
申请(专利权)人:浙江大学,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。