一种维护文档编辑数据一致性的方法技术

技术编号:20546077 阅读:25 留言:0更新日期:2019-03-09 19:00
本发明专利技术公开了一种维护文档编辑数据一致性的方法,所述方法首先保持协同编辑器中OT组件中高级控制变换算法不变,然后通过转换函数扩展局部化以达到降低复杂性,包括选择SDVS单显示版本,最后更新转化规则。在Update生成时分配给其新值的优先级值称为此操作的初始优先值,基于PAS,定义用于冲突更新的单个显示版本效果(SDVE)。本发明专利技术提出一致MVSD技术,扩展了OT技术,使得在OT技术基础上,多人用户可以同时操作文档对象,对对象进行插入,删除,特别是更新(updates)操作,而能确保数据完整性和一致性。

A Method of Maintaining Data Consistency in Document Editing

The invention discloses a method for maintaining the consistency of document editing data. The method first keeps the high-level control transformation algorithm of OT components in the cooperative editor unchanged, then extends the localization of the transformation function to reduce the complexity, including selecting SDVS single display version, and finally updating the transformation rules. The priority value assigned to its new value at the time of Update generation is called the initial priority value of this operation. Based on PAS, a single display version effect (SDVE) for conflict updates is defined. The invention proposes a consistent MVSD technology, which extends OT technology, so that on the basis of OT technology, multiple users can simultaneously operate document objects, insert and delete objects, especially updates, and ensure data integrity and consistency.

【技术实现步骤摘要】
一种维护文档编辑数据一致性的方法
本专利技术属于文本编辑转化,具体涉及一种维护文档编辑数据一致性的方法。
技术介绍
随着IT技术和信息化普及程度的提高,个人和组织机构等越来越需要进行资源共享、办公自动化以及信息传递等,这也很大程度上提高了工作效率。但是随着个人电脑和手机终端使用的普及,工作任务的增加,经常存在多人同时撰写一份文档的情况,以便在不同地理位置的多个用户可以实时对一份共享文档进行浏览和编辑,从而使用户感觉不到地理位置上的差异和时空分隔的障碍,为用户节省大量的时间和精力,最终提高用户群体的工作效率。文档处理软件是应用最广泛的计算机应用之一,但是现有的文档处理软件都不能支持实时编辑。与纯文本编辑器相比,文档处理软件具有更丰富的数据类型(文本、图形、图像等)、更复杂的文档结构和更全面的编辑操作。除了支持对象创建和删除,文档处理软件还需要支持用户对象更新属性等操作。操作转换(OTS)是协同系统中数据一致性维护技术,用来支持多个用户同时插入和删除文本文档中的字符的技术。此技术不需要对其他用户进行限制,而能达到在系统里实现系统数据一致性,OT已经成为协同文本编辑器的一致性维护技术的选择。本专利技术在维护文档编辑一致性的过程中包括采用高级算法,该算法为LTranControl,是Sun(SUNCHENGZHENG)提出且公开的现有技术。
技术实现思路
专利技术目的:针对现有技术文档编辑的不便和差异性问题,本专利技术提供一种维护文档编辑数据一致性的方法。技术方案:一种维护文档编辑数据一致性的方法,包括如下步骤:(1)保持协同编辑器及其操作系统中高级控制变换算法不变和设置转换函数;(2)通过转换函数扩展局部化,包括选择SDVS单显示版本;(3)更新转化规则。进一步的,步骤(1)协同编辑器包括高级控制变换算法和低级变换函数,在高级控制算法不变的基础上,设置新的转换函数。进一步的,所述的高级控制算法过程及实现步骤如下:(1)如果所有终端用户执行同一组操作,各终端上的数据拷贝是一样的;(2)因果关系维持:对于任何操作O1和O2操作对,如果O1->O2,在所有终端用户,O1操作先于O2操作;(3)意图关系维持:对于任何操作O,在其它协同对象终端上执行操作O得到的结果同在本地终端上操作O得到一样的结果。(4)满足以上条件的操作能保持数据一致性结果,不满足以上三个条件即要进行执行变化算法。进一步的,步骤(2)单显示版本为SDVS,包括设置优先级分配方案,更新每个新旧属性值的优先值,其具体步骤如下:(21)设置优先级:在本地站点创建并执行更新操作时,将新值参数定义为优先级序列中可用的当前最高值,其旧值为最低优先级值;(22)设置单一显示版本:将待编辑文档中相互冲突的数据设置更新,包括以任何顺序执行更新操作,且操作之后在单个显示对象版本的组合结果在更新集合中其中值初始优先值最高,最后显示更新操作结果;(23)转换更新获得SDVE确定的值。进一步的,步骤(22)在Update生成时分配给其新值的优先级值设置为此操作的初始优先值,基于PAS定义用于冲突更新的单个显示版本效果。更进一步的,步骤(3)包括在先执行低初始优先值的更新,然后执行具有高初始优先值的更新,将高初始优先值更新后的新值广播到低优先值,或清空低操作新值得到正确的SDVE值。有益效果:本专利技术与现有技术相比,其显著的效果在于:第一、本专利技术提出一个OT的扩展,操作命令包括用于协同文字处理的插入和删除操作,以及用于支持通用的更新操作(Updates),解决并发更新之间的冲突;第二、设计了一种新的多版本单显示(MVSD)技术,并将其集成到整个OT框架中,并且OT扩展不仅与文字编辑相关,而且还可以扩展到其它类似领域,包括具有交互式富媒体等相关其它应用,适用性强;第三、通过OT扩展技术(MVSD),可以确保在多人环境下,文本协同编辑数据保存完整性和一致性。具体实施方式为了详细的说明本专利技术公开的技术方案,下面通过具体实施例做本专利技术做进一步的阐述。本专利技术的重点是研究转换通用更新操作所涉及的技术问题,并提出一个解决方案。协同编辑器中的OT组件是一个复杂的系统,分为两层:高级控制变换算法,以及低级变换函数。根据它们的并发关系,控制转换算法负责和确定哪些操作必须转换;转换函数根据操作类型、参数和其它关系,决定如何在一个操作上转换为另一个操作。在支持更新(Updates)扩展OT操作,我们的策略是保持高级控制算法不变,但添加新的跟更新相关的转换函数,这种策略允许扩展局部化以达到降低复杂性。然而,变换函数的设计并不完全独立于控制算法,不同的控制算法对变换函数有不同的要求,并且变换函数必须适合于相应的控制算法的框架。此外,由于OT是支持一致性维护的核心,因此用于更新的转换函数的设计必须同时考虑一致性维护的需要。本专利技术提出一致MVSD技术,扩展了OT技术,使得在OT技术基础上,多人用户可以同时操作文档对象,对对象进行插入,删除,特别是更新(updates)操作,而能确保数据完整性和一致性。MVSD技术及MVSD的基本思想是:当对象由于冲突操作需要更新(Updates)时,应在内部维护目标对象多个版本,但是在用户界面上仅显示一个版本。而且,可以通过激活和调用多版本管理方案来逐个显示对象的所有版本。MVSD的主要优点是它能完全融合进OT框架中。(1)OT下的多版本维护MVM(Multi-versionmaintenance)因为在MVSD中每次只显示一个版本,所以不需要在文档中创建实际对象的多个版本,只要在内部维护用于备选版本的足够多信息,并且在系统中存在随时能动态创建和显示任何版本的机制。在一个文档中每次创建一个版本的情况下,我们可以为同一对象的所有版本在OT线性地址空间中保持一个位置,并在不同的时间将备选版本逐个映射到相同的位置。这种策略允许留更新操作(Updates)属性,而不会影响到OT线性空间,进而保持了Update相关转换函数的简单性。在不同的时间使用单一位置引用来识别多个版本。以上方法及原理意味着我们必须保持文档之外的其他对象版本状态信息。在OT框架中,有一个历史缓冲器(HB)用于保存序列中的所有执行操作,也包括当前状态。所有对象可以通过顺序地将HB中的操作应用到初始文档状态来确定。换言之,HB是用于保持文档状态以及对象状态的OT的数据结构。因此,使用HB来维护多个版本的状态信息是很自然的,这可以通过在HB中保存所有冲突操作以保持解决数据不一致的问题。(2)单显示版本选择SDVS(Singledisplayedversionselection)除了在OT框架中维护和标识多个版本的问题之外,另一个技术问题是如何确保在所有协同站点上对单个显示版本上进行一致的选择。这个问题通过设计优先级分配方案来解决,它为每个新旧属性值的更新优先值。我们要求按照因果有序的方式分配不同的更新操作“Updates”新的值。在分布式协同系统中生成这种优先级的一种方法是使用由操作状态向量(StateVector)和操作站点标识符的排序关系。简单来说本专利技术文使用正整数(从0到无限)来表示因果排序的优先值。定义1:优先级分配方案(PAS):当在本地站点创建并执行更新操作(Update)时,其新值参数就是优先级序列中可用本文档来自技高网...

