CN101834906A - 一种分布式任务处理和协作的多尺度服务单元选择方法 - Google Patents

一种分布式任务处理和协作的多尺度服务单元选择方法 Download PDF

Info

Publication number
CN101834906A
CN101834906A CN201010175398A CN201010175398A CN101834906A CN 101834906 A CN101834906 A CN 101834906A CN 201010175398 A CN201010175398 A CN 201010175398A CN 201010175398 A CN201010175398 A CN 201010175398A CN 101834906 A CN101834906 A CN 101834906A
Authority
CN
China
Prior art keywords
service
msub
service unit
mrow
subtask
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
CN201010175398A
Other languages
English (en)
Other versions
CN101834906B (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.)
Zhengzhou Xinrand Network Technology Co ltd
Original Assignee
Institute of Acoustics CAS
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 Institute of Acoustics CAS filed Critical Institute of Acoustics CAS
Priority to CN2010101753984A priority Critical patent/CN101834906B/zh
Publication of CN101834906A publication Critical patent/CN101834906A/zh
Application granted granted Critical
Publication of CN101834906B publication Critical patent/CN101834906B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明公开了一种分布式任务处理和协作的多尺度服务单元选择方法,该方法在多尺度上分析任务的特征并将其映射到执行任务的服务单元集上;针对任务目标,综合考虑同一个尺度上相关单元的特征相似性和不同尺度间的服务性和关联性,选出服务单元集,步骤为,1)分解一个应用为若干子任务层中;2)计算面向分布式任务处理和协作的多尺度服务单元选择方法的相关参数;3)假设某个目标任务为o,交给服务单元pt,由其提出该请求;4)对于每个子任务si,根据其应用特点计算服务单元数目为d;5)对于每个子任务si,发起请求的服务单元pt检测其邻域
Figure 201010175398.4_AB_0
内的任一服务单元pk,根据邻域中所有服务单元的值,选择合适的协作单元。

Description

一种分布式任务处理和协作的多尺度服务单元选择方法
技术领域
本发明涉及信息技术领域,特别涉及一种分布式任务处理和协作的多尺度服务单元选择方法。
背景技术
随着信息技术的发展,无论计算还是服务,都已从单核向多核化,单机向多机集群化,单节点向多节点网络化发展。存储、计算等工作都趋向于多处理单元的协同处理,比如,多CPU协同运算,多存储器协同存储、多网络节点协同服务等等。然而,由于各个处理单元在许多应用中具有异构性,运算、存储、I/O或上下行带宽等能力并不相同,能提供服务或处理能力也有所差异,同时,在许多应用中,如互联网中基于P2P的流媒体视频业务、文件下载业务等,如何有效利用免费服务单元(如网络中的节点资源),减少额外服务支撑,降低运营成本,也是要考虑的因素。因此,当出现服务请求时,如何选择合适的处理单元集合协同提供服务是一个重要问题。目前,针对不同应用,许多服务单元选择方法被提出,例如,在流媒体直播、点播系统中,一些算法通过构建树形结构和中心服务器选择的方式,将能力较强的服务单元(节点)驻留在树的上层供应用选择,然而,这样的中心选择的方法影响了系统的扩展性和动态性;另外,许多算法通过Gossip的方式来扩充候选服务单元(节点),但是灵活性差,效率和开销仍不尽人意。同时,这些方法大多没有详细考虑针对不同应用中,服务单元自身能力和所需服务内容或者过程之间的相关性以及在应用上的表现方法,因此需要从不同角度考虑服务单元的选择问题。尺度的概念是许多物理现象的本质特征,同时,人们对各种现象的观测及测量也是在不同尺度上进行的,而在具有多服务单元的应用中,许多信息都在不同尺度上表征了该服务的特点,如应用特征相关的服务特性、服务内容,以及参与节点相关的带宽、延迟、地理位置等。
发明内容
本发明的目的在于,为克服目前中心选择的方法影响系统的扩展性和动态性;另外,许多算法通过Gossip的方式来扩充候选服务单元(节点),但是灵活性差,效率和开销仍不尽人意。同时,这些方法大多没有详细考虑针对不同应用中,服务单元自身能力和所需服务内容或者过程之间的相关性以及在应用上的表现方法,因此需要从不同角度考虑服务单元的选择问题,从而提供一种分布式任务处理和协作的多尺度服务单元选择方法。
本发明提供的一种分布式任务处理和协作的多尺度服务单元选择方法将任务的多服务单元协作的问题至顶向下根据任务的特征,在不同尺度上进行分析并最终映射到执行任务的服务单元集上进行处理,同时,针对任务目标,综合考虑同一个尺度上相关单元的特征相似性和不同尺度间的服务性和关联性,给出执行任务的服务单元集的选择方法。该方法可以将服务资源进行有效分配,显著提高服务资源的有效利用率。
为了达到上述目的,本发明的多服务单元选择的处理过程主要由以下几个阶段组成:1.根据应用特点提出服务目标并提取目标中的任务;2.将任务分解为子任务集合,其中,任务是由这个子任务集的所有子任务按照某种逻辑形成的;3.为每个子任务找到具有特定功能的一个或多个服务单元来协同完成该子任务目标。为解决上述问题,本发明由三个尺度构成:目标任务尺度、子任务尺度和服务单元尺度。其中,目标任务尺度到子任务尺度是通过对目标任务进行分析,得到一些对问题可描述的、细粒度的子任务单元。在子任务层中,任意两个子任务之间可能存在一定关联;而每个子任务都是由一些服务单元协同完成的,每个服务单元都以比较高的概率提供对应子任务所包含的全部服务。所有服务单元组成服务单元尺度,这一尺度中,服务单元的基础能力指的是服务单元的基础服务特征的度量,如外部通信带宽,与其余服务单元的平均传输延迟,存储容量,计算能力等。在这层中,每个服务单元都自己负责对自身基础服务能力的周期性测量和更新,同时每个服务单元还要根据其它服务单元对自己的特定基础服务的历史、交互纪录、或者预设规则维护本单元的可服务性邻域列表,其中,可服务性指的是对特定基础服务,其服务能力超过某个门限、或者是满足以特定基础服务为自变量的函数、或者是符合某个特定服务内容、处理过程或处理方法的要求。关于该多尺度服务单元选择方法的结构示意图见图1。
为达到上述目的,本发明提供一种分布式任务处理和协作的多尺度服务单元选择方法,该方法将任务的多服务单元协作的问题至顶向下根据任务的特征,在不同尺度上进行分析并最终映射到执行任务的服务单元集上进行处理;所述的服务单元集选择方法为,针对任务目标,综合考虑同一个尺度上相关单元的特征相似性和不同尺度间的服务性和关联性,给出执行任务的服务单元集,该方法用于将服务资源进行有效分配,提高资源有效利用率,所述的多尺度包含:目标任务尺度、子任务尺度和服务单元尺度;所述的方法具体包含如下步骤:
1)对于一个应用下的任何任务,能够由全体子任务通过某种逻辑形成,假设在子任务层中,所有子任务的全集为A={a1,a2,...,an),服务单元层中,所有服务单元的集合为P={p1,p2,...,pK},任意一个内部或者外部服务单元提出任务请求,并由该服务单元根据应用特点将整个任务分解为子任务集合,最后由该服务单元发起对这些子任务的请求;
2)计算面向分布式任务处理和协作的多尺度服务单元选择方法的相关参数,其中包括:
a)在服务单元层中,任意两个服务单元pt,pk之间基础服务的可服务性为
Figure GSA00000104982700031
该值表示pk可向pt提供的基础服务能力;
b)
Figure GSA00000104982700032
为负载系数,表示pk当前的负载情况;
c)G(pt,pk|si)表征在子任务为si,的情况下,服务单元pk在服务特征上与pt所需子任务的关联性,该参数是子任务尺度中子任务间相关性在服务单元尺度中的体现;
另外,每个服务单元pt还根据历史记录和周边单元的交互信息,维护一个为自己提供可靠的基础服务的邻域集
Figure GSA00000104982700033
该邻域可根据对历史记录中合作过的节点进行选择而生成:
3)假设某个目标任务为o,交给服务单元pt,由其提出该请求,则根据分析可知,目标任务o是由子任务集合S={s1,s2,...,sm),
Figure GSA00000104982700034
通过某种逻辑而组成的,满足o=Λ(S);其中,Λ(X)是根据应用特点和先验知识预先得到的逻辑映射函数;
4)对于每个子任务si,根据其应用特点计算可知所需服务单元数目为d,同时这些服务单元要满足可能存在的应用条件集合,集合中包含依赖于应用的一些限制条件,因此,能够将目标转化为找到在一定条件下,对该子任务提供服务的协作单元集合Y={y1,y2,...,ym},
Figure GSA00000104982700035
5)每个服务单元pt也根据它自己的历史记录和周边单元的交互信息,维护一个可以为自己提供比较可靠的基础服务的邻域集
Figure GSA00000104982700036
对于每个子任务si,发起请求的服务单元pt可以检测其邻域
Figure GSA00000104982700037
内的任一服务单元pk,且
Figure GSA00000104982700038
则按下式计算针对子任务si,pk对pt的服务能力:
B s i , p k = Q p t , p k G ( p t , p k | s i ) Σ p h ⋐ P p t Q p t , p h G ( p t , p h | s i )
其中,
Figure GSA000001049827000310
表示服务单元pk可向pk提供的基础服务能力的程度,且
Figure GSA00000104982700041
G(pt,pk|si)表征在子任务为si的情况下,服务单元pk在可提供的子任务服务特征上与pt所需子任务的关联性,根据邻域中所有服务单元的
Figure GSA00000104982700042
值,选择合适的协作单元。
所述的每个提出请求的服务单元pt,都存在一个候选协作单元集合Φ。所述的Φ中剩余dmax个候选服务单元,且dmax≥d,d个服务单元的选择方法如下:
d)根据
Figure GSA00000104982700043
的值,在所有满足条件的服务单元中,随机选出d个服务单元进行服务;
e)对
Figure GSA00000104982700044
排序,选出其中Top-d个服务单元进行服务;
f)通过某种优化方法,搜索
Figure GSA00000104982700045
的最优解,找到d个服务单元进行服务;
其中,所述的随机选出d个服务单元进行服务的步骤如下:
i.按均匀分布选择服务单元;
ii.以值为选择概率,随机选出d个服务单元进行服务。
所述的Φ中剩余dmax个候选服务单元,且dmax<d,随机或者按
Figure GSA00000104982700047
值的大小选择dsel个服务单元,这里dsel的值可以通过预先设定的阈值或者限制条件来确定,且dsel≤dmax,则剩余所需d-dsel的资源获取方法如下:
c)通过外部服务支撑获取:
d)等待一个时间ΔT,重复步骤5);如果重复M次之后,仍无法找到足够的协作节点,则停止循环,向外部服务单元寻求服务支撑,其中,ΔT和M都为预设参数。
步骤2)所述的pk可向pt提供的基础服务能力包含:上行带宽,存储容量和计算能力;所述的服务单元pk服务特征包括:提供存储内容、提供处理过程或提供处理方法。其中上述技术方案,所述的
Figure GSA00000104982700048
通过下述方法得到:
e)服务单元pk可提供某种基础服务能力的总量;
f)服务单元pk当前时刻可提供某种剩余基础服务能力的余量;
g)根据历史记录得到的服务单元pk向pt提供的某种基础服务能力的最大值;
h)当存在以多种基础服务能力为自变量的函数,函数值来表示pk的综合服务能力。
上述技术方案,步骤2)所述的
Figure GSA00000104982700049
能通过以下公式得到:
l p t = resource left resource all
其中,resourceleft为服务单元当前可用资源,resourceall为服务单元可提供的全部资源量;所述的资源包含:上行带宽、存储空间或者计算能力。
上述技术方案,步骤5)中所述的在所选出的d个点中,如果存在某个点pk,不能够提供对应子任务所要求的全部服务,则处理方法如下:
根据每个子任务预设的扩展度
Figure GSA00000104982700051
和扩展度阈值poppreset进行决策,如果
Figure GSA00000104982700052
则由pk再次发起对完整子任务的请求,如果递归请求N次之后、或者延迟达到某个阈值T之后、或者达到某个应用限制条件之后,系统仍无法返回给pk完成子任务所需的资源和能力,则直接向外部请求服务支撑;其中,N和T值也需根据应用特点进行预先设定;如果
Figure GSA00000104982700053
则直接向外部请求服务支撑;
其中,所述的扩展度表示一个子任务在整个系统中的重要性或者是在部署上需要扩散的快慢程度,是一个归一化的值;所述的扩展度阈值根据应用预先设定的。在步骤2中提到的在服务特征上pt,pk单元之间的相关性G(pt,pk|si),可看作子任务尺度相关性在服务单元尺度中的体现,表示在子任务为si的情况下,服务单元pk在服务特征(可能包括存储内容、处理过程、处理方法等非基础服务能力范畴的相关信息)上和pt所要完成子任务si的关联性,可以通过计算pk对si所需存储内容的重叠程度、所需计算条件的满足程度、或者某些预设规则的相似性来得到,跟应用特征直接相关,不同应用存在不同的定义和计算方法,这里不再赘述。
本发明的优点在于,在多服务单元协作中,通过多尺度分析的方法可以将问题分层次描述,并根据服务目标和特性,帮助应用进行协作单元的选择。本发明提出了一种基于多尺度分析的服务单元协作的单元选择方法,该模型可根据应用的优化目标、将问题在不同尺度上进行分解和建模,并计算合适的服务单元协作方法。该模型的优势是,可灵活应用于存在服务单元协作的不同的应用中,同时,综合考虑多个服务单元协作的影响因素,选出合理协作方案,有效利用服务单元所提供的服务能力,减少外部服务支撑。
附图说明
图1是本发明的基于多尺度分析的多服务单元协作模型结构示意图;
图2是一个现有的基于P2P的流媒体点播系统的结构示意图;
图3是P2P流媒体点播系统利用本发明的基于多尺度分析的多服务单元协作的方法的多尺度分析示意图。
具体实施方式
为了解决上述问题,本发明的目的在于提供一种面向分布式任务处理和协作的多尺度服务单元选择方法。该方法将任务的多服务单元协作的问题至顶向下根据任务的特征,在不同尺度上进行分析并最终映射到执行任务的服务单元集上进行处理,同时,针对任务目标,综合考虑同一个尺度上相关单元的特征相似性和不同尺度间的服务性和关联性,给出执行任务的服务单元集的选择方法。该方法可以将服务资源进行有效分配,显著提高服务资源的有效利用率。
为了达到上述目的,本发明的多服务单元选择的处理过程主要由以下几个阶段组成:1.根据应用特点提出服务目标并提取目标中的任务;2.将任务分解为子任务集合,其中,任务是由这个子任务集的所有子任务按照某种逻辑形成的;3.为每个子任务找到具有特定功能的一个或多个服务单元来协同完成该子任务目标。为解决上述问题,本发明由三个尺度构成:目标任务尺度、子任务尺度和服务单元尺度。其中,目标任务尺度到子任务尺度是通过对目标任务进行分析,得到一些对问题可描述的、细粒度的子任务单元。在子任务层中,任意两个子任务之间可能存在一定关联;而每个子任务都是由一些服务单元协同完成的,每个服务单元都以比较高的概率提供对应子任务所包含的全部服务。所有服务单元组成服务单元尺度,这一尺度中,服务单元的基础能力指的是服务单元的基础服务特征的度量,如外部通信带宽,与其余服务单元的平均传输延迟,存储容量,计算能力等。在这层中,每个服务单元都自己负责对自身基础服务能力的周期性测量和更新,同时每个服务单元还要根据其它服务单元对自己的特定基础服务的历史、交互纪录、或者预设规则维护本单元的可服务性邻域列表,其中,可服务性指的是对特定基础服务,其服务能力超过某个门限、或者是满足以特定基础服务为自变量的函数、或者是符合某个特定服务内容、处理过程或处理方法的要求。关于该多尺度服务单元选择方法的结构示意图见图1。
为达到上述目的,本发明提供一种面向分布式任务处理和协作的多尺度服务单元选择方法,其过程如下:
1)对于一个应用下的任何任务,都可由全体子任务通过某种逻辑形成,假设在子任务层中,所有子任务的全集为A={a1,a2,...,an},服务单元层中,所有服务单元的集合为P={p1,p2,...,pK),任意一个内部或者外部提出的任务请求,都是由某一个服务单元提出和分解为子任务集合,并山该服务单元发起对这些子任务的请求;
2)计算面向分布式任务处理和协作的多尺度服务单元选择方法的相关参数,其中包括:
a)在服务单元层中,任意两个服务单元pt,pk之间基础服务的可服务性为
Figure GSA00000104982700061
该值表示pk可向pt提供的基础服务能力,可能为上行带宽,存储容量,计算能力等表征服务单元基础服务特征的指标,是一个有向值;
b)为负载系数,表示pk当前的负载情况;
c)G(pt,pk|si)表征在子任务为si的情况下,服务单元pk在服务特征(可能包括提供存储内容、提供处理过程、提供处理方法等非基础服务能力范畴的相关信息)上与pt所需子任务的关联性,是子任务尺度中子任务间相关性在服务单元尺度中的体现;
另外,每个服务单元pt也根据它自己的历史记录和周边单元的交互信息,维护一个可以为自己提供比较可靠的基础服务的邻域集
Figure GSA00000104982700072
3)假设某个目标任务为o,交给服务单元pt,由其提出该请求,则根据分析可知,目标任务o是由子任务集合S={s1,s2,...,sm},
Figure GSA00000104982700073
通过某种逻辑而组成的,满足o=Λ(S)。这里,Λ(X)是根据应用特点和先验知识预先得到的逻辑映射函数。
4)对于每个子任务si根据其应用特点计算可知所需服务单元数目为d,同时这些单元要满足可能存在的应用条件集合,集合中包含依赖于应用的一些限制条件,因此,可以将目标转化为找到在一定条件下,对该子任务提供服务的协作单元集合Y={y1,y2,...,ym},
Figure GSA00000104982700074
这里,不同应用有不同的限制条件和d的计算方法,这里不在赘述。
5)对于每个子任务si,发起请求的服务单元pt可以检测其邻域
Figure GSA00000104982700075
内的任一服务单元pk,且
Figure GSA00000104982700076
则按下式计算针对子任务si,pk对pt的服务能力:
B s i , p k = Q p t , p k G ( p t , p k | s i ) Σ p h ⋐ P p t Q p t , p h G ( p t , p h | s i )
这里,
Figure GSA00000104982700078
表示服务单元pk可向pk提供的基础服务能力的程度,且
Q p t , p k = q p t , p k l p t , p k .
每个提出请求的服务单元pt,都存在一个候选协作单元集合Φ,初始时
Figure GSA000001049827000710
对于pt服务邻域
Figure GSA000001049827000711
内的每一个服务单元pk,都计算相应的
Figure GSA000001049827000712
假设应用的条件集合为C,CP={p|C},如果pk∈CP,则Φ=Φ∪{pk}。
假设Φ中剩余dmax个候选服务单元,如果dmax≥d,可能的选择方法如下:
a)根据
Figure GSA000001049827000713
的值,在所有满足条件的服务单元中,随机选出d个服务单元进行服务;这里可以通过两种方法选择:
iii.按均匀分布选择服务单元;
iv.以
Figure GSA000001049827000714
值为选择概率,随机选出d个服务单元进行服务;
b)对
Figure GSA00000104982700081
排序,选出其中Top-d个服务单元进行服务;
c)通过某种优化方法,搜索
Figure GSA00000104982700082
的最优解,找到d个服务单元进行服务;
如果dmax<d,随机、或者按值的大小选择dsel个服务单元,这里dsel的值可以通过预先设定的阈值或者限制条件来确定,且dsel≤dmax,则剩余所需d-dsel的资源获取方法如下:
a)通过外部服务支撑获取;
b)等待一个时间ΔT,重复步骤5);如果重复M次之后,仍无法找到足够的协作节点,则停止循环,向外部寻求服务支撑。这里,ΔT和M都为预设参数。
在所选出的d个点中,如果存在某个点pk,不能够提供对应子任务所要求的全部服务,则处理方法如下:
根据每个子任务预设的扩展度和扩展度阈值poppreset进行决策,这里,扩展度表示一个子任务在整个系统中的重要性或者是在部署上需要扩散的快慢程度,是一个归一化的值,而扩展度阈值则是根据应用预先设定的。如果
Figure GSA00000104982700085
则由pk再次发起对完整子任务的请求,如果递归请求N次之后、或者延迟达到某个阈值T之后、或者达到某个应用限制条件之后,系统仍无法返回给pk完成子任务所需的资源和能力,则直接向外部请求服务支撑;其中,N和T值也需根据应用特点进行预先设定。如果
Figure GSA00000104982700086
则直接向外部请求服务支撑。
在步骤2中提到的任意两个服务单元pt,pk之间某个基础服务能力的可服务性为
Figure GSA00000104982700087
可以通过下述方法得到:
a)服务单元pk可提供某种基础服务能力的总量;
b)服务单元pk当前时刻可提供某种剩余基础服务能力的余量;
c)根据历史记录得到的服务单元pk向pt提供的某种基础服务能力的最大值;
d)当存在以多种基础服务能力(如通信带宽、存储能力或者计算能力等)为自变量的函数,函数值来表示pk的综合服务能力;
在步骤2中提到的pt当前的负载情况
Figure GSA00000104982700088
可以通过下述方法得到:
a)当前资源占用总量,如上行带宽、存储空间或者计算能力;
b)当前可用资源(如上行带宽、存储空间或者计算能力)在全部可提供资源中的比例,
Figure GSA00000104982700089
这里resourceleft为服务单元当前可用资源,resourceall为服务单元可提供的全部资源量;
在步骤2中提到的在服务特征上pt,pk单元之间的相关性G(pt,pk|si),可看作子任务尺度相关性在服务单元尺度中的体现,表示在子任务为si的情况下,服务单元pk在服务特征(可能包括存储内容、处理过程、处理方法等非基础服务能力范畴的相关信息)上和pt所要完成子任务si的关联性,可以通过计算pk对si所需存储内容的重叠程度、所需计算条件的满足程度、或者某些预设规则的相似性来得到,跟应用特征直接相关,不同应用存在不同的定义和计算方法,这里不再赘述。
实施例
下面结合具体实施例来说明该面向分布式任务处理和协作的多尺度服务单元选择方法的应用。
实施例
假设一个基于P2P的流媒体点播系统,其系统结构示意图见图2,在这个应用中,任务目标为为某个请求节点从某一时刻丌始请求一段数据,如果其余节点有该数据,且在当前时刻有能力提供服务,则从这些节点中选出合适的协作节点,否则,将外部服务器作为可获取数据的协作节点。因此,为了量化所需数据内容,从目标到子任务尺度层的映射方法为将所有的节目划分为等长的数据片段,获取某一数据片段作为一个子任务,而具有不同数据片段的节点则是具有不同服务特性的服务单元。为了保证每个节点以较高概率提供整个子任务的服务,则需要将节目划分成粒度小而且又易于表示的数据片段,这里定义每个数据片段长度为10秒。因此,P2P视频点播系统的多尺度分析示意图如图3所示。
在这里,假设一个节目被划分为5个数据片段A={a1,a2,a3,a4,a5),网络中共有10个节点参与其中P={p1,p2,...,p10),每个节点可对不同子任务提供不同完整程度的服务,各个节点对不同子任务提供服务的情况见下表,其中,括号中的值表示每个节点对对应子任务提供服务的完整程度,是节点拥有数据占子任务中全部数据的比例。
    数据片段     对应服务节点
    a1     p1(1.0),p2(0.8)
    a2     p2(1.0),p3(0.5),p5(0.9),p7(0.6)
    a3     p4(1.0),p6(0.9)
    数据片段     对应服务节点
    a4     p2(1.0),p8(0.8),p9(0.8)
    a5     p7(0.6),p10(0.9)
对于每个节点pi,根据其历史记录,可知为pi提供过服务的节点列表,这里,定义该列表中的所有节点为pi所对应的服务邻域。在该应用中,各个节点的服务邻域如下表:
Figure GSA00000104982700101
假设节点p5请求20-30秒的数据,经分析后,可知所需数据片段为S={a2,a3},即子任务为S={a2,a3}。根据历史记录可知p5的邻域为
Figure GSA00000104982700102
则选择协作节点的过程如下:
1)计算邻域中任意两个节点间基础服务能力相关的互服务性;
这里
Figure GSA00000104982700103
当前可用带宽总量,当pt=pk时,则
Figure GSA00000104982700104
其中θ为一个预设的大数,这里设为10倍码率,则互服务矩阵如下,单位为倍码率:
  q   p2   p3   p4   p5   p6   p7
  p2   10   5   5   5   5   5
  q   p2   p3   p4   p5   p6   p7
  p3   2   10   2   2   2   2
  p4   3   3   10   3   3   3
  p5   2   2   2   10   2   2
  p6   2   2   2   2   10   2
  p7   5   5   5   5   5   10
2)计算节点的负载系数;
这里,节点的负载系数
则各节点负载系数如下所示:
  p1   p2   p3   p4   p5   p6   p7   p8   p9   p10
  0.50   0.83   0.67   0.6   0.5   0.67   0.63   0.4   0.5   0.5
3)计算节点间内容相关的互服务性G(pt,pk|si),这里定义
Figure GSA00000104982700112
Figure GSA00000104982700113
为每个服务单元pk可为子任务si提供服务的完整程度;
Figure GSA00000104982700114
为任意两个子任务ai,aj之间的相关性;条件集合Condition={节点带宽占用率≤β),这里β为预设值,且β∈[0,1],这里设β=0.9。
假设通过历史服务信息的记录,可以知道数据片段间在时序上的先后顺序出现情况,则定义
Figure GSA00000104982700115
根据上式可计算任意两个子任务间的相关性,这里,设α=0.10,其相关性值见下表:
    c     a1     a2     a3     a4     a5
a1     0.10     0.45     0.09     0.09     0.27
    c     a1     a2     a3     a4     a5
a2     0.19     0.10     0.30     0.19     0.23
a3     0.15     0.10     0.10     0.60     0.05
a4     0.26     0.11     0.05     0.10     0.48
    a5     0.34     0.21     0.13     0.21     0.10
经计算,可知,p4可提供a2的服务,p3和p7可能提供a3的服务。由于p3带宽占用超过预设上限,因此不属于候选节点,又因为p7无法提供a3的全部服务,则p7重新发起对a3的请求。这里,预设的递归停止条件为递归请求1次。在该次请求中,p7的邻域中不含有能为a3提供全部服务的节点,无法返回合适的协作节点,且达到递归停止条件,因此递归停止。最后,节点p5将外部服务器作为获取数据a3的协作节点。
说明文档中的其他现有技术内容针对本专业领域内的普通技术人员,均可进行技术实现,这里不再赘述。
最后所应说明的是,以上实施例仅用以说明本发明的技术方案而非限制。尽管参照实施例对本发明进行了详细说明,本领域的普通技术人员应当理解,对本发明的技术方案进行修改或者等同替换,都不脱离本发明技术方案的精神和范围,其均应涵盖在本发明的权利要求范围当中。

Claims (9)

1.一种分布式任务处理和协作的多尺度服务单元选择方法,该方法将任务的多服务单元协作的问题至顶向下根据任务的特征,在不同尺度上进行分析并最终映射到执行任务的服务单元集上进行处理;所述的服务单元集选择方法为,针对任务目标,综合考虑同一个尺度上相关单元的特征相似性和不同尺度间的服务性和关联性,给出执行任务的服务单元集,该方法用于将服务资源进行有效分配,提高资源有效利用率,所述的多尺度包含:目标任务尺度、子任务尺度和服务单元尺度;所述的方法具体包含如下步骤:
1)对于一个应用下的任何任务,能够由全体子任务通过某种逻辑形成,假设在子任务层中,所有子任务的全集为A={a1,a2,...,an},服务单元层中,所有服务单元的集合为P={p1,p2,...,pK},任意一个内部或者外部服务单元提出任务请求,并由该服务单元根据应用特点将整个任务分解为子任务集合,最后由该服务单元发起对这些子任务的请求;
2)计算面向分布式任务处理和协作的多尺度服务单元选择方法的相关参数,其中包括:
a)在服务单元层中,任意两个服务单元pt,pk之间基础服务的可服务性为该值表示pk可向pt提供的基础服务能力;
b)
Figure FSA00000104982600012
为负载系数,表示pk当前的负载情况;
c)G(pt,pk|si)表征在子任务为si的情况下,服务单元pk在服务特征上与pt所需子任务的关联性,该参数是子任务尺度中子任务间相关性在服务单元尺度中的体现;
另外,每个服务单元pt还根据历史记录和周边单元的交互信息,维护一个为自己提供可靠的基础服务的邻域集
Figure FSA00000104982600013
该邻域可根据对历史记录中合作过的节点进行选择而生成;
3)假设某个目标任务为o,交给服务单元pt,由其提出该请求,则根据分析可知,目标任务o是由子任务集合S={s1,s2,...,sm},
Figure FSA00000104982600014
通过某种逻辑而组成的,满足o=Λ(S);其中,Λ(X)是根据应用特点和先验知识预先得到的逻辑映射函数;
4)对于每个子任务sj,根据其应用特点计算可知所需服务单元数目为d,同时这些服务单元要满足存在的应用条件集合,集合中包含依赖于应用的限制条件,因此,能够将目标转化为对该子任务提供服务的协作单元集合Y={y1,y2,...,ym}, Y ⊆ P ;
5)每个服务单元pt也根据它自己的历史记录和周边单元的交互信息,维护一个可以为自己提供比较可靠的基础服务的邻域集
Figure FSA00000104982600022
对于每个子任务si,发起请求的服务单元pt可以检测其邻域
Figure FSA00000104982600023
内的任一服务单元pk,且
Figure FSA00000104982600024
则按下式计算针对子任务si,pk对pt的服务能力:
B s i , p k = Q p t , p k G ( p t , p k | s i ) Σ p h ⋐ P P t Q p t , p h G ( p t , p h | s i )
其中,
Figure FSA00000104982600026
表示服务单元pk可向pk提供的基础服务能力的程度,且G(pt,pk|si)表征在子任务为si的情况下,服务单元pk在可提供的子任务服务特征上与pt所需子任务的关联性,根据邻域中所有服务单元的
Figure FSA00000104982600028
值,选择合适的协作单元。
2.根据权利要求1所述的分布式任务处理和协作的多尺度服务单元选择方法,其特征在于,所述的每个提出请求的服务单元pt,都存在一个候选协作单元集合Φ。
3.根据权利要求1或2所述的分布式任务处理和协作的多尺度服务单元选择方法,其特征在于,所述的Φ中剩余dmax个候选服务单元,且dmax≥d,d个服务单元的选择方法如下:
a)根据
Figure FSA00000104982600029
的值,在所有满足条件的服务单元中,随机选出d个服务单元进行服务;
b)对
Figure FSA000001049826000210
排序,选出其中Top-d个服务单元进行服务;
c)通过某种优化方法,搜索
Figure FSA000001049826000211
的最优解,找到d个服务单元进行服务;
其中,所述的随机选出d个服务单元进行服务的步骤如下:
i.按均匀分布选择服务单元;
ii.以
Figure FSA000001049826000212
值为选择概率,随机选出d个服务单元进行服务。
4.根据权利要求1或2所述的分布式任务处理和协作的多尺度服务单元选择方法,其特征在于,所述的Φ中剩余dmax个候选服务单元,且dmax<d,随机或者按值的大小选择dsel个服务单元,这里dsel的值可以通过预先设定的阈值或者限制条件来确定,且dsel≤dmax,则剩余所需d-dsel的资源获取方法如下:
a)通过外部服务支撑获取;
b)等待一个时间ΔT,重复步骤5);如果重复M次之后,仍无法找到足够的协作节点,则停止循环,向外部服务单元寻求服务支撑,其中,ΔT和M都为预设参数。
5.根据权利要求1所述的分布式任务处理和协作的多尺度服务单元选择方法,其特征在于,步骤2)所述的pk可向pt提供的基础服务能力包含:上行带宽,存储容量和计算能力。
6.根据权利要求1所述的分布式任务处理和协作的多尺度服务单元选择方法,其特征在于,步骤2)所述的服务单元pk服务特征包括:提供存储内容、提供处理过程或提供处理方法。
7.根据权利要求1所述的分布式任务处理和协作的多尺度服务单元选择方法,其特征在于,步骤2)所述的
Figure FSA00000104982600031
通过下述方法得到:
a)服务单元pk可提供某种基础服务能力的总量;
b)服务单元pk当前时刻可提供某种剩余基础服务能力的余量;
c)根据历史记录得到的服务单元pk向pt提供的某种基础服务能力的最大值;
d)当存在以多种基础服务能力为自变量的函数,函数值来表示pk的综合服务能力。
8.根据权利要求1所述的分布式任务处理和协作的多尺度服务单元选择方法,其特征在于,步骤2)所述的
Figure FSA00000104982600032
能通过以下公式得到:
l p t = resource left resource all
其中,resourceleft为服务单元当前可用资源,resourceall为服务单元可提供的全部资源量;所述的资源包含:上行带宽、存储空间或者计算能力。
9.根据权利要求1所述的分布式任务处理和协作的多尺度服务单元选择方法,其特征在于,步骤5)中所述的在所选出的d个点中,如果存在某个点pk,不能够提供对应子任务所要求的全部服务,则处理方法如下:
根据每个子任务预设的扩展度
Figure FSA00000104982600041
和扩展度阈值popreset进行决策,如果则由pk再次发起对完整子任务的请求,如果递归请求N次之后、或者延迟达到某个阈值T之后、或者达到某个应用限制条件之后,系统仍无法返回给pk完成子任务所需的资源和能力,则直接向外部请求服务支撑;其中,N和T值也需根据应用特点进行预先设定;如果
Figure FSA00000104982600043
则直接向外部请求服务支撑;
其中,所述的扩展度表示一个子任务在整个系统中的重要性或者是在部署上需要扩散的快慢程度,是一个归一化的值;所述的扩展度阈值根据应用预先设定的。
CN2010101753984A 2009-12-31 2010-05-14 一种分布式任务处理和协作的多尺度服务单元选择方法 Active CN101834906B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN2010101753984A CN101834906B (zh) 2009-12-31 2010-05-14 一种分布式任务处理和协作的多尺度服务单元选择方法

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
CN200910266192.X 2009-12-31
CN200910266192 2009-12-31
CN2010101753984A CN101834906B (zh) 2009-12-31 2010-05-14 一种分布式任务处理和协作的多尺度服务单元选择方法

Publications (2)

Publication Number Publication Date
CN101834906A true CN101834906A (zh) 2010-09-15
CN101834906B CN101834906B (zh) 2012-11-21

Family

ID=42718835

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2010101753984A Active CN101834906B (zh) 2009-12-31 2010-05-14 一种分布式任务处理和协作的多尺度服务单元选择方法

Country Status (1)

Country Link
CN (1) CN101834906B (zh)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103092574A (zh) * 2013-01-18 2013-05-08 浙江工商大学 一种基于递归自主式复杂任务分解系统及方法
CN103593240A (zh) * 2013-11-08 2014-02-19 华为技术有限公司 一种优化的调度方法及管理设备
CN104935622A (zh) * 2014-03-21 2015-09-23 阿里巴巴集团控股有限公司 一种用于消息分配、消费的方法及装置,用于消息处理的系统
CN104951427A (zh) * 2015-06-30 2015-09-30 深圳清华大学研究院 以矩阵为中心的分布式计算框架
CN107786593A (zh) * 2016-08-25 2018-03-09 阿里巴巴集团控股有限公司 任务部署方法、实例部署方法、装置及设备

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101192952A (zh) * 2006-11-30 2008-06-04 中国科学院声学研究所 一种广域协同工作系统部署方法
CN101287102A (zh) * 2007-04-13 2008-10-15 中国科学院声学研究所 一种基于弹性重叠网络的存储流媒体数据下载方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101192952A (zh) * 2006-11-30 2008-06-04 中国科学院声学研究所 一种广域协同工作系统部署方法
CN101287102A (zh) * 2007-04-13 2008-10-15 中国科学院声学研究所 一种基于弹性重叠网络的存储流媒体数据下载方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
尤佳莉 等: "P2P系统中基于WEB的索引信息扩展算法的研究", 《计算机工程与应用》, vol. 44, no. 18, 31 December 2008 (2008-12-31), pages 6 - 9 *
齐卫宁: "一种嵌入式P2P文件共享系统", 《计算机工程与应用》, vol. 44, no. 15, 31 December 2008 (2008-12-31), pages 76 - 78 *

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103092574A (zh) * 2013-01-18 2013-05-08 浙江工商大学 一种基于递归自主式复杂任务分解系统及方法
CN103092574B (zh) * 2013-01-18 2016-01-20 浙江工商大学 一种基于递归自主式复杂任务分解系统及方法
CN103593240A (zh) * 2013-11-08 2014-02-19 华为技术有限公司 一种优化的调度方法及管理设备
CN103593240B (zh) * 2013-11-08 2016-11-23 华为技术有限公司 一种优化的调度方法及管理设备
CN104935622A (zh) * 2014-03-21 2015-09-23 阿里巴巴集团控股有限公司 一种用于消息分配、消费的方法及装置,用于消息处理的系统
CN104951427A (zh) * 2015-06-30 2015-09-30 深圳清华大学研究院 以矩阵为中心的分布式计算框架
CN107786593A (zh) * 2016-08-25 2018-03-09 阿里巴巴集团控股有限公司 任务部署方法、实例部署方法、装置及设备

