一种地理空间数据在云计算平台上的负载均衡方法

文档序号:6612723阅读:340来源:国知局
专利名称:一种地理空间数据在云计算平台上的负载均衡方法
技术领域
本发明涉及一种地理空间数据在云计算平台上的负载均衡方法,属于云计算技术领域。
背景技术
云计算是一种商业计算模型将计算任务分布在大量计算机构成的资源池上,使各种应用系统能够根据需要获取计算力、存储空间和信息服务。现在google公司和开源云计算平台hadoop等都使用map-reduce平行计算模型。该模型为海量数据的处理提供了一个通用、高效的技术框架,从而在地理空间数据查询处理、数据挖掘等领域得到了越来越广泛的应用。地理空间数据是多维数据,基于map-reduce的地理空间数据处理首先要将多维的空间目标映射成一维的目标(key/value键值对)。常用的方法是采用希尔伯特或Z-排序等空间填充曲线编码分块。由于地理数据的空间分布一般是不均匀的,编码后的数据分块的数据信息量也不同。如何找到一种分配方法,将这些数据分块按数据量均匀的分配给各个map节点,对改进云计算平台的负载均衡、提高处理效率具有重要意义。已有的并行空间数据库中的数据分配方法(如轮转法、散列法等)均是按数据块或元组的个数进行平均分配,并不能保证数据处理量的平衡,且易破坏数据块之间的空间拓扑关系。而面向云计算map-reduce模型的空间数据分配方法的研究尚处于起步阶段,相关工作还不成熟。Ariel Cary等人提出了在对Z-排序编码的海量地理空间数据处理前进行采样处理,然后根据采样样本和映射节点的数目,按个数将采样样本均分给映射节点。该文对海量数据采用了采样策略,然而未考虑海量数据的不均衡性,这样可能导致各个映射节点中的数据量大小不一致,使得mapreduce处理时负载失衡。Shubin Zhang等人提出了海量的地理空间数据在空间分布上是不均衡的,提出了基于空间填充曲线编码和轮转法相结合的数据分配均衡方法。但该方法也没有考虑数据分块之间的不均匀性,以及数据分块之间的拓扑关系。这将导致mapreduce模型的整体运行效率下降。

发明内容
本发明针对上述背景技术的不足,提供了一种地理空间数据在云计算平台上的负载均衡方法,该方法在处理海量的地理空间数据时,在考虑各个数据分块相关性的前提下,为使map-reduce模型更有效的工作,综合了三种算法(均值法、回溯法、二分法)各自的优缺点之后,得到一个整体的算法,能均衡地将地理空间数据分配给各个映射节点进行处理。本发明为实现上述发明目的采用如下技术方案一种地理空间数据在云计算平台上的负载均衡方法,其特征是对地理空间数据进行希尔伯特(Hilbert)空间填充曲线排序,根据地理空间数据所划分的数据块和云平台处理时映射(map)节点的数量,对数据块进行采样,得到采样数据块;然后对采样数据块进行判断是否适合使用均值法,若适合则直接求解划分,不适合则再判断是否适合使用回溯法,若适合则直接求解划分,不适合则按照二分法,将采样数据块和映射节点数分成两部分,对每一部分重复上面的操作,直到所有的采样数据块对应分配到各个映射节点为止。最后,将各采样数据块所对应的相邻数据块分配给各个映射节点进行处理。具体包括如下步骤步骤1,将地理空间数据按照希尔伯特(Hilbert)空间填充曲线划分为一个按照空间分布规律编号递增的数据块集合,设划分后的总数据块数为龙,按照采样间隔M=lg々/10进行采样,得到采样数据块数为N,设S、P分别表示采样数据块的数据量数列和最后要分割的位置数列,M为要分配的映射(map)节点总数,H1为首采样数据块序号,n2为尾采样数据块序号,In1为首映射节点序号,Iii1为尾映射节点序号,n^-rii+l, Hi=Hi2-Hi1+!;对于给定的s,按照如下的方法找到一个分割方案,使得每个映射节点要处理的数据量尽量均步骤2,定义数据块平均数据量满足
4/]
判断是否满足均值法条件
W2-Hil+!
V4/]<,若成立,则利用均值法分配,否则进入步骤3 ;步骤3,判断是否满足回溯法的条件麟-勒+ ΚφΜψ = rig^l,若成立,则利用回溯法分配,否则进入步骤4;步骤4,利用二分法将采样数据块和映射节点分成两部分,每部分分别进入步骤2继续分配;步骤5,上述步骤结束后,根据最后的分配结果P [I]到P [M],将各采样数据块所对应的相邻Ns个数据块分配给各个映射节点进行处理;其中a)均值法步骤a-Ι,依次对各个采样数据块的数据量进行叠加,直至出现如下情况

