CN110162531A - 一种分布式并发数据处理任务决策方法 - Google Patents

一种分布式并发数据处理任务决策方法 Download PDF

Info

Publication number
CN110162531A
CN110162531A CN201810166885.0A CN201810166885A CN110162531A CN 110162531 A CN110162531 A CN 110162531A CN 201810166885 A CN201810166885 A CN 201810166885A CN 110162531 A CN110162531 A CN 110162531A
Authority
CN
China
Prior art keywords
task
conflict
data
concurrent
list
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201810166885.0A
Other languages
English (en)
Other versions
CN110162531B (zh
Inventor
江晓
李斌
郭威
王聿隽
孙浩铭
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shandong Heng Hao Information Technology Co Ltd
Original Assignee
Shandong Heng Hao Information Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Shandong Heng Hao Information Technology Co Ltd filed Critical Shandong Heng Hao Information Technology Co Ltd
Priority to CN201810166885.0A priority Critical patent/CN110162531B/zh
Publication of CN110162531A publication Critical patent/CN110162531A/zh
Application granted granted Critical
Publication of CN110162531B publication Critical patent/CN110162531B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/23Updating
    • G06F16/2308Concurrency control
    • G06F16/2336Pessimistic concurrency control approaches, e.g. locking or multiple versions without time stamps
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/23Updating
    • G06F16/2365Ensuring data consistency and integrity

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明公开了一种分布式并发数据处理任务的决策方法,包括:构建分布式数据系统的元数据结构和基本数据操作类型;并发任务间的冲突评价及处理机制;最后对分布式并发数据处理任务进行决策和处理。本发明所述的方法针对不同结构的数据对象,具有可变的处理精细度,可大大提高并发任务处理的时效性,并且以数据结构、任务语义和任务间的因果关系为基础,构建了任务间的转换逻辑,开发人员无需关注任务转换规则,具有高效、便捷、实时性好的优点。

Description

一种分布式并发数据处理任务决策方法
技术领域
本发明涉及一种分布式并发数据处理任务的决策方法,属于计算机、云计算和大数据处理邻域。
背景技术
在并发大数据的处理任务中,为了提高系统的可靠性和实时性,往往会将数据复制到分布式站点中,这样便可极大地提高系统的响应速度和操作便捷性,相应的又带来数据的同步性和并发任务的因果关联性问题,目前,现有技术通常是建立一个任务记录表,将当前任务与历史任务对比,并通过一定地转换规则,实现任务间的相对独立,来解决任务之间的因果关联性问题。但是其转换规则是针对于特定的应用程序,在不同的应用中,需要定制转换规则,这无疑降低了决策方法的通用性,也大大影响了决策方法的时效性。
发明内容
为解决以上问题,本发明提出了一种分布式并发数据处理任务决策方法。
本发明的技术方案为:
一种分布式并发数据处理任务的决策方法,其特征在于:包括以下步骤:A.构建分布式数据系统的元数据结构和基本数据操作类型; B.并发任务间的冲突评价及处理机制;C.对分布式并发数据处理任务进行决策和处理。
优选的,所述步骤A的具体实现方式为:
以对象数据模型为基础,将数据系统的元数据结构分为三类:原子对象、集合对象和复杂对象;其中,原子对象包括:整型、实型、布尔、字符串和字节5种;集合对象选择:set,bag,map,array,list5 种;复杂对象选取代表数据层次结构的“树”和描述网络结构的“图”2种;
基本数据操作类型包括:增加、删除、修改、引用四种。
优选的,所述步骤B的具体实现方式为:
所述方法的前提是分布式数据系统的并发任务处理方式是基于数据复制的分布式存储,因此整体框架服从“因果-操作-最终对象 (COF架构)”,基于此,数据系统的运行过程服从以下三个一致性条件:
假设两个并发任务为Op1和Op2,因果一致性条件记为Cc,操作一致性条件记为Co,最终对象一致性条件记为Cf,则
其中,两数据对象Ob1和Ob2为逻辑等价Ob1=Ob2的充要条件如下:
每个任务执行后,对于数据对象Ob来说可能会产生以下两种效果:
(1)返回值:记为R(Ob),表示对操作对象Ob进行了读取或引用;
(2)对原数据产生了改变:记为A(Ob),表示对Ob进行了更改;
基于以上,可得到两并发任务Op1和Op2是否冲突的评价方法:
当来自不同站点针对同一操作对象的任务产生了冲突时,根据不同的元数据结构将采取如下解决机制:
(1)原子类型数据的冲突解决机制:
两个并发任务在操作原子类型数据的过程中,可能产生冲突的情况如表1所示:
表1原子类型任务冲突情况(√:不冲突×:冲突)
由上表可知,相同操作对象的两个并发任务只要有一个更改任务,就会产生冲突;
解决机制如下:
1)为所有的数据对象建立一个独立的任务日志列表LstD
该列表中存储着数据对象的已执行的任务相关信息,包括:任务执行后果类型S,目标数据对象的索引Index,执行值Val,任务源站点号Ws,任务优先级Pr,分布式系统状态向量Vob
则日志列表LstD可表示为:
LstD={S,Index,Val,Ws,Pr,VOb}
其中,本方法框架下的任务执行后果类型S有两种:正常执行OPN和伪操作OPP,分布式系统状态向量VOb中的元素为每一维站点的当前任务执行状态;
2)在冲突条件下的写任务处理机制:
在执行写任务A1(Ob)时,算法按倒序查询任务日志列表LstD,先判断是否存在针对同一目标对象的并发写任务A2(Ob),若存在,那么就回溯A1(Ob)和A2(Ob)是否来自同一任务源Op1,若是,则更新系统状态向量VOb,并正常执行A1(Ob),执行完毕则将日志信息更新到该对象的任务日志列表LstD,若回溯A1(Ob)和A2(Ob)非同源,则比较二者的优先级Pr,高优先级的写任务 AIndexof(max(Pr(A1(Ob)),Pr(A2(Ob))))(Ob)得到正常执行,并加入OPN标志;低优先级的写任务暂不执行,并加入伪操作OPP标志;处理完毕后,将日志信息更新到该对象的任务日志列表LstD中,至此便完成了写任务冲突的处理;
(2)集合类型对象的任务冲突处理机制
在对象数据模型标准中,可总结出集合对象的所有操作方法都是以“遍历(Nav(Ob))、插入(Ist(Ob))、删除(Del(Ob))”为元操作的,因此本方法以此为基础,展开集合类型对象的任务冲突处置,这三种元操作在任务中的冲突情况如表2所示:
表2集合类型对象的任务冲突情况表
(√:无冲突×:冲突)
解决机制如下:
1)为数据对象创建独立的任务日志列表LstS
列表中包括:任务执行后果类型S,执行值Val,任务源站点号Ws,任务优先级Pr,分布式系统状态向量VOb
则日志列表LstS可表示为:
LstS={S,Val,Ws,Pr,VOb}
其中,本方法框架下的任务执行后果类型S有两种:正常执行OPN和伪操作OPP,分布式系统状态向量VOb中的元素为每一维站点的当前任务执行状态;
2)冲突解决机制
从冲突情况表中可看到,只有Nav(Ob)任务在于其他元操作的交叉任务中会造成冲突,所以只需处理Nav(Ob)与Ist(Ob)、Del(Ob)间的冲突即可;
为了满足前文所述的COF架构的一致性条件,集合对象的冲突解决机制采用以下原则:
①Nav(Ob)与Ist(Ob)并发执行时,Nav(Ob)的返回结果不包含 Ist(Ob)的执行值;
②Nav(Ob)与Del(Ob)并发执行时,Nav(Ob)的返回结果包含 Del(Ob)的执行对象;
(3)复杂类型对象的任务冲突处理机制:
对于复杂类型对象,其元操作除了包含集合类型对象的遍历 (Nav(Ob))、插入(Ist(Ob))、删除(Del(Ob))三类外,还有更新操作 (Udt(Ob));
各种任务的冲突情况如表3所示:
表3复杂类型对象的任务冲突情况表
(√:无冲突×:冲突)
复杂类型对象的任务冲突处理机制如下:
1)为数据对象创建独立的任务日志列表LstG
本方法解决容器类对象任务冲突的思想仍然是基于为对象创建独立的任务日志列表LstG:
列表中包括:任务执行后果类型S,执行元素的索引Index,执行值Val,任务源站点号Ws,任务优先级Pr,分布式系统状态向量VOb,则日志列表LStG可表示为:
LStG={S,Index,Val,Ws,Pr,VOb}
其中,本方法框架下的任务执行后果类型S有两种:正常执行OPN和伪操作OPP,分布式系统状态向量VOb中的元素为每一维站点的当前任务执行状态;
2)冲突处理:
①复杂类型对象属于容器类对象,仅有对象的任务日志列表无法快速而又灵活地处理各类冲突,本方法在数据对象的任务日志列表上,再创建一个独立的冲突日志列表;
②当并发任务发起时,算法首先倒序查询任务日志列表,将冲突任务全部提取出来,组成冲突日志列表,然后对冲突日志列表重排序,相对待处理任务的高优先级的任务排在列表头部,并返回头列表索引;并发任务全部排列在冲突日志列表的尾部;
③判断并发任务的Ist-Del冲突,对并发冲突任务进行转换,利用转换算法,最终得到待执行任务,加入正常执行OPN序列。
优选的,所述步骤C的具体实现方式为:
本方法可以做成服务层的中间件也可作为单独应用,运行于分布式网络的所有站点,每个站点需要维护一个独立的任务日志列表和多个冲突日志列表,这些日志列表决定着并发任务间是否存在前后关联,是否并发冲突,以及调用转换算法,将用户层的任务操作转换成可有序执行的逻辑等价任务,而无需将复杂任务转换成元操作,再定制转换方法。
本发明的有益效果为:
本发明所述的一种分布式并发数据处理任务的决策方法,该方法部署灵活,使得用户无需再关注冲突任务的有序转换细节,并可将复杂的逻辑操作,转换为对应的等价逻辑,而不是各种元操作再组合,大大提高了决策效率和实时性,具有高效、稳定、通用性强的有益效果。
附图说明
图1为本方法元数据结构模型的构成示意图;
图2为原子类型对象的写任务冲突处理机制流程图;
图3为集合类型对象的任务冲突处理整体流程图;
图4为复杂类型对象的任务冲突处理整体流程图。
具体实施步骤
本发明分布式并发数据处理任务的决策方法,包括以下步骤:
A.构建分布式数据系统的元数据结构和基本数据操作类型。
为实现可变的处理精细度以提高系统响应效率,首先需要构建出数据系统的元数据结构。为保证所构建的结构具有丰富的语义,能够覆盖包括网络关系、层次关系在内的各种数据逻辑。本方法以对象数据模型(ODMG标准)为基础,将数据系统的元数据结构分为三类:原子对象、集合对象和复杂对象。其中,原子对象包括:整型、实型、布尔、字符串和字节5种;集合对象选择:set,bag,map,array,list 等5种;复杂对象选取代表数据层次结构的“树”和描述网络结构的“图”2种。这三类元数据结构的模型复杂度由低到高,精细度由高到低,以此便可实现本方法的可变处理精细度,而不必所有的任务都关注到字符背景,大大提高数据处理时效性。
基本数据操作类型:增加、删除、修改、引用四种。
B.并发任务间的冲突评价及解决机制:
本发明所述方法的前提是分布式数据系统的并发任务处理方式是基于数据复制的分布式存储,因此整体框架服从“因果-操作-最终对象(COF架构)”,基于此,数据系统的运行过程服从以下三个一致性条件:
假设两个并发任务为Op1和Op2,因果一致性条件记为Cc,操作一致性条件记为Co,最终对象一致性条件记为Cf,那么有
其中,两数据对象Ob1和Ob2为逻辑等价Ob1=Ob2的充要条件如下:
每个任务执行后,对于数据对象Ob来说可能会产生以下两种效果:
(1)返回值。记为R(Ob),表示对操作对象Ob进行了读取或引用;
(2)对原数据产生了改变。记为A(Ob),表示对Ob进行了更改。
基于以上,可得到两并发任务Op1和Op2是否冲突的评价方法:
当来自不同站点针对同一操作对象的任务产生了冲突时,本发明根据不同的元数据结构将采取如下解决机制:
(1)原子类型数据的冲突解决机制:
两个并发任务在操作原子类型数据的过程中,可能产生冲突的情况如表1所示:
表1原子类型任务冲突情况(√:不冲突×:冲突)
由上表可知,相同操作对象的两个并发任务只要有一个更改任务,就会产生冲突。
解决机制如下:
1)为所有的数据对象建立一个独立的任务日志列表LstD
该列表中存储着数据对象的已执行的任务相关信息,包括:任务执行后果类型S,目标数据对象的索引Index,执行值Val,任务源站点号Ws,任务优先级Pr,分布式系统状态向量VOb
则日志列表LstD可表示为:
LstD={S,Index,Val,Ws,Pr,VOb}
其中,本方法框架下的任务执行后果类型S有两种:正常执行OPN和伪操作OPP,分布式系统状态向量VOb中的元素为每一维站点的当前任务执行状态。
2)在冲突条件下的写任务处理机制:
在执行写任务A1(Ob)时,算法按倒序查询任务日志列表LstD,先判断是否存在针对同一目标对象的并发写任务A2(Ob),若存在,那么就回溯A1(Ob)和A2(Ob)是否来自同一任务源Op1,若是,则更新系统状态向量VOb,并正常执行A1(Ob),执行完毕则将日志信息更新到该对象的任务日志列表LstD。若回溯A1(Ob)和A2(Ob)非同源,则比较二者的优先级Pr,高优先级的写任务 AIndexof(max(Pr(A1(Ob)),Pr(A2(Ob))))(Ob)得到正常执行,并加入OPN标志;低优先级的写任务暂不执行,并加入伪操作OPP标志;处理完毕后,将日志信息更新到该对象的任务日志列表LstD中,至此便完成了写任务冲突的处理,流程如图2所示。
(2)集合类型对象的任务冲突处理机制
在对象数据模型标准(ODMG)中,可总结出集合对象的所有操作方法都是以“遍历(Nav(Ob))、插入(Ist(Ob))、删除(Del(Ob))”为元操作的,因此本方法以此为基础,展开集合类型对象的任务冲突处置。这三种元操作在任务中的冲突情况如表2所示:
表2集合类型对象的任务冲突情况表
(√:无冲突×:冲突)
解决机制如下:
1)为数据对象创建独立的任务日志列表Lsts
列表中包括:任务执行后果类型S,执行值Val,任务源站点号Ws,任务优先级Pr,分布式系统状态向量VOb
则日志列表LstS可表示为:
LstS={S,Val,Ws,Pr,VOb}
其中,本方法框架下的任务执行后果类型S有两种:正常执行OPN和伪操作OPP,分布式系统状态向量VOb中的元素为每一维站点的当前任务执行状态。
2)冲突解决机制。
从冲突情况表中可看到,只有Nav(Ob)任务在于其他元操作的交叉任务中会造成冲突,所以只需处理Nav(Ob)与Ist(Ob)、Del(Ob)间的冲突即可。
为了满足前文所述的COF架构的一致性条件,集合对象的冲突解决机制采用以下原则:
①Nav(Ob)与Ist(Ob)并发执行时,Nav(Ob)的返回结果不包含Ist(Ob)的执行值;
②Nav(Ob)与Del(Ob)并发执行时,Nav(Ob)的返回结果包含 Del(Ob)的执行对象。
整体流程如图3所示:
(3)复杂类型对象的任务冲突处理机制:
对于复杂类型对象,其元操作除了包含集合类型对象的遍历 (Nav(Ob))、插入(Ist(Ob))、删除(Del(Ob))三类外,还有更新操作 (Udt(Ob))。
各种任务的冲突情况如表3所示:
表3复杂类型对象的任务冲突情况表
(√:无冲突×:冲突)
复杂类型对象的任务冲突处理机制如下:
1)为数据对象创建独立的任务日志列表LstG
本方法解决容器类对象任务冲突的思想仍然是基于为对象创建独立的任务日志列表LstG:
列表中包括:任务执行后果类型S,执行元素的索引Index,执行值Val,任务源站点号Ws,任务优先级Pr,分布式系统状态向量VOb
则日志列表LstG可表示为:
LstG={S,Index,Val,Ws,Pr,VOb}
其中,本方法框架下的任务执行后果类型S有两种:正常执行OPN和伪操作OPP,分布式系统状态向量VOb中的元素为每一维站点的当前任务执行状态。
2)冲突处理:
①复杂类型对象属于容器类对象,仅有对象的任务日志列表无法快速而又灵活地处理各类冲突,本方法在数据对象的任务日志列表上,再创建一个独立的冲突日志列表。
②当并发任务发起时,算法首先倒序查询任务日志列表,将冲突任务全部提取出来,组成冲突日志列表,然后对冲突日志列表重排序,高优先级的(相对待处理任务)任务排在列表头部,并返回头列表索引;并发任务全部排列在冲突日志列表的尾部。
③判断并发任务的Ist-Del冲突,对并发冲突任务进行转换,利用转换算法,最终得到待执行任务,加入正常执行OPN序列。
详细流程如图4所示:
C.分布式并发数据处理任务的决策处理。
本方法可以做成服务层的中间件也可作为单独应用,运行于分布式网络的所有站点。每个站点需要维护一个独立的任务日志列表和多个冲突日志列表,这些日志列表决定着并发任务间是否存在前后关联,是否并发冲突,以及调用转换算法,将用户层的任务操作转换成可有序执行的逻辑等价任务,而无需将复杂任务转换成元操作,再定制转换方法。
综上所述,即完成了本发明所述的一种分布式并发数据处理任务的决策方法,该方法部署灵活,使得用户无需再关注冲突任务的有序转换细节,并可将复杂的逻辑操作,转换为对应的等价逻辑,而不是各种元操作再组合,大大提高了决策效率和实时性,具有高效、稳定、通用性强的有益效果。