Also Published As

Publication number Publication date
CN101834906B (zh) 2012-11-21

Similar Documents

Publication Publication Date Title
KR101885688B1 (ko) 낮은 지연속도 데이터 액세스를 위한 데이터 스트림의 분할
JP4421637B2 (ja) サブタスク・プロセッサの分散スケジューリング
CN109788046B (zh) 一种基于改进蜂群算法的多策略边缘计算资源调度方法
US20170329643A1 (en) Distributed node intra-group task scheduling method and system
CN101834906B (zh) 一种分布式任务处理和协作的多尺度服务单元选择方法
Wang et al. A general scalable and elastic content-based publish/subscribe service
CN110347515B (zh) 一种适合边缘计算环境的资源优化分配方法
Li et al. Trust-driven and QoS demand clustering analysis based cloud workflow scheduling strategies
CN113641417B (zh) 一种基于分支定界法的车辆安全任务卸载方法
CN104881322A (zh) 一种基于装箱模型的集群资源调度方法及装置
Shukla et al. FAT-ETO: Fuzzy-AHP-TOPSIS-Based efficient task offloading algorithm for scientific workflows in heterogeneous fog–cloud environment
Zhu et al. Optimal bandwidth allocation for web crawler systems with time constraints
Abdel-Kader et al. Efficient energy and completion time for dependent task computation offloading algorithm in industry 4.0
Wang et al. Particle swarm optimization with genetic evolution for task offloading in device-edge-cloud collaborative computing
Ho et al. Kylin: An efficient and scalable graph data processing system
CN113641448A (zh) 一种边缘计算容器分配和层下载排序体系结构及其方法
Devagnanam et al. Design and development of exponential lion algorithm for optimal allocation of cluster resources in cloud
CN116582407A (zh) 一种基于深度强化学习的容器化微服务编排系统及方法
Li et al. AttentionFunc: Balancing FaaS compute across edge-cloud continuum with reinforcement learning
CN112866358B (zh) 一种物联网服务重调度的方法、系统及装置
CN111813542B (zh) 一种并行处理大规模图分析任务的负载均衡方法及其装置
Ovalle et al. Distributed Cache Strategies for Machine Learning Classification Tasks over Cluster Computing Resources
CN110135747B (zh) 基于神经网络的流程定制方法
Cui et al. Online container scheduling for low-latency iot services in edge cluster upgrade: A reinforcement learning approach
CN114090220B (zh) 一种分级cpu和内存资源调度方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
TR01 Transfer of patent right

Effective date of registration: 20210804

Address after: Room 1601, 16th floor, East Tower, Ximei building, No. 6, Changchun Road, high tech Industrial Development Zone, Zhengzhou, Henan 450001

Patentee after: Zhengzhou xinrand Network Technology Co.,Ltd.

Address before: 100190, No. 21 West Fourth Ring Road, Beijing, Haidian District

Patentee before: INSTITUTE OF ACOUSTICS, CHINESE ACADEMY OF SCIENCES

TR01 Transfer of patent right
EE01 Entry into force of recordation of patent licensing contract

Application publication date: 20100915

Assignee: Zhongkehai (Suzhou) Network Technology Co.,Ltd.

Assignor: Zhengzhou xinrand Network Technology Co.,Ltd.

Contract record no.: X2024980003541

Denomination of invention: A Multi scale Service Unit Selection Method for Distributed Task Processing and Collaboration

Granted publication date: 20121121

License type: Exclusive License

Record date: 20240329

EE01 Entry into force of recordation of patent licensing contract