【技术保护点】
1.一种维护文档编辑数据一致性的方法,其特征在于,包括如下步骤:(1)保持协同编辑器及其操作系统中高级控制变换算法不变和设置转换函数;(2)通过转换函数扩展局部化,包括选择SDVS单显示版本;(3)更新转化规则。

【技术特征摘要】
1.一种维护文档编辑数据一致性的方法,其特征在于,包括如下步骤:(1)保持协同编辑器及其操作系统中高级控制变换算法不变和设置转换函数;(2)通过转换函数扩展局部化,包括选择SDVS单显示版本;(3)更新转化规则。2.根据权利要求1所述的一种维护文档编辑数据一致性的方法,其特征在于,步骤(1)协同编辑器包括高级控制变换算法和低级变换函数,在高级控制算法不变的基础上,设置新的转换函数。3.根据权利要求2所述的一种维护文档编辑数据一致性的方法,其特征在于,所述的高级控制算法过程及实现步骤如下:(1)如果所有终端用户执行同一组操作,各终端上的数据拷贝是一样的;(2)因果关系维持:对于任何操作O1和O2操作对,如果O1->O2,在所有终端用户,O1操作先于O2操作;(3)意图关系维持:对于任何操作O,在其它协同对象终端上执行操作O得到的结果同在本地终端上操作O得到一样的结果。(4)满足以上条件的操作能保持数据一致性结果,不满足以上三个条件即要进行执行变化算法。4.根据权利要求1所述的的一种维护...

【专利技术属性】
技术研发人员:杨传耀孙成政黄英
申请(专利权)人:南京垂宇网络科技有限公司
类型:发明
国别省市:江苏,32

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1