Claims (4)

1.一种分布式并发数据处理任务的决策方法,其特征在于:包括以下步骤:A.构建分布式数据系统的元数据结构和基本数据操作类型;B.并发任务间的冲突评价及处理机制;C.对分布式并发数据处理任务进行决策和处理。
2.如权利要求1所述的分布式并发数据处理任务的决策方法,其特征在于:所述步骤A的具体实现方式为:
以对象数据模型为基础,将数据系统的元数据结构分为三类:原子对象、集合对象和复杂对象;其中,原子对象包括:整型、实型、布尔、字符串和字节5种;集合对象选择:set,bag,map,array,list5种;复杂对象选取代表数据层次结构的“树”和描述网络结构的“图”2种;
基本数据操作类型包括:增加、删除、修改、引用四种。
3.如权利要求2所述的分布式并发数据处理任务的决策方法,其特征在于:所述步骤B的具体实现方式为:
所述方法的前提是分布式数据系统的并发任务处理方式是基于数据复制的分布式存储,因此整体框架服从“因果-操作-最终对象(COF架构)”,基于此,数据系统的运行过程服从以下三个一致性条件:
假设两个并发任务为Op1和Op2,因果一致性条件记为Cc,操作一致性条件记为Co,最终对象一致性条件记为Cf,则
其中,两数据对象Ob1和Ob2为逻辑等价Ob1=Ob2的充要条件如下:
每个任务执行后,对于数据对象Ob来说可能会产生以下两种效果:
(1)返回值:记为R(Ob),表示对操作对象Ob进行了读取或引用;
(2)对原数据产生了改变:记为A(Ob),表示对Ob进行了更改;
基于以上,可得到两并发任务Op1和Op2是否冲突的评价方法:
当来自不同站点针对同一操作对象的任务产生了冲突时,根据不同的元数据结构将采取如下解决机制:
(1)原子类型数据的冲突解决机制:
两个并发任务在操作原子类型数据的过程中,可能产生冲突的情况如表1所示:
表1原子类型任务冲突情况(√:不冲突×:冲突)
由上表可知,相同操作对象的两个并发任务只要有一个更改任务,就会产生冲突;
解决机制如下:
1)为所有的数据对象建立一个独立的任务日志列表LstD
该列表中存储着数据对象的已执行的任务相关信息,包括:任务执行后果类型S,目标数据对象的索引Index,执行值Val,任务源站点号Ws,任务优先级Pr,分布式系统状态向量VOb
则日志列表LstD可表示为:
LstD={S,Index,Val,Ws,Pr,VOb}
其中,本方法框架下的任务执行后果类型S有两种:正常执行OPN和伪操作OPP,分布式系统状态向量VOb中的元素为每一维站点的当前任务执行状态;
2)在冲突条件下的写任务处理机制:
在执行写任务A1(Ob)时,算法按倒序查询任务日志列表LstD,先判断是否存在针对同一目标对象的并发写任务A2(Ob),若存在,那么就回溯A1(Ob)和A2(Ob)是否来自同一任务源Op1,若是,则更新系统状态向量VOb,并正常执行A1(Ob),执行完毕则将日志信息更新到该对象的任务日志列表LstD,若回溯A1(Ob)和A2(Ob)非同源,则比较二者的优先级Pr,高优先级的写任务AIndexof(max(Pr(A1(Ob)),Pr(A2(Ob))))(Ob)得到正常执行,并加入OPN标志;低优先级的写任务暂不执行,并加入伪操作OPP标志;处理完毕后,将日志信息更新到该对象的任务日志列表LstD中,至此便完成了写任务冲突的处理;
(2)集合类型对象的任务冲突处理机制
在对象数据模型标准中,可总结出集合对象的所有操作方法都是以“遍历(Nav(Ob))、插入(Ist(Ob))、删除(Del(Ob))”为元操作的,因此本方法以此为基础,展开集合类型对象的任务冲突处置,这三种元操作在任务中的冲突情况如表2所示:
表2集合类型对象的任务冲突情况表(√:无冲突×:冲突)
解决机制如下:
1)为数据对象创建独立的任务日志列表LstS
列表中包括:任务执行后果类型S,执行值Val,任务源站点号Ws,任务优先级Pr,分布式系统状态向量VOb
则日志列表LstS可表示为:
LstS={S,Val,Ws,Pr,VOb}
其中,本方法框架下的任务执行后果类型S有两种:正常执行OPN和伪操作OPP,分布式系统状态向量VOb中的元素为每一维站点的当前任务执行状态;
2)冲突解决机制
从冲突情况表中可看到,只有Nav(Ob)任务在于其他元操作的交叉任务中会造成冲突,所以只需处理Nav(Ob)与Ist(Ob)、Del(Ob)间的冲突即可;
为了满足前文所述的COF架构的一致性条件,集合对象的冲突解决机制采用以下原则:
①Nav(Ob)与Ist(Ob)并发执行时,Nav(Ob)的返回结果不包含Ist(Ob)的执行值;
②Nav(Ob)与Del(Ob)并发执行时,Nav(Ob)的返回结果包含Del(Ob)的执行对象;
(3)复杂类型对象的任务冲突处理机制:
对于复杂类型对象,其元操作除了包含集合类型对象的遍历(Nav(Ob))、插入(Ist(Ob))、删除(Del(Ob))三类外,还有更新操作(Udt(Ob));
各种任务的冲突情况如表3所示:
表3复杂类型对象的任务冲突情况表(√:无冲突×:冲突)
复杂类型对象的任务冲突处理机制如下:
1)为数据对象创建独立的任务日志列表LstG
本方法解决容器类对象任务冲突的思想仍然是基于为对象创建独立的任务日志列表LstG:
列表中包括:任务执行后果类型S,执行元素的索引Index,执行值Val,任务源站点号Ws,任务优先级Pr,分布式系统状态向量VOb,则日志列表LstG可表示为:
LstG={S,Index,Val,Ws,Pr,Vob}
其中,本方法框架下的任务执行后果类型S有两种:正常执行OPN和伪操作OPP,分布式系统状态向量V)b中的元素为每一维站点的当前任务执行状态;
2)冲突处理:
①复杂类型对象属于容器类对象,仅有对象的任务日志列表无法快速而又灵活地处理各类冲突,本方法在数据对象的任务日志列表上,再创建一个独立的冲突日志列表;
②当并发任务发起时,算法首先倒序查询任务日志列表,将冲突任务全部提取出来,组成冲突日志列表,然后对冲突日志列表重排序,相对待处理任务的高优先级的任务排在列表头部,并返回头列表索引;并发任务全部排列在冲突日志列表的尾部;
③判断并发任务的Ist-Del冲突,对并发冲突任务进行转换,利用转换算法,最终得到待执行任务,加入正常执行OPN序列。
4.如权利要求3所述的分布式并发数据处理任务的决策方法,其特征在于:所述步骤C的具体实现方式为:
本方法可以做成服务层的中间件也可作为单独应用,运行于分布式网络的所有站点,每个站点需要维护一个独立的任务日志列表和多个冲突日志列表,这些日志列表决定着并发任务间是否存在前后关联,是否并发冲突,以及调用转换算法,将用户层的任务操作转换成可有序执行的逻辑等价任务,而无需将复杂任务转换成元操作,再定制转换方法。
CN201810166885.0A 2018-02-28 2018-02-28 一种分布式并发数据处理任务决策方法 Active CN110162531B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810166885.0A CN110162531B (zh) 2018-02-28 2018-02-28 一种分布式并发数据处理任务决策方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810166885.0A CN110162531B (zh) 2018-02-28 2018-02-28 一种分布式并发数据处理任务决策方法