权利要求
1.一种地理空间数据在云计算平台上的负载均衡方法,其特征是对地理空间数据进行希尔伯特空间填充曲线排序,根据地理空间数据所划分的数据块和云平台处理时映射节点的数量,对数据块进行采样,得到采样数据块;然后对采样数据块进行判断是否适合使用均值法,若适合则直接求解划分,不适合则再判断是否适合使用回溯法,若适合则直接求解划分,不适合则按照二分法,将采样数据块和映射节点数分成两部分,对每一部分重复上面的操作,直到所有的采样数据块对应分配到各个映射节点为止;最后,将各采样数据块所对应的相邻数据块分配给各个映射节点进行处理;包括如下步骤 步骤1,将地理空间数据按照希尔伯特空间填充曲线划分为一个按照空间分布规律编号递增的数据块集合,设划分后的总数据块数为及,按照采样间隔-L=IgA/10进行采样,得到采样数据块数为N,设s、p分别表示采样数据块的数据量数列和最后要分割的位置数列,M为要分配的映射节点总数,H1为首采样数据块序号,n2为尾采样数据块序号,Hi1为首映射节点序号,In1为尾映射节点序号,n^-rii+l, Hi=Hi2-Hi1+!;对于给定的s,找到一个分割方案,使得每个映射节点要处理的数据量均衡; fl-yΤψ] 步骤2,定义数据块平均数据量满足y £ ,判断是否满足均值法条件 S,m2-mx+\ ’若成立,则利用均值法分配,否则进入步骤3 ; 步骤3,判断是否满足回溯法的条件/%-_+ 1<<ρ,取若成立,则利用回溯法分配,否则进入步骤4; 步骤4,利用二分法将采样数据块和映射节点分成两部分,每部分分别进入步骤2继续分配; 步骤5,上述步骤结束后,根据最后的分配结果P [I]到P [M],将各采样数据块所对应的相邻Ns个数据块分配给各个映射节点进行处理; 其中 a)均值法 步骤a-Ι,依次对各个采样数据块的数据量进行叠加,直至出现如下情况 /_ y+i_ 工jjV]Sand^s{/] > k.S, \<k<m-\ i=r\i=}\ 作如下判断操作 s,则第/个映射节点所分配的采样数据块到箄/个为止 —ηλ -Πγ j _ j+l _ H [朋-卜A则第外映射节点所分配的采样数据块到箄/+1个为止 I-Thi -Πγ 步骤a-2,分配完前m-Ι个映射节点之后,最后一个映射节点即是最后剩余所有的采样数据块,最后的分配结果存储到P[mj到p[m2]中; b)回溯法 步骤b-Ι,回溯法是根据状态空间树,每个节点代表一个分割点,从中筛选出答案节点,再从答案节点中选择出满足条件的优化答案节点,每个非叶子结点都生成n2-i-(m2-mi)个子节点,分别是当前遍历的子节点后面连续数据块所对应的分割点;初始限界函数如下定义先将η个数据块均分为m份,其中第i个映射节点的数据为第
全文摘要
一种地理空间数据在云计算平台上的负载均衡方法,其特征是对地理空间数据进行希尔伯特空间填充曲线排序,根据地理空间数据所划分的数据块和云平台处理时映射节点的数量,对数据块进行采样,得到采样数据块;然后对采样数据块进行判断是否适合使用均值法,若适合则直接求解划分,不适合则再判断是否适合使用回溯法,若适合则直接求解划分,不适合则按照二分法,将采样数据块和映射节点数分成两部分,对每一部分重复上面的操作,直到所有的采样数据块对应分配到各个映射节点为止。最后,将各采样数据块所对应的相邻数据块分配给各个映射节点进行处理。
文档编号G06F17/30GK102929989SQ20121040151
公开日2013年2月13日 申请日期2012年10月19日 优先权日2012年10月19日
发明者吴家皋, 周凡坤, 邹志强, 刘林峰 申请人:南京邮电大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1