基于关系型数据库进行网络化GIS数据生产的冲突处理方法与流程

文档序号:11919032阅读:549来源:国知局
基于关系型数据库进行网络化GIS数据生产的冲突处理方法与流程

本发明属于GIS地图数据采集、处理以及地图学技术领域,具体涉及一种基于关系型数据库进行网络化GIS(地理信息系统)数据生产的冲突处理方法。



背景技术:

现有的绝大部分基于关系型数据库进行GIS数据存储的地图数据生产系统只能支持单人作业,在工作量比较大的时候,为了提高生产效率,往往需要多人参与,通过划分工作区的方式,将数据划分为多个作业区域,然后各个作业员分别进行作业,最后再进行作业成果的接边与融合以提高生产效率,但是这种做法带来很多不良的后果:一方面,由于GIS数据通常都具有很强的网络拓扑关联关系,在划分作业区的时候可能会破坏这种关系,给作业区划分带来难度;另一方面,作业划分的时候需要先对数据进行切分后逐个拷贝,在切分和拷贝过程中很容易造成数据丢失、人工处理的质量也无法得到保证;最后,在数据接边合并的时候,接边处的数据对象可能同时被多个作业员编辑,造成处理结果的不一致,从而产生数据编辑的冲突(例如图2中,接边处的数据可能会产生冲突)。

在大规模的团队进行集体作业的时候,接边引起的操作对象冲突非常频繁,严重影响罪业效率。这种冲突产生的不一致例如:对象的形状修改不一致、对象的属性修改不一致、对象在A作业员一方被删除而B作业员被保留、对象被A作业员一方合并到其他对象等等不一致。



技术实现要素:

为了解决上述技术问题,本发明提供了一种基于关系型数据库进行网络化GIS数据生产的冲突处理方法。

本发明所采用的技术方案是:一种基于关系型数据库进行网络化GIS数据生产的冲突处理方法,其特征在于,包括以下步骤:

步骤1:创建作业数据库;

作业组长将作业组需要处理的GIS数据导入到主服务器的数据库中,并将数据库发布成作业数据库;

步骤2:划分工作区范围,针对每个工作区的数据库建立工作区作业库,并同时通过版本记录表,建立一个版本记录号,用来作为版本发展的基线;

步骤3:建立工作区数据库副本;

作业员按照工作区对应的地理空间范围,对GIS数据进行签入签出,签出数据到本地的数据库中,形成工作区数据库副本;

步骤4:执行作业,提交成果;

作业员对各自工作区内的GIS数据进行作业,同时记录每条数据记录作业的历史操作,记录的操作类型包括:新建、删除、属性编辑和属性值编辑前后的键值对、形状编辑和编辑前后的形状数据,作业完成后提交成果;

步骤5:主服务器对签入的数据进行比较,锁定冲突数据,执行冲突处理;

步骤6:主服务器扫描签入的数据,当所有作业员的作业成果均已签入后,删除各分区建立的工作区作业数据库的版本信息。

本发明能够允许多人对同一份GIS的原始数据进行作业,并解决因为地图“接边”造成的多个作业员编辑同一条记录,并形成统一的数据成果,通过作业区划分、作业数据库-临时作业库机制、冲突处理操作日志以及编辑锁定等机制解决网络化GIS数据生产的冲突处理问题,尤其适用于拓扑关联性强的GIS数据的生产环境。

附图说明

图1:本发明实施例的流程图;

图2:本发明背景技术中的作业区划分及“冲突数据”示意图。

具体实施方式

为了便于本领域普通技术人员理解和实施本发明,下面结合附图及实施例对本发明作进一步的详细描述,应当理解,此处所描述的实施示例仅用于说明和解释本发明,并不用于限定本发明。

本发明采用“作业库服务器-作业客户端”的作业方式:作业组长在专门的电脑/主服务器(简称为“数据服务器”)上建立待作业的GIS数据库(称为“作业数据库”),让作业员按照作业区间对应的地理空间范围对作业数据库进行划分,划分后对应区划范围的数据库成为“工作区作业库”,作业员对隶属于自己作业区间的GIS数据进行签入签出,签出数据到本地的关系型数据库当中;

本发明采用主副本作业机制:作业员按照作业区,将GIS数据签出到作业员客户端的本地关系型数据库,形成本地数据库副本(称为“工作区作业库副本”)。

本发明的多分支版本数据冲突对比与处理方法:数据服务器数据签出时,在数据服务器上为各个“工作区作业库”建立临时主版本,被签出的工作区数据库副本在客户端机器上分别建立各自的分支子版本;签入的时候对产生冲突的数据进行比较,依据比较结果作业员锁定冲突对象并对冲突数据进行处理后,再签入主数据库并删除临时版本。

请见图1和图2,本发明提供的一种基于关系型数据库进行网络化GIS数据生产的冲突处理方法,包括以下步骤:

步骤1:创建作业数据库;

作业组长将作业组需要处理的GIS数据导入到主服务器的数据库中,并将数据库发布成作业数据库;

此时,主服务器获取数据库的连接信息,将其分配给具有作业权限的组员。

步骤2:划分工作区范围,针对每个工作区的数据库建立“工作区作业库”,并同时通过版本记录表,建立一个版本记录号,用来作为版本发展的基线;