Publications (2)

Publication Number Publication Date
CN110162531A true CN110162531A (zh) 2019-08-23
CN110162531B CN110162531B (zh) 2021-04-16

Family

ID=67635851

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810166885.0A Active CN110162531B (zh) 2018-02-28 2018-02-28 一种分布式并发数据处理任务决策方法

Country Status (1)

Country Link
CN (1) CN110162531B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112783616A (zh) * 2019-11-11 2021-05-11 腾讯科技(深圳)有限公司 一种并发冲突处理方法、装置及计算机存储介质

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070011683A1 (en) * 2005-07-01 2007-01-11 Microsoft Corporation Real-time self tuning of planned actions in a distributed environment
CN101127644A (zh) * 2007-08-30 2008-02-20 复旦大学 一种大规模协同环境下的因果并发检测方法
CN102722355A (zh) * 2012-06-04 2012-10-10 南京中兴软创科技股份有限公司 基于工作流机制的并发式etl转换方法
CN102981904A (zh) * 2011-09-02 2013-03-20 阿里巴巴集团控股有限公司 一种任务调度方法及系统
CN103677967A (zh) * 2012-09-03 2014-03-26 阿里巴巴集团控股有限公司 一种数据库的远程数据服务系统及任务调度方法
CN103995691A (zh) * 2014-05-21 2014-08-20 中国人民解放军国防科学技术大学 基于事务的服务状态一致性维护方法
US20150186120A1 (en) * 2008-07-10 2015-07-02 Rocketick Technologies Ltd. Efficient parallel computation of dependency problems
US20180004511A1 (en) * 2016-07-01 2018-01-04 Roman Dementiev Apparatus and method for reentering a transactional sequence with hardware transactional memory
CN107608773A (zh) * 2017-08-24 2018-01-19 阿里巴巴集团控股有限公司 任务并发处理方法、装置及计算设备

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070011683A1 (en) * 2005-07-01 2007-01-11 Microsoft Corporation Real-time self tuning of planned actions in a distributed environment
CN101127644A (zh) * 2007-08-30 2008-02-20 复旦大学 一种大规模协同环境下的因果并发检测方法
US20150186120A1 (en) * 2008-07-10 2015-07-02 Rocketick Technologies Ltd. Efficient parallel computation of dependency problems
CN102981904A (zh) * 2011-09-02 2013-03-20 阿里巴巴集团控股有限公司 一种任务调度方法及系统
CN102722355A (zh) * 2012-06-04 2012-10-10 南京中兴软创科技股份有限公司 基于工作流机制的并发式etl转换方法
CN103677967A (zh) * 2012-09-03 2014-03-26 阿里巴巴集团控股有限公司 一种数据库的远程数据服务系统及任务调度方法
CN103995691A (zh) * 2014-05-21 2014-08-20 中国人民解放军国防科学技术大学 基于事务的服务状态一致性维护方法
US20180004511A1 (en) * 2016-07-01 2018-01-04 Roman Dementiev Apparatus and method for reentering a transactional sequence with hardware transactional memory
CN107608773A (zh) * 2017-08-24 2018-01-19 阿里巴巴集团控股有限公司 任务并发处理方法、装置及计算设备

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
PAUL GRACE等: "A consistency framework for dynamic reconfiguration in AO-middleware architectures", 《8TH EUROPEAN CONFERENCE ONSOFTWARE ARCHITECTURE(ECSA 2014)》 *
VIVO YANG: "日志系统之定时任务执行引擎", 《HTTPS://BLOG.CSDN.NET/YANGHUA_KOBE/ARTICLE/DETAILS/51228633》 *
孙明明: "云计算平台上任务调度算法的研究", 《中国博士学位论文全文数据库 信息科技辑》 *
李楚淮: "灾害范围综合评估中的多元数据冲突检测与消解方法", 《中国优秀硕士学位论文全文数据库 工程科技I辑》 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112783616A (zh) * 2019-11-11 2021-05-11 腾讯科技(深圳)有限公司 一种并发冲突处理方法、装置及计算机存储介质
CN112783616B (zh) * 2019-11-11 2023-10-13 腾讯科技(深圳)有限公司 一种并发冲突处理方法、装置及计算机存储介质

