当前位置: 首页 > 专利查询>复旦大学专利>正文

标记回溯的一致性维护方法技术

技术编号:2849978 阅读:223 留言:0更新日期:2012-04-11 18:40
本发明专利技术属于计算机支持的工作技术领域,具体为一种多副本数据的一致性维护方法。包括:程序的控制算法、回溯算法和操作执行算法。一致性维护方法分为两部分:对本地用户操作的执行,对异地用户操作的执行。前者的执行流程为:程序对本地的数据副本执行操作,修改本地的状态向量,然后将本地的状态向量作为操作的时间戳,附着在操作上,广播给所有其它用户;后者的执行流程为:控制算法收到异地用户传输过来的操作,当操作满足执行条件时,根据操作附着的时间戳,回溯本地数据副本的地址空间到其产生时刻,在这个地址空间上,操作可以直接执行,如果恢复地址空间以待下一个操作。本发明专利技术可以使多个用户实时地编辑同一数据对象,且不会相互影响。本发明专利技术可自动处理用户之间的操作冲突,在各个用户间实现数据的一致性维护。

【技术实现步骤摘要】

本专利技术属于计算机支持的协同工作(Computer Support Cooperative Work)
,具体涉及一种,该方法可以使得多个用户通过已有的应用软件实时地编辑同一数据对象,通过一种无锁的实时协同技术,多个用户间不会相互影响,本专利技术可以自动处理用户之间的操作冲突,在各个用户间实现数据的一致性维护。
技术介绍
“计算机支持的协同工作”(CSCW,Computer Support Cooperative Work)可以定义为在计算机技术支持的环境中(即Computer Support),一个群件协同工作完成一项共同的任务(即Cooperative Work)。它的目标是要设计各种各样的协同工作的应用系统。CSCW的产品可以成为群件(GroupWare)。CSCW与群件有细微差别,CSCW是一门学科,而群件是一具体的技术或实体,具体实现的CSCW系统被认为是群件一类的实例,但有时两个术语也被混用。CSCW的形成和发展有一定的必然性。首先,在现代的信息社会中,人的生活方式和劳动方式具有群体性,交互性,分布性和协作性等特点。其次,计算机技术(包括并行及分布处理技术,多媒体技术,数据库技术,认知科学等等)、通信及计算机网络技术的飞速发展,构成了CSCW实现的技术基础。另外,并行工程(Concurrent Engineering)这一概念的提出也起到了重要的作用。并行工程是集成、并行设计产品及相关过程的系统方法,它强调Team Work(组工作),而对Team Work的技术支持是和CSCW的研究密切相关的。因此可以说CSCW是在现代社会中,以人们协同工作方式为背景的,以计算机和通信技术的发展和融合为基础,具有广泛的应用领域为前提条件而自然形成的。它涉及到众多的学科领域,如计算机,管理学,通信,分布系统,人工智能,社会学,心理学,组织理论等等。CSCW的目的就是在计算机环境下提供对人们群体工作的支持,因此说,通信、合作、协调是CSCW的三要素。CSCW的基础是通信,自然的组通信发生在地理上是分布的用户之间(本地通信可以认为是分布系统的特例),因此网络通信是至关重要的,并且在合作环境中处理多媒体文件传输和数据控制是很复杂的。而基于计算机的或者以计算机为媒体的通信,并没有完全和其他的通信形式相结合。异步的基于文本的电子邮件和公告板与同步的电话和面对面的交谈是不同的人们不能在任意的两个电话号码之间传送文件。把计算机处理技术和通信技术结合起来可以帮助解决这个问题。CSCW的形式是合作,与通信相似,合作是小组活动的重要内容。在群体活动中,任意一项活动都必须是多人合作完成。有效的合作要求人们必须共享信息。但是当前的信息系统尤其是数据库系统在很多情况下把人们互相隔离开。比如,当两个设计人员使用同一个CAD数据库进行操作時,他们不可能同时修改同一个设计物体的不同部分并且知道他的合作者所做的修改;他们必须通过互相检查才能知道对方所做的工作。许多任务都需要良好的共享环境,可以在适当的时候友好的通知群组的活动信息以及各个用户的活动。CSCW的关键是协调。如果一个组的活动是协调的,那么它的通信和合作将会大大得到加强。一个不能很好的进行协调的工作小组,它的成员之间势必会经常发生冲突和重复劳动。当几个部分共同组成一个任务时,协调本身被看作是一个必不可少的活动。当前的数据库应用提供了对共享对象的访问,然而大多数软件工具只提供对单用户的支持,对支持小组的协调这一重要功能所做的却很少。随着企业及机构全球化意识(面向全球范围提供其产品或服务)的加强,能够支持此协作的系统将在规范管理、提高效率、降低成本等方面发挥无可替代的作用,因此也将成为必不可少的信息设施。,这种走向大规模协作的趋势随着若干重要应用模式的出现而逐渐明朗。这些应用模式包括电子业务、虚拟组织、协同建筑、远程教育、远程医疗等等,我们相信这些应用模式将对未来社会人们的工作、学习与生活等产生深远的影响,著名市场分析机构IDC每两年都会发布一次协同软件的市场分析和预测,数据指出,早在2001年美国协同软件市场份额已经达到3%至5%,最近一次的报告指出,到2009年全球TCA市场规模将达到75亿美元。计世资讯(CCW Research)发布的报告显示,早在2004年中国协同软件市场规模已达到5.89亿元,其中协同工具软件市场规模在0.6亿元左右,协同平台及应用软件市场5.29亿元左右;协同软件市场主要集中在华东、华南以及华北的三个区域,其中华东区域占全部市场的26.76%。2004年,中国协同工具、平台及应用软件市场销售总额超过5.89亿元人民币。从2000年开始,随着信息化的推进、互联网和IT应用的普及,中国协同软件市场逐渐形成。尤其是电子邮件日趋成为企业日常经营管理中重要的沟通工具之后,协同软件市场逐渐成为应用软件市场的一个重要组成部分。预期2004~2008年,协同软件市场将以34.45%的年复合增长率发展,到2008年,市场总额将达到19.26亿元。群件是CSCW领域的一个重要分类,即支持人们进行协同工作的软件系统。组编辑是群件应用领域一种。它允许多个用户通过网络同时参与一个共享数据对象的编辑和修改。组编辑并不仅仅局限于文本,还可以应用于各种类型数据对象的协同修改(文字、图形,媒体等),是维护多副本数据对象一致性的一个重要技术。组编辑技术研究一直是CSCW领域的顶级国际会议ACM CSCW和ACM Group上的重要内容,专门的研讨会也已经召开了五届。组编辑的相关技术也已经得到了广泛的应用,如基于MS Word/MS PowerPoint的两个支持多用户组编辑的系统已经被实现。组编辑一个最基本的目标是隐藏用户对网络延迟的感受。通过在每个用户端维护一个数据副本,实现对本地操作的立即响应。于是一致性维护是组编辑中最主要的挑战之一。在过去的二十年中,许多相关的技术也得到了长足发展,但是一致性维护方面的许多难题仍然没有得到完善的解决。目前国际上在一致性维护问题上,大都着眼于操作转换的方法。但是操作转换方法在解决一致性维护的若干难题以及对Undo操作的支持方面仍然存在着很大的困难。
技术实现思路
本专利技术的目的在于提出一种基于。本专利技术提出的基于标记回塑的一致性维护方法,是要构建一个应用程序的一致性维护引擎,在该引擎中包括程序的控制算法、回溯算法和操作执行算法。引擎中还包括一个本地的状态向量维护方法和广播方法。一致性维护方法分为两部分对本地用户操作的执行,对异地用户操作的执行。前者的执行流程为程序对本地的数据副本执行操作,修改本地的状态向量,然后将本地的状态向量作为操作的时间戳,附着在操作上,广播给所有其它用户;后者的执行流程为控制算法收到异地用户传输过来的操作,当操作满足执行条件时,根据操作附着的时间戳,回溯本地数据副本的地址空间到其产生时刻,在这个地址空间上,操作可以直接执行,如果恢复地址空间以待下一个操作。本专利技术可以使得多个用户实时地编辑同一数据对象,通过一种无锁的实时协同技术,多个用户间不会相互影响,本专利技术可以自动处理用户之间的操作冲突,在各个用户间实现数据的一致性维护。下面先介绍一些相关的基本概念。组编辑是群件应用领域一个重要分类。它允许多个用户通过网络同时参与一个本文档来自技高网
...