作业组长为作业员划分工作区,在地图上绘制工作区后,将工作区范围文件发布给各个作业员,作业员下载后,通过该范围自动签出对应范围内的GIS数据,凡是与该范围有交集的数据都会签出到作业员本地的关系型数据库当中。部分接边数据因为与多个范围相交,会被不同作业员缓存到各自的作业客户端当中。

步骤3:建立工作区数据库副本;

作业员按照工作区对应的地理空间范围,对GIS数据进行签入签出,签出数据到本地的数据库中,形成“工作区作业库副本”;

划分范围时,主服务器的数据库对每个范围文件记录编号,例如R001、R002、…RN(01…N代表范围的编号),同时对数据库中每个范围的数据建立临时“主版本”,例如R001-V001,在作业员C001、C002访问主服务器签出“工作区作业库”的数据(下载下来作为副本数据)后,签出的副本数据的版本号会增加作业员标识形成“子版本”,例如作业员C001签出的数据记录,版本为R001-V001-C001,作业员C002签出的数据记录,版本为R001-V001-C002。

步骤4:执行作业,提交成果;

作业员对各自工作区内的GIS数据(“工作区作业库副本”)进行作业,作业完成后提交成果;

步骤5:主服务器对签入的数据进行比较,锁定冲突数据,执行冲突处理;

作业员对各自范围内的GIS数据进行作业,作业完成后开始提交,假设作业员C001首先完成准备将GIS数据成果签入主服务器时,主服务器中记录到数据库对比当前“主版本”一致,准许签入。随后作业员C002签入,主服务器会告知已有作业员签入,开始对签入的数据进行比较,发现两个作业员计算机上的数据不一致时,通知作业员C001、C002发现数据冲突。此时,主服务器端的冲突数据记录以及作业员“工作区作业库副本”中的副本数据都会被打上“数据冲突”的标记。主要冲突比较方法为:

(1)记录数差异比较,逐一对所有记录是否在R001-V001-C001、R001-V001-C002两个副本“子版本”当中均存在进行比较。如果在其中一个副本“子版本”中不存在,向两个作业员发送数据冲突处理消息;根据数据实际情况,如果存在,则允许恢复该数据进行处理,如果不存在,则直接提交处理成功的消息。

(2)记录形状差异比较,逐一对所有记录的形状节点在两个副本“子版本”当中是否完全一致进行比较。如果不一致,向两个作业员发送数据冲突处理消息。

(3)记录属性值比较,逐一对所有记录的每个属性值在两个副本“子版本”当中是否完全一致进行比较。如果不一致,向两个作业员发送数据冲突处理消息。

收到通知后,其中一个作业员接收处理任务后,系统自动执行“锁定”操作,将冲突数据锁定,此时作业员C001收到通知,冲突数据被他人锁定,无法编辑。

执行冲突处理的作业员开始对冲突数据记录进行编辑,系统扫描发现该数据记录是否与其他数据记录存在拓扑关联,如果存在,则从主服务器下载关联数据,被下载的关联数据作为处理参考,对冲突数据进行编辑。但是关联数据作业员无编辑权限。

对冲突数据的处理包括完整性冲突处理、属性一致性冲突处理、形状一致性冲突处理和拓扑关系冲突处理;

完整性冲突,指同一条数据记录在工作区A被保存,但是在工作区B中被删除,导致的冲突;对此类冲突,负责编辑的作业员将回溯作业员的操作记录,决定是否保存该数据记录,以及保存哪一次操作后的数据成果;

属性一致性冲突,指同一条数据记录的同一属性在工作区A、工作区B中都经过编辑,但是编辑的属性值不一样所导致的冲突;对此类冲突,负责编辑的作业员将对比两个作业员编辑的结果,做最后一次确认,选择其中一个作为正确的数据成果或者做最终编辑;

形状一致性冲突,指同一条数据记录的形状在工作区A、工作区B中都经过编辑,但是编辑的形状不一样(例如,作业区A中此记录的形状的某些节点被删除,但是作业区B中没有进行删除操作)所导致的冲突。对此类冲突,负责编辑的作业员将对比两个作业员编辑的结果,做最后一次确认,选择其中一个作为正确的数据成果或者做最终编辑。

拓扑关系冲突,指同一条数据记录经过编辑提交后,编辑前后,与其他数据记录的拓扑关系发生了变化;此类冲突,由负责编辑的作业员对最终数据成果进行拓扑检查后,统一编辑;拓扑关系冲突检查后不再进行多作业员处理。

冲突数据处理完毕后,执行冲突处理的作业员再次提交数据成果,并向主服务器发送“冲突处理完成”消息。

步骤6:主服务器扫描签入的数据,当所有作业员的作业成果均已签入后,删除各分区建立的临时作业数据库的版本信息。

应当理解的是,本说明书未详细阐述的部分均属于现有技术。

应当理解的是,上述针对较佳实施例的描述较为详细,并不能因此而认为是对本发明专利保护范围的限制,本领域的普通技术人员在本发明的启示下,在不脱离本发明权利要求所保护的范围情况下,还可以做出替换或变形,均落入本发明的保护范围之内,本发明的请求保护范围应以所附权利要求为准。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1