Also Published As

Publication number Publication date
CN110162531B (zh) 2021-04-16

Similar Documents

Publication Publication Date Title
CN104346377B (zh) 一种基于唯一标识的数据集成和交换方法
CN110321999A (zh) 神经网络计算图优化方法
CN109840270A (zh) 一种基于Neo4j的电网设备信息管理方法
CN102426582B (zh) 数据操作管理装置和数据操作管理方法
JP6345873B2 (ja) 高速電車の需要メタモデルの構築方法及び装置
CN105468702A (zh) 一种大规模rdf数据关联路径发现方法
JPH01162927A (ja) トランジティブクロージャ生成方法、データベース圧縮方法、データベース生成システム、データベースストア方法および情報提供システム
CN107729396A (zh) 数据动态查询方法及装置
CN112070213A (zh) 神经网络模型的优化方法、装置、设备及存储介质
CN103677811B (zh) 一种航天器研制流程设计系统及方法
Feng et al. A hybrid and automated approach to adapt geometry model for CAD/CAE integration
Silvescu et al. Graph databases
CN101216845A (zh) 数据库自动分类方法
CN110162531A (zh) 一种分布式并发数据处理任务决策方法
CN108536834A (zh) 更新列表的方法、装置和终端
CN102594851A (zh) 一种海洋应用服务链动态构建的方法
CN111966690A (zh) 加载表格全量数据的方法、装置、计算机设备、存储介质
CN101968747B (zh) 一种机群应用管理系统及其应用管理方法
CN111984663A (zh) Redis数据库更新方法、装置、计算机设备、存储介质
WO2016165317A1 (zh) 一种高速列车需求数据实例构建方法和装置
CN113609806B (zh) 一种结合子图同构的量子线路程序通用变换方法
CN113139022B (zh) 一种基于混合规则的企业物流数据按需融合方法
CN116152451A (zh) 多维参数化城市信息模型构建方法、系统及计算机设备
CN105893668B (zh) 一种基于流语义的物料形态变化功能分解方法
WO2017043664A1 (ja) 情報管理装置並びにファイル管理方法

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant