CN102882981A - 一种对等结构云平台下节点任务的负载均衡方法 - Google Patents

一种对等结构云平台下节点任务的负载均衡方法 Download PDF

Info

Publication number
CN102882981A
CN102882981A CN2012104006506A CN201210400650A CN102882981A CN 102882981 A CN102882981 A CN 102882981A CN 2012104006506 A CN2012104006506 A CN 2012104006506A CN 201210400650 A CN201210400650 A CN 201210400650A CN 102882981 A CN102882981 A CN 102882981A
Authority
CN
China
Prior art keywords
host node
node
task
main
main task
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
CN2012104006506A
Other languages
English (en)
Other versions
CN102882981B (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.)
Nanjing Post and Telecommunication University
Original Assignee
Nanjing Post and Telecommunication University
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 Nanjing Post and Telecommunication University filed Critical Nanjing Post and Telecommunication University
Priority to CN201210400650.6A priority Critical patent/CN102882981B/zh
Publication of CN102882981A publication Critical patent/CN102882981A/zh
Application granted granted Critical
Publication of CN102882981B publication Critical patent/CN102882981B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Hardware Redundancy (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

一种对等结构云平台下节点任务的负载均衡方法,将各个主节点以及从节点分别组织成对等结构的Chord网络。在任务处理过程中,将每个主节点负责执行的主任务通过冗余备份方法进行备份,将所有主任务通过对主任务编号取余进行分类,每类主任务数据分别进行备份,每个主任务备份多个完全相同的主任务数据副本均匀存储在Chord网络中相应的节点上;当主节点失效时,进行主任务数据恢复;当有新主节点加入Chord网络时,通过主任务数据的转移恢复。每个主节点中均存储两部分主任务数据,一部分是该主节点正在执行的主任务数据,另一部分是该主节点备份其他主节点上正在执行的主任务数据。

Description

一种对等结构云平台下节点任务的负载均衡方法
技术领域
本发明涉及一种对等结构云平台下节点任务的负载均衡方法,属于云计算及对等网络技术领域。
背景技术
云计算是一种以全新的业务模式提供高性能、低成本的持续计算和存储服务,支撑各类信息化应用。云计算包括计算资源、能量、交互能力、动态和虚拟化的,而且所有的定量资源是以服务的方式能够提供出来。这种新型的服务最大好处能够合理配置计算资源,并提高计算资源的利用率,并且能够降低成本、促进节能减排,实现真正的理想的绿色计算。现在Google公司和开源云计算平台Hadoop等都使用Map-Reduce并行计算模型。该模式能有效的提高系统处理数据的能力。
P2P(Peer-to-Peer,对等)计算是指不同系统之间通过直接交换,实现计算机资源和服务共享、进行信息处理的过程。这里,资源可以是处理器、缓存和磁盘空间等;服务包括信息交换、数据计算等。P2P模式与传统客户/服务器模式的关键区别在于Peer(对等体)与Peer在通信过程中,可以完全摒弃服务器的角色,通过直接通信获得共享资源或服务。
现行的云平台中,Map-Reduce框架是基于集中式的主从结构,这种集中式框架无法很好的处理云环境中的高动态特性,由于所有的工作都由一个主节点(master)负责分配,所以master是整个结构的瓶颈,一旦master失效,则整个系统都将陷入瘫痪。所以我们提出并设计了一种P2P模式下的云框架,这种框架有利于用一种离散的方式处理主节点失效、任务动态恢复等问题。
由于P2P节点具有高动态性,所以做好任务冗余备份工作至关重要,已有的P2P冗余备份方法(如DHASH)大多都是以节点为主体进行备份工作,当某些节点负责执行的任务数量过多时,该节点对应的备份节点也要备份过多的任务,无法达到负载均衡,在数据恢复的时候,只能由一个节点向原节点传输数据,效率过低。且大多数方法都是将备份数据存放在连续的节点上,当距离较远的节点索引这些任务数据时,备份节点无法较好的分担原节点查询任务,另外关于基于对等网络云平台下的任务备份方面的相关研究还比较少,相关工作还不够成熟。
Fabrizio Marozzo等人针对云平台下master节点的瓶颈问题,提出基于对等网络云平台,并提出master节点之间数据冗余备份策略,但其提出的备份策略是以节点为单位进行任务备份,当某些节点负责执行的任务数量过多时,可能导致一部分节点负载过重,从而影响系统性能。
Emil Sit等人提出在P2P网络中添加中央服务器,当节点数据丢失时通过访问中央服务器进行数据恢复。但该方法可能会导致中央服务器负载过重,成为整个系统的瓶颈,从而可能造成系统崩溃。
Anglano C等人提出将文件的K重备份保存在Chord网络中K个连续的节点上,并利用备份数据分担原节点查询任务的策略,但当距离较远的节点索引这些数据时,备份节点无法较好的分担原节点查询任务。
发明内容
本发明针对上述背景技术的不足,提供了一种对等结构云平台下节点任务的负载均衡方法,该方法在基于对等网络云平台的基础上,对各个主节点(master节点)所执行的任务进行有效管理,其中,备份策略是将各个备份数据等间隔分散到Chord网络中,并且将各个主节点(master节点)的任务分块备份到对应节点中,从而提高索引效率并且达到负载均衡。
本发明为解决上述技术问题采用以下技术方案:一种对等结构云平台下节点任务的负载均衡方法,其特征是:构建对等结构云平台,将各个主节点(master节点)以及从节点(slave节点)分别组织成对等结构的Chord网络。在任务处理过程中,有两类任务要执行:第一类是由发出任务处理请求的用户节点(user节点)提交给主节点的任务,即主任务(job)。另一类是主节点分配给从节点执行的任务,即从任务(task)。在进行主任务以及从任务的分配时,利用Chord网络自身的优点使得各节点所处理的任务量相同,达到负载均衡;任务执行过程中,将每个主节点负责执行的主任务通过冗余备份方法进行备份,将所有主任务通过对主任务编号(jobId)取余进行分类,每类主任务数据分别进行备份,每个主任务备份多个完全相同的主任务数据副本均匀存储在Chord网络中相应的节点上;当主节点失效时,通过主任务恢复方法进行主任务数据恢复;当有新主节点加入Chord网络时,通过新主节点加入方法进行主任务数据的转移恢复;每个主节点中均存储两部分主任务数据,一部分是该主节点正在执行的主任务数据,另一部分是该主节点备份其他主节点上正在执行的主任务数据。
其中:
1)任务执行过程包括以下步骤:
步骤1,利用一致性哈希函数,提交主任务的用户节点(user节点)将准备提交执行的主任务(job),设为job_A,通过哈希其属性信息,赋予该主任务唯一的主任务编号(jobId),并通过这一编号将其发送到主节点(master节点)Chord网络中对应的后继主节点,设为master_A上,由该后继主节点负责执行此主任务;
步骤2,主节点master_A将主任务job_A分配成多个从任务(task),并利用一致性哈希函数,通过哈希从任务的属性信息,赋予每个从任务唯一从任务编号(taskId),并通过这一编号将各个从任务发送到从节点Chord网络中对应的后继从节点上,由对应的后继从节点负责执行这些从任务;
步骤3,当由主节点master_A分配的所有从任务(task)全部完成之后,主节点master_A负责将最终结果返回给用户节点(user节点);
2)主节点任务备份方法包括如下步骤:
步骤1,为了避免主节点(master节点)失效所导致的主任务(job)数据的丢失,将所有主任务编号(jobId)通过求模取余运算,按余数分成
Figure BDA00002276404500031
类,并将每个主任务备份
Figure BDA00002276404500032
个完全相同的副本均匀的分布在Chord网络的主节点上进行备份。公式(1)为主任务备份的计算方法:
BjobId i = ( jobId + ( jobId % 2 K 2 ) · 2 M - K 1 - K 2 + i · 2 M - K 1 ) % 2 M , 1 ≤ i ≤ 2 K 1 - 1 - - - ( 1 )
其中,jobId为需要备份的主任务的编号,BjobIdi为需要备份的主任务的第i个备份任务的编号,M为Chord网络所用到的安全散列函数的哈希值长度,2M为Chord网络长度,K1、K2均为大于等于零的整数;
主节点根据BjobIdi将正在该节点上执行的需要备份的主任务数据发送到Chord网络中对应的后继主节点上备份;
步骤2,设置一个定时器T,由负责执行某主任务的主节点每隔时间T向所有备份该主任务的备份主节点发送主任务的更新信息,以保证任务数据的一致;
3)有主节点失效时,其任务恢复方法包括如下步骤:
3.1)失效主节点正在执行的主任务数据的恢复
步骤1,失效主节点在Chord网络上的后继主节点利用公式(2)计算出备份编号集BID;
BID = { id | ( X + 2 M - K 1 + j &CenterDot; 2 M - K 1 - K 2 ) % 2 M < id &le; ( Y + 2 M - K 1 + j &CenterDot; 2 M - K 1 - K 2 ) % 2 M ,
0 &le; j &le; 2 K 2 - 1 } - - - ( 2 )
其中,Y为失效主节点的编号(masterId),X为失效节点在Chord网络上的前驱主节点的编号(masterId);
步骤2,在步骤1求出的BID的后继主节点中找出编号jobId∈(X,Y]的主任务备份数据,并将这些数据传输到失效主节点的后继主节点中,继续执行;
3.2)失效主节点备份的其他主节点正在执行的主任务数据的恢复
步骤1,失效主节点在Chord网络上的后继主节点利用公式(3)计算出应该备份到失效主节点中的主任务的编号集BJID:
BJID = { id | ( X - i &CenterDot; 2 M - K 1 - j &CenterDot; 2 M - K 1 - K 2 + 2 M ) % 2 M < id &le; ( Y - i &CenterDot; 2 M - K 1 - j &CenterDot; 2 M - K 1 - K 2
+ 2 M ) % 2 M , id % 2 K 2 = j , 1 &le; i &le; 2 K 1 - 1,0 &le; j &le; 2 K 2 - 1 } - - - ( 3 )
其中,BJID为应该备份到失效主节点中的主任务编号(jobId)集,Y为失效主节点的编号(masterId),X为失效节点在Chord网络上的前驱主节点的编号(masterId);
步骤2,由任务备份方法得知,基于存储的对称性,失效主节点存储的备份主任务数据必定也全部存储在与Y节点顺时针间距为
Figure BDA00002276404500045
以及所对应的主节点序列中,利用公式(4)求出备份编号集:
BBID = { id | ( X + 2 M - K 1 ) % 2 M < id &le; ( Y + 2 M - K 1 ) % 2 M } &cup;
{ id | ( X + 2 M - K 1 + 1 ) % 2 M < id &le; ( Y + 2 M - K 1 + 1 ) % 2 M } - - - ( 4 )
步骤3,在步骤2所求得的备份编号集BBID的后继主节点中找出包含在步骤1所得BJID的所有主任务,并将这些主任务数据传输到失效主节点的后继主节点中进行存储备份;
4)有新的主节点加入Chord网络时,其任务迁移方法包括如下步骤:
步骤1,新主节点(master节点)加入后,新主节点的后继主节点在自己正在执行的主任务(job)中找出应该由新主节点负责执行的所有主任务,这些主任务的编号满足jobId∈(X,Y],其中,Y为新加入主节点的编号(masterId),X为Y的直接前驱主节点的编号(masterId),并将这些主任务传送至新加入的主节点继续执行,且在本节点删除这些主任务数据;
步骤2,新主节点的后继主节点利用公式(5)计算出备份编号集JBID,并在自身备份的主任务中取出属于JBID的所有主任务,并传送至新加入主节点进行备份,且在本节点删除这些主任务数据:
JBID = { id | ( X - i &CenterDot; 2 M - K 1 - j &CenterDot; 2 M - K 1 - K 2 + 2 M ) % 2 M < id &le; ( Y - i &CenterDot; 2 M - K 1 - j &CenterDot; 2 M - K 1 - K 2
+ 2 M ) % 2 M , id % 2 K 2 = j , 1 &le; i &le; 2 K 1 - 1,0 &le; j &le; 2 K 2 - 1 } - - - ( 5 )
其中,JBID为备份编号集,Y为新加入主节点的编号(masterId),X为Y的直接前驱主节点的编号(masterId)。
本发明与现有技术相比,具有以下优点及显着效果:
(1)本发明将传统云结构下单一主节点结构转化成多主节点协同处理任务的对等网络结构,在对等结构云环境下进行主任务分配时,将各个主任务通过一致性散列函数散列到Chord网络中不同的主节点上,使得每个主节点接收的主任务数目大体相同,从而提高了主任务的执行效率,增强了网络的稳定性,实现了负载均衡。
(2)当主节点选取相应的从节点分配从任务时,将各个从任务通过一致性散列函数散列到Chord网络中不同的从节点上,使得每个从节点执行的从任务数目相对平均,从而提高了从任务的执行效率,增强了网络的稳定性,实现了负载均衡。
(3)在主任务备份时,首先利用多重备份策略使
Figure BDA00002276404500053
个完全相同的主任务数据副本等间隔的分布在Chord网络上。备份后,主任务的成功率为
Figure BDA00002276404500054
1,而无备份机制时,主任务的成功率为1-p,可见成功率显著提高。同时,通过求模计算,将每个节点上的任务尽可能地备份到不同的节点上存储,使得每个节点的任务备份更加均匀,数据恢复时,从多个节点并行传输数据,效率更高,速度更快,有利于数据的并行下载和负载均衡。
附图说明
图1是对等结构云平台的体系结构图;
图2是对等结构云平台下任务处理总流程图;
图3是对等结构云平台下任务负载均衡方法中各个策略的功能图;
图4是对等结构云平台下任务负载均衡方法的任务分配展示图;
图5是对等结构云平台下任务负载均衡方法的节点失效后任务恢复的展示图。
具体实施方式
下面结合附图对本发明的技术方案做进一步的详细说明。
本方法提出一种新的对等结构云平台体系结构(P2P-云体系结构),将传统云结构下单一主节点结构转化成多主节点协同处理主任务的对等网络结构。这种策略有利于解决单一主节点瓶颈问题。如图1所示,将对等结构云平台下的全部主节点(master节点)组织成一个Chord网络,同时将全部的从节点(slave节点)组织成另一个Chord网络。在进行主任务(job)分配以及从任务(task)分配时,能够利用Chord网络自身的优点使得各节点所处理任务量大体相同,达到负载均衡。本方法的总流程图如图2所示,主任务执行过程中,对主任务进行冗余备份;当检测到有节点失效时,则进行主任务恢复;当检测到有新的主节点加入时,则进行主任务迁移。本方法的主要处理功能如图3所示,分别包含主从任务分配执行策略、主任务备份策略、主任务恢复策略和新主节点加入策略。文中的每个主节点中均存储两部分主任务数据,一部分是该主节点正在执行的主任务数据。另一部分是该主节点备份其他主节点上正在执行的主任务数据。如图4所示,当用户节点(user节点)提交一个主任务(job)给一个主节点(master节点)之后,主节点会将这一主任务分成多个从任务(task)发送给多个从节点(slave节点)执行,同时,通过主任务备份策略将主任务备份到Chord网络结构中的多个主节点上。如图5所示,当该主节点失效离开Chord网络之后,Chord环上的备份主节点会将备份的主任务数据发送给该失效主节点的后继主节点上,由该后继主节点继续执行这些主任务。
1)任务执行过程包括以下步骤:
步骤1,利用一致性哈希函数,提交主任务的用户节点(user节点)将准备提交执行的主任务(job),设为job_A,通过哈希其属性信息,赋予该主任务唯一的主任务编号(jobId),并通过这一编号将其发送到主节点(master节点)Chord网络中对应的后继主节点,设为master_A上,由该后继主节点负责执行此主任务;
步骤2,主节点master_A将主任务job_A分配成多个从任务(task),并利用一致性哈希函数,通过哈希从任务的属性信息,赋予每个从任务唯一从任务编号(taskId),并通过这一编号将各个从任务发送到从节点Chord网络中对应的后继从节点上,由对应的后继从节点负责执行这些从任务;
步骤3,当由主节点master_A分配的所有从任务(task)全部完成之后,主节点master_A负责将最终结果返回给用户节点(user节点);
2)主节点任务备份方法包括如下步骤:
步骤1,为了避免主节点(master节点)失效所导致的主任务(job)数据的丢失,将所有主任务编号(jobId)通过求模取余运算,按余数分成
Figure BDA00002276404500061
类,并将每个主任务备份
Figure BDA00002276404500062
个完全相同的副本均匀的分布在Chord网络的主节点上进行备份。公式(1)为主任务备份的计算方法:
BjobId i = ( jobId + ( jobId % 2 K 2 ) &CenterDot; 2 M - K 1 - K 2 + i &CenterDot; 2 M - K 1 ) % 2 M , 1 &le; i &le; 2 K 1 - 1 - - - ( 1 )
其中,jobId为需要备份的主任务的编号,BjobIdi为需要备份的主任务的第i个备份任务的编号,M为Chord网络所用到的安全散列函数的哈希值长度,2M为Chord网络长度,K2、K2均为大于等于零的整数;
主节点根据BjobIdi将正在该节点上执行的需要备份的主任务数据发送到Chord网络中对应的后继主节点上备份;
步骤2,设置一个定时器T,由负责执行某主任务的主节点每隔时间T向所有备份该主任务的备份主节点发送主任务的更新信息,以保证任务数据的一致;
4)有主节点失效时,其任务恢复方法包括如下步骤:
3.1)失效主节点正在执行的主任务数据的恢复
步骤1,失效主节点在Chord网络上的后继主节点利用公式(2)计算出备份编号集BID;
BID = { id | ( X + 2 M - K 1 + j &CenterDot; 2 M - K 1 - K 2 ) % 2 M < id &le; ( Y + 2 M - K 1 + j &CenterDot; 2 M - K 1 - K 2 ) % 2 M ,
0 &le; j &le; 2 K 2 - 1 } - - - ( 2 )
其中,Y为失效主节点的编号(masterId),X为失效节点在Chord网络上的前驱主节点的编号(masterId);
步骤2,在步骤1求出的BID的后继主节点中找出编号jobId∈(X,Y]的主任务备份数据,并将这些数据传输到失效主节点的后继主节点中,继续执行;
3.2)失效主节点备份的其他主节点正在执行的主任务数据的恢复
步骤1,失效主节点在Chord网络上的后继主节点利用公式(3)计算出应该备份到失效主节点中的主任务的编号集BJID:
BJID = { id | ( X - i &CenterDot; 2 M - K 1 - j &CenterDot; 2 M - K 1 - K 2 + 2 M ) % 2 M < id &le; ( Y - i &CenterDot; 2 M - K 1 - j &CenterDot; 2 M - K 1 - K 2
+ 2 M ) % 2 M , id % 2 K 2 = j , 1 &le; i &le; 2 K 1 - 1,0 &le; j &le; 2 K 2 - 1 } - - - ( 3 )
其中,BJID为应该备份到失效主节点中的主任务编号(jobId)集,Y为失效主节点的编号(masterId),X为失效节点在Chord网络上的前驱主节点的编号(masterId);
步骤2,由任务备份方法得知,基于存储的对称性,失效主节点存储的备份主任务数据必定也全部存储在与Y节点顺时针间距为
Figure BDA00002276404500081
以及所对应的主节点序列中,利用公式(4)求出备份编号集:
BBID = { id | ( X + 2 M - K 1 ) % 2 M < id &le; ( Y + 2 M - K 1 ) % 2 M } &cup;
{ id | ( X + 2 M - K 1 + 1 ) % 2 M < id &le; ( Y + 2 M - K 1 + 1 ) % 2 M } - - - ( 4 )
步骤3,在步骤2所求得的备份编号集BBID的后继主节点中找出包含在步骤1所得BJID的所有主任务,并将这些主任务数据传输到失效主节点的后继主节点中进行存储备份;
4)有新的主节点加入Chord网络时,其任务迁移方法包括如下步骤:
步骤1,新主节点(master节点)加入后,新主节点的后继主节点在自己正在执行的主任务(job)中找出应该由新主节点负责执行的所有主任务,这些主任务的编号满足jobId∈(X,Y],其中,Y为新加入主节点的编号(masterId),X为Y的直接前驱主节点的编号(masterId),并将这些主任务传送至新加入的主节点继续执行,且在本节点删除这些主任务数据;
步骤2,新主节点的后继主节点利用公式(5)计算出备份编号集JBID,并在自身备份的主任务中取出属于JBID的所有主任务,并传送至新加入主节点进行备份,且在本节点删除这些主任务数据:
JBID = { id | ( X - i &CenterDot; 2 M - K 1 - j &CenterDot; 2 M - K 1 - K 2 + 2 M ) % 2 M < id &le; ( Y - i &CenterDot; 2 M - K 1 - j &CenterDot; 2 M - K 1 - K 2
+ 2 M ) % 2 M , id % 2 K 2 = j , 1 &le; i &le; 2 K 1 - 1,0 &le; j &le; 2 K 2 - 1 } - - - ( 5 )
其中,JBID为备份编号集,Y为新加入主节点的编号(masterId),X为Y的直接前驱主节点的编号(masterId)。
综上所述,在对等结构云平台中,主节点(master节点)及从节点(slave节点)建立Chord网络结构,并将用户节点(user节点)提交的主任务(job)进行哈希散列,赋予每个主任务唯一的任务编号(jobId),继而把主任务通过编号分配到Chord网络中相应的主节点上执行。这种方法可以将任务较均匀地分配给不同的主节点执行,有利于负载均衡。主节点将分得的主任务分解成多个从任务(task),通过一致性哈希函数,赋予每个从任务唯一的任务编号(taskId),并根据这一任务编号将各个从任务分配给Chord网络上对应的从节点执行。这种方法可以将从任务均匀地分配给不同的从节点执行,有利用负载均衡。对各个主节点负责执行的主任务进行备份操作,通过本文提出的备份策略将多个完全相同的主任务数据副本平均的存储在Chord网络中相应的主节点上,提高了任务执行的成功率。并对所有主任务通过取余进行分类,每类主任务数据按照规则分别进行备份,利用这种策略,将每个主节点上的主任务尽可能地备份到不同的主节点上存储,使得每个主节点的主任务备份更加均匀,有利于数据的并行下载和负载均衡,主任务恢复时,从多个主节点并行传输数据,效率更高,速度更快。由于备份主任务数据被平均的分配到Chord网络上对应的主节点中,当查找某一主任务数据时,备份主节点能协同完成索引,减少了路由跳数,提高了索引效率。