【技术保护点】
基于标记回溯的一致性维护方法,其特征在于构建一个应用程序的一致性维护引擎,该引擎中包括程序的控制算法、回溯算法和操作执行算法,还包括一个本地的状态向量维护方法和广播方法,使得多个用户实时地编辑同一数据对象,通过一种无锁的实时协同技术,多个用户间不相互影响,从而自动处理用户之间的操作冲突,在各个用户间实现数据的一致性维护。

【技术特征摘要】
1.基于标记回溯的一致性维护方法,其特征在于构建一个应用程序的一致性维护引擎,该引擎中包括程序的控制算法、回溯算法和操作执行算法,还包括一个本地的状态向量维护方法和广播方法,使得多个用户实时地编辑同一数据对象,通过一种无锁的实时协同技术,多个用户间不相互影响,从而自动处理用户之间的操作冲突,在各个用户间实现数据的一致性维护。2.根据权利要求1所述的一致性维护方法,其特征在于所述控制算法是对异地用户操作的一个执行流程;当收到一个异地用户操作之后,如果操作满足操作的执行条件,则引擎将操作传送给控制算法执行,控制算法首先根据操作附着的时间戳,调用回溯算法回溯本地数据副本的地址空间,然后根据操作类型执行该操作,操作执行完成之后根据本地的状态向量维护方法修改本地的状态向量,最后恢复本地数据副本的地址空间,以待下一个操作的执行。3.根据权利要求1所述的一致性维护方法,其特征在于所述引擎中的回溯算法是根据指定的时间戳,回溯本地数据副本的地址空间,回溯算法考察数据副本中的每个对象节点,对于其中某个对象节点,针对这个对象节点的操作,设置一个计数器,对于一个因果前继的操作,如果操作的意愿是保留该对象节点,则将计数器加一;如果操作的意愿是删除该节点,则计数器减一;最后如果插入操作为因果前继且计数器为0,则设置该节点为有效,否则设置该节点为无效;综合所有对象节点的有效/无...

【专利技术属性】
技术研发人员:顾宁杨江明张琪炜邵斌
申请(专利权)人:复旦大学
类型:发明
国别省市:31[中国|上海]

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

1