Claims (1)

1.一种对等结构云平台下节点任务的负载均衡方法,其特征是:构建对等结构云平台,将各个主节点以及从节点分别组织成对等结构的Chord网络。在任务处理过程中,有两类任务要执行:第一类是由发出任务处理请求的用户节点提交给主节点的任务,即主任务;另一类是主节点分配给从节点执行的任务,即从任务;在进行主任务以及从任务的分配时,利用Chord网络自身的优点使得各节点所处理的任务量相同,达到负载均衡;任务执行过程中,将每个主节点负责执行的主任务通过冗余备份方法进行备份,将所有主任务通过对主任务编号取余进行分类,每类主任务数据分别进行备份,每个主任务备份多个完全相同的主任务数据副本均匀存储在Chord网络中相应的节点上;当主节点失效时,通过主任务恢复方法进行主任务数据恢复;当有新主节点加入Chord网络时,通过新主节点加入方法进行主任务数据的转移恢复;每个主节点中均存储两部分主任务数据,一部分是该主节点正在执行的主任务数据,另一部分是该主节点备份其他主节点上正在执行的主任务数据。
其中:
1)任务执行过程包括以下步骤:
步骤1,利用一致性哈希函数,提交主任务的用户节点将准备提交执行的主任务,设为job_A,通过哈希其属性信息,赋予该主任务唯一的主任务编号,并通过这一编号将其发送到主节点Chord网络中对应的后继主节点,设为master_A上,由该后继主节点负责执行此主任务;
步骤2,主节点master_A将主任务job_A分配成多个从任务,并利用一致性哈希函数,通过哈希从任务的属性信息,赋予每个从任务唯一从任务编号,并通过这一编号将各个从任务发送到从节点Chord网络中对应的后继从节点上,由对应的后继从节点负责执行这些从任务;
步骤3,当由主节点master_A分配的所有从任务全部完成之后,主节点master_A负责将最终结果返回给用户节点;
2)主节点任务备份方法包括如下步骤:
步骤1,为了避免主节点失效所导致的主任务数据的丢失,将所有主任务编号通过求模取余运算,按余数分成
Figure FDA00002276404400011
类,并将每个主任务备份
Figure FDA00002276404400012
个完全相同的副本均匀的分布在Chord网络的主节点上进行备份,公式(1)为主任务备份的计算方法:
BjobId i = ( jobId + ( jobId % 2 K 2 ) &CenterDot; 2 M - K 1 - K 2 + i &CenterDot; 2 M - K 1 ) % 2 M , 1 &le; i &le; 2 K 1 - 1 - - - ( 1 )
其中,jobId为需要备份的主任务的编号,BjobIdi为需要备份的主任务的第i个备份任务的编号,M为Chord网络所用到的安全散列函数的哈希值长度,2M为Chord网络长度,K1、K2均为大于等于零的整数;
主节点根据BjobIdi将正在该节点上执行的需要备份的主任务数据发送到Chord网络中对应的后继主节点上备份;
步骤2,设置一个定时器T,由负责执行某主任务的主节点每隔时间T向所有备份该主任务的备份主节点发送主任务的更新信息,以保证任务数据的一致。
3)有主节点失效时,其任务恢复方法包括如下步骤:
3.1)失效主节点正在执行的主任务数据的恢复
步骤1,失效主节点在Chord网络上的后继主节点利用公式(2)计算出备份编号集BID:
BID = { id | ( X + 2 M - K 1 + j &CenterDot; 2 M - K 1 - K 2 ) % 2 M < id &le; ( Y + 2 M - K 1 + j &CenterDot; 2 M - K 1 - K 2 ) % 2 M ,
0 &le; j &le; 2 K 2 - 1 } - - - ( 2 )
其中,Y为失效主节点的编号,X为失效节点在Chord网络上的前驱主节点的编号;
步骤2,在步骤1求出的BID的后继主节点中找出编号jobId∈(X,Y]的主任务备份数据,并将这些数据传输到失效主节点的后继主节点中,继续执行;
3.2)失效主节点备份的其他主节点正在执行的主任务数据的恢复
步骤1,失效主节点在Chord网络上的后继主节点利用公式(3)计算出应该备份到失效主节点中的主任务的编号集BJID:
BJID = { id | ( X - i &CenterDot; 2 M - K 1 - j &CenterDot; 2 M - K 1 - K 2 + 2 M ) % 2 M < id &le; ( Y - i &CenterDot; 2 M - K 1 - j &CenterDot; 2 M - K 1 - K 2
+ 2 M ) % 2 M , id % 2 K 2 = j , 1 &le; i &le; 2 K 1 - 1,0 &le; j &le; 2 K 2 - 1 } - - - ( 3 )
其中,BJID为应该备份到失效主节点中的主任务的编号集,Y为失效主节点的编号,X为失效节点在Chord网络上的前驱主节点的编号;
步骤2,由任务备份方法得知,基于存储的对称性,失效主节点存储的备份主任务数据必定也全部存储在与Y节点顺时针间距为
Figure FDA00002276404400026
以及
Figure FDA00002276404400027
所对应的主节点序列中,利用公式(4)求出备份编号集:
BBID = { id | ( X + 2 M - K 1 ) % 2 M < id &le; ( Y + 2 M - K 1 ) % 2 M } &cup;
{ id | ( X + 2 M - K 1 + 1 ) % 2 M < id &le; ( Y + 2 M - K 1 + 1 ) % 2 M } - - - ( 4 )
步骤3,在步骤2所求得的备份编号集BBID的后继主节点中找出包含在步骤1所得BJID的所有主任务,并将这些主任务数据传输到失效主节点的后继主节点中进行存储备份;
4)有新的主节点加入Chord网络时,其任务迁移方法包括如下步骤:
步骤1,新主节点加入后,新主节点的后继主节点在自己正在执行的主任务中找出应该由新主节点负责执行的所有主任务,这些主任务的编号满足jobId∈(X,Y],其中,Y为新加入主节点的编号,X为Y的直接前驱主节点的编号,并将这些主任务传送至新加入的主节点继续执行,且在本节点删除这些主任务数据;
步骤2,新主节点的后继主节点利用公式(5)计算出备份编号集JBID,并在自身备份的主任务中取出属于JBID的所有主任务,并传送至新加入主节点进行备份,且在本节点删除这些主任务数据:
JBID = { id | ( X - i &CenterDot; 2 M - K 1 - j &CenterDot; 2 M - K 1 - K 2 + 2 M ) % 2 M < id &le; ( Y - i &CenterDot; 2 M - K 1 - j &CenterDot; 2 M - K 1 - K 2
+ 2 M ) % 2 M , id % 2 K 2 = j , 1 &le; i &le; 2 K 1 - 1,0 &le; j &le; 2 K 2 - 1 } - - - ( 5 )
其中,JBID为备份编号集,Y为新加入主节点的编号,X为Y的直接前驱主节点的编号。
CN201210400650.6A 2012-10-19 2012-10-19 一种对等结构云平台下节点任务的负载均衡方法 Expired - Fee Related CN102882981B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201210400650.6A CN102882981B (zh) 2012-10-19 2012-10-19 一种对等结构云平台下节点任务的负载均衡方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201210400650.6A CN102882981B (zh) 2012-10-19 2012-10-19 一种对等结构云平台下节点任务的负载均衡方法

Publications (2)

Publication Number Publication Date
CN102882981A true CN102882981A (zh) 2013-01-16
CN102882981B CN102882981B (zh) 2015-01-28

Family

ID=47484123

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201210400650.6A Expired - Fee Related CN102882981B (zh) 2012-10-19 2012-10-19 一种对等结构云平台下节点任务的负载均衡方法

Country Status (1)

Country Link
CN (1) CN102882981B (zh)

Cited By (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103929480A (zh) * 2014-04-11 2014-07-16 北京智谷睿拓技术服务有限公司 基于任务的数据备份方法及数据备份装置
CN104580381A (zh) * 2014-12-17 2015-04-29 北京可思云海科技有限公司 一种在多节点网络中执行作业任务的方法
CN104702646A (zh) * 2013-12-09 2015-06-10 腾讯科技(深圳)有限公司 数据传输方法及相关装置和通信系统
CN104754001A (zh) * 2013-12-30 2015-07-01 方正宽带网络服务股份有限公司 云存储系统和数据存储方法
WO2016095791A1 (en) * 2014-12-19 2016-06-23 Huawei Technologies Co., Ltd. Replicated database distribution for workload balancing after cluster reconfiguration
CN106250226A (zh) * 2016-08-02 2016-12-21 福建华渔未来教育科技有限公司 基于一致性哈希算法的任务调度机制及系统
CN106576112A (zh) * 2014-07-28 2017-04-19 谷歌技术控股有限责任公司 对等组重新形成
CN106953804A (zh) * 2016-01-07 2017-07-14 中国移动通信集团海南有限公司 被叫用户的路由信息查询方法及装置
CN107689010A (zh) * 2017-07-25 2018-02-13 平安科技(深圳)有限公司 批量处理保单任务的方法、装置、计算机设备及存储介质
CN108108233A (zh) * 2017-11-29 2018-06-01 上海交通大学 任务多副本执行的集群作业调度方法及系统
CN110661829A (zh) * 2018-06-28 2020-01-07 杭州海康威视系统技术有限公司 文件下载方法及装置、客户端和计算机可读存储介质
CN111079201A (zh) * 2019-12-09 2020-04-28 华中科技大学 一种安全nvm系统及其崩溃后的数据恢复方法
CN113821313A (zh) * 2020-12-28 2021-12-21 京东科技控股股份有限公司 一种任务调度方法、装置及电子设备
CN114500547A (zh) * 2022-03-22 2022-05-13 新浪网技术(中国)有限公司 会话信息的同步系统、方法、装置、电子设备及存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101719842A (zh) * 2009-11-20 2010-06-02 中国科学院软件研究所 一种基于云计算环境的分布式网络安全预警方法
CN101860559A (zh) * 2009-04-08 2010-10-13 中兴通讯股份有限公司 基于对等网络的资源信息备份操作方法及对等网络
US20120005274A1 (en) * 2010-07-02 2012-01-05 Electronics And Telecommunications Research Institute System and method for offering cloud computing service
CN102420854A (zh) * 2011-11-14 2012-04-18 西安电子科技大学 面向云存储的分布式文件系统

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101860559A (zh) * 2009-04-08 2010-10-13 中兴通讯股份有限公司 基于对等网络的资源信息备份操作方法及对等网络
CN101719842A (zh) * 2009-11-20 2010-06-02 中国科学院软件研究所 一种基于云计算环境的分布式网络安全预警方法
US20120005274A1 (en) * 2010-07-02 2012-01-05 Electronics And Telecommunications Research Institute System and method for offering cloud computing service
CN102420854A (zh) * 2011-11-14 2012-04-18 西安电子科技大学 面向云存储的分布式文件系统

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
WU JIAGAO ET AL.: "TCS-Chord: An Improved Routing Algorithm to Chord Based on the Topology-aware Clustering in Self-organizing Mode", 《PROCEEDINGS OF THE FIRST INTERNATIONAL CONFERENCE ON SEMANTICS, KNOWLEDGE, AND GRID (SKG 2005)》 *

Cited By (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104702646A (zh) * 2013-12-09 2015-06-10 腾讯科技(深圳)有限公司 数据传输方法及相关装置和通信系统
CN104754001A (zh) * 2013-12-30 2015-07-01 方正宽带网络服务股份有限公司 云存储系统和数据存储方法
CN103929480A (zh) * 2014-04-11 2014-07-16 北京智谷睿拓技术服务有限公司 基于任务的数据备份方法及数据备份装置
CN106576112A (zh) * 2014-07-28 2017-04-19 谷歌技术控股有限责任公司 对等组重新形成
CN106576112B (zh) * 2014-07-28 2019-08-02 谷歌技术控股有限责任公司 对等组重新形成
CN104580381B (zh) * 2014-12-17 2018-02-06 上海彩亿信息技术有限公司 一种在多节点网络中执行作业任务的方法
CN104580381A (zh) * 2014-12-17 2015-04-29 北京可思云海科技有限公司 一种在多节点网络中执行作业任务的方法
WO2016095791A1 (en) * 2014-12-19 2016-06-23 Huawei Technologies Co., Ltd. Replicated database distribution for workload balancing after cluster reconfiguration
US10102086B2 (en) 2014-12-19 2018-10-16 Futurewei Technologies, Inc. Replicated database distribution for workload balancing after cluster reconfiguration
CN106953804A (zh) * 2016-01-07 2017-07-14 中国移动通信集团海南有限公司 被叫用户的路由信息查询方法及装置
CN106250226A (zh) * 2016-08-02 2016-12-21 福建华渔未来教育科技有限公司 基于一致性哈希算法的任务调度机制及系统
CN107689010B (zh) * 2017-07-25 2022-04-29 平安科技(深圳)有限公司 批量处理保单任务的方法、装置、计算机设备及存储介质
CN107689010A (zh) * 2017-07-25 2018-02-13 平安科技(深圳)有限公司 批量处理保单任务的方法、装置、计算机设备及存储介质
CN108108233A (zh) * 2017-11-29 2018-06-01 上海交通大学 任务多副本执行的集群作业调度方法及系统
CN108108233B (zh) * 2017-11-29 2021-10-01 上海交通大学 任务多副本执行的集群作业调度方法及系统
CN110661829A (zh) * 2018-06-28 2020-01-07 杭州海康威视系统技术有限公司 文件下载方法及装置、客户端和计算机可读存储介质
CN111079201A (zh) * 2019-12-09 2020-04-28 华中科技大学 一种安全nvm系统及其崩溃后的数据恢复方法
CN111079201B (zh) * 2019-12-09 2021-12-03 华中科技大学 一种安全nvm系统及其崩溃后的数据恢复方法
CN113821313A (zh) * 2020-12-28 2021-12-21 京东科技控股股份有限公司 一种任务调度方法、装置及电子设备
CN114500547A (zh) * 2022-03-22 2022-05-13 新浪网技术(中国)有限公司 会话信息的同步系统、方法、装置、电子设备及存储介质

Also Published As

Publication number Publication date
CN102882981B (zh) 2015-01-28

Similar Documents

Publication Publication Date Title
CN102882981B (zh) 一种对等结构云平台下节点任务的负载均衡方法
EP3224746B1 (en) System and method for massively parallel processing database
US20120179723A1 (en) Data replication and failure recovery method for distributed key-value store
CN108469988A (zh) 一种基于异构Hadoop集群的任务调度方法
Chen et al. Towards scalable and reliable in-memory storage system: A case study with redis
CN102609446B (zh) 一种分布式Bloom过滤系统及其使用方法
CN111277629A (zh) 一种基于高可用性的web高并发系统及方法
CN102882973A (zh) 基于p2p技术的分布式负载均衡系统和方法
JP2008533564A (ja) データ管理のための方法および装置
CN103218233A (zh) Hadoop异构集群中的数据分配策略
CN104008152A (zh) 支持海量数据访问的分布式文件系统的架构方法
WO2010121218A2 (en) Policy-based storage structure distribution
CN101753405A (zh) 集群服务器内存管理方法及其系统
CN105518641A (zh) 点对点数据复制方法、设备和系统以及主节点切换方法、设备和系统
CN107343021A (zh) 国网云中应用的一种基于大数据的日志管理系统
CN106796537A (zh) 计算集群中的分布式组件
CN112492022A (zh) 提高数据库可用性的集群、方法、系统及存储介质
CN108153759B (zh) 一种分布式数据库的数据传输方法、中间层服务器及系统
Dai et al. Sedna: A memory based key-value storage system for realtime processing in cloud
Zhao et al. Research of P2P architecture based on cloud computing
CN103401951A (zh) 基于对等架构的弹性云分发方法
CN102880832A (zh) 一种集群下的数据海量管理的系统的实现方法
CN107547657A (zh) 一种基于云存储系统中单点数据编号的方法、装置以及存储介质
CN106227465A (zh) 一种环结构的数据放置方法
Xue et al. Replica placement in cloud storage based on minimal blocking probability

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
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20150128

Termination date: 20211019