网站首页  词典首页

请输入您要查询的论文:

 

标题 云计算系统中能量有效的数据摆放算法和节点调度策略
范文 倪斌
摘 要: 云计算系统中数据中心的能耗问题早已成为人们广泛关注的一个重点问题,从绿色节能角度分析如何对云计算平台中的各种节点进行调度、对云计算系统中有效能量数据进行摆放是非常关键的问题。目前已有的节点调度策略无法在云计算系统中获得较好的节能功效,导致云计算中的数据摆放成为一个比较严重的问题。通过对云计算系统中能量有效数据摆放算法和节点调度策略进行分析,为增强数据摆放方法与节点调度的有效性奠定良好的基础。
关键词: 云计算系统; 能量有效性; 数据摆放算法; 节点调度策略
中图分类号: TN702.2?34 文献标识码: A 文章编号: 1004?373X(2015)09?0080?03
Abstract: Energy consumption is widespread concerned of data center in the cloud computing, the key problem is to analyze how to schedule the node in cloud computing platform and how to place the effective energy data in cloud computing system with green energy saving point. In cloud computing system, the energy saving effect is unable to obtain by the existing strategy of node scheduling currently, so cloud computing data placement becomes a serious problem. Energy efficient data placement algorithm and node scheduling strategy of cloud computing system is analyzed, it built a good foundation to enhance the feasible of data placement method and the effective of node scheduling.
Keywords: cloud computing system; energy efficiency; data placement algorithm; node scheduling strategy
伴随网络技术的不断发展及其运用范围的不断扩大,人类获取数据及生产的能力也在不断的发展,从而致使海量数据的运用越来越普遍。为了对海量数据的计算和管理提供有效的支持,出现了许多大规模、超大规模的数据密集型的计算平台,比如云计算系统的出现,给人们使用大型计算系统提供了快捷、方便的计算服务和数据管理。但是,这些计算系统在使用的过程中同样面临着许多潜在的威胁,其中能量消耗问题是最严重的。
1 云计算系统中动态数据的摆放算法
1.1 数据块的初始摆放
一般情况下,云计算系统中的数据量都显得比较大,且其是事先就准备好的,因而对云计算系统中的数据进行合理的摆放能够使云计算系统的相关性能得到不断地提升。在云计算系统中的服务器处于集群初始的状态时,且相关的数据信息是已知的,对这些已知的数据进行初始化的布置及预处理的作用是可以访问到更多数据,且使其实现顺序访问,从而就可以达到一定的节能效果。
对已知的数据进行处理的过程中,首先应该把数据全部划分成大小为[B]的相应的数据块,这样就可以获得全数据块的集合,其集合表示为[D={d0,d1,…,dm-1}。]为了使数据的可靠性得到有效的保证,应在节点中对数据块进行备份,且对备份好的数量做好相应的定义,其可以定义成备份因子[K,]其中[K]大于1。这样,就可以使各个数据块都获得一个相应的主备份块,主备份块则用[p]表示,且可以获得[k-1]个从备份的数据块。假设任务请求对数据块进行访问,其首先是对主备份块进行访问。主备份块出现更新时,将更新的信息在统一的时间内传递到全部从备份的数据块中;若没有存在特殊的情况,只有主备份块出现错误或者过载时,从备份数据块才会被任务请求访问。
对云计算平台中数据摆放的算法进行分析的过程中,可以将数据储存的节点集合设为[S,]其中[S={S0,][S1,…,SN-1},][N]表示的是节点的个数。此时,数据块的初始化摆放如下:根据备份的因子数,把包含从数据块、主数据块的全部数据分成[K]组,其中每个组均与数据块个数为[M]的全数据集合相等,并在[NK]个节点中对该数据块进行储存,各个分组中所分配的节点都不一样。每一个组内存放一张节点位置的映射表和数据库,将全部数据库位置映射表(Map)存储在主控模块中。从节能和响应时间这两个方面进行综合考虑,组和组间可以运用不一样的布置策略。因此综合响应时间和节能的考虑,通过组间不同数据的分配方法,为了让组和组间的映射位置有所区别,可以利用随机映射的方法,随机将各组中的数据块映射到[NK]个节点里,进而得出这个组的具体位置映射表,之后再把全部位置映射表存放在主控模块的位置映射表中。
1.2 对动态数据的摆放算法进行分析
在分析动态数据的摆放算法时,首先给出相应的动态数据摆放算法定义及公式,根据任务请求需要的相关数据块在每个节点中的分布及分布多少,可以给出相应的定义1:在各个节点[s∈S]中,含有的总数据块为[q,]达到任务请求队列的需求量,该节点覆盖率定义为[1][γ(s)=pq]。
另外,为了使数据可靠性得到有效的保证,可以采用数据块的备份机制,各个数据块均有一个相应的主备份块及无数个从备份块,将主备份数据块进行转移来达到转移数据的目的。但是,对数据进行转移的过程中,要求必须在相同数据之间才可以进行转移,因此可以得出相应的定义2:若节点[s]与节点[st]中存在数据块相同的备份,说明[s]与[st]之间的数据是可以互相进行交换。动态数据的摆放算法得以启动的前提是,集群中的部分节点资源的利用率缺少相应的合理性,当其没有所给定的阈值大时,就能够对数据进行转移,并把该节点关闭,这样就可以节省一定的能量,减少能量的消耗。但是,当资源的利用率比给定阈值大时,一定要将节点的性能考虑进去,对其进行相应的调整,且不可以再向此节点转移数据。由此可以得出,节点资源的利用率高低直接影响着数据摆放,因此可以给出相应节点资源的利用率公式:[U=e·Ucpu+(1-e)?Udisk,]其中,[e]代表比例因子;[Ucpu]表示利用率;[Udisk]表示磁盘利用率。得出相应的定义及计算公式之后,就可以根据公式进行相应的计算[2]。
例如,给出相应的动态数据摆放算法:在进行计算的过程中,算法基本的输入是数据块映射表和节点,输出则是数据摆放的策略。在Map中找出资源利用率较低或者较高的相关节点,放入节点的集合(Sutil)公式中,对所有节点资源的利用率(Us)进行计算,并对其进行相应的判断,看其是否比给定的阈值(Uup)大;如果比Uup大,则说明该节点是过载的节点,必须将该节点中主备份的数据块转移到资源利用率比较低的、能够进行交换的其他节点中;若Us没有Uup大,应该把此节点主备份的数据块全部转移到另外的节点,再利用节点的调度策略将该节点调到节能的状态。在动态的数据摆放算法中,数据块的转移主要是对主备份的数据块进行转移,这样能够使数据的转移量在最小的范围之内,达到一定的节能目的。
2 对调度算法进行分析
云计算系统节能效果主要是受到节点调度的影响,对节点调度的相关策略进行探讨是研究云计算系统节能的关键所在。在云计算系统中运用批处理及online调度模型,可以使调度算法得到相应的优化,批处理的调度算法比较适合运用在任务请求的时间要求不够严格的情况中;而online调度则属于批处理调度中的特殊情况之一,其算法通常适合运用在实时性较高的环境中。
2.1 分析批量处理调度的具体定义及其算法
采用批处理调度的算法进行计算的前提条件是,任务请求的时间要求缺少一定的严格性,在调度时间全部结束时对任务请求进行相应的处理,如果集群在开始时期都处在关闭的状态,且在调度的时间范围内,可以将任务请求完全队列为Jrequest={r0,r1,…,rw},其中w大于0,可以将各个节点中任务执行的时间设为Ti= Tcpu+Ti/o,计算的过程每个节点的平均功率为Pavg,此时集群中节点集合所消耗的功率为Pcluster=aPavg,a代表开启的节点数目[3]。利用节点调度的策略让任务请求队列执行时间缩到最短,根据初始化数据分配的相关策略可以得出,对任务进行并行处理能够缩短任务执行的时间,让其达到最小值。
由于组间所采用的摆放方法不一样,因此任务执行并发度就会显得越高,使任务执行的时间变得越小。假设知道功率上限,并给出相应的优化目标,如目标1:
目标1:已知Pmax,计算出[minTe=i=0a-1Ti。]
目标公式中的Pmax表示集群消耗功率上限,而[Te]表示全部任务请求的总执行时间。在该优化目标中主要是利用节点调度让[Te=i=0a-1Ti]达到最小。
接下来根据给出的问题定义,如在问题定义1中,输入:Map,Pmax,Jrequest={r0,r1,…,rn}(n大于0);输出:任务分配策略,且JS={JS|Jrequest→S},其约束条件为min[Ti,]并且i小于等于N。问题定义1给出了功耗问题,对其性能进行求解[4]。
2.2 分析批量处理调度的相关算法
在优化目标1中,可以对任务并行执行,且根据初始数据摆放的策略,可以让任务执行的时间缩短到最小。批处理节点的调度计算方法如下:
输入:初始化数据摆放策略映射表、集群消耗上限功率、Jrequest。
输出:任务分配策略。
参照Map计算出[S]中的全部节点覆盖率Y(s),再计算出[V=PmaxPavg,]其中While Jrequest≠[?]do,将Y(s)中最高的前V个节点开启。
If ri表示读操作,ri[∈]Jrequest,且必须把ri分配到任意的节点开启中,对JS进行更新。如果当前所开启的节点中没有任务请求,应从关闭的节点中将Y(s)的最高节点找出来并开启,把当前的节点全部关闭,调用相应的动态数据摆放算法。根据以上的批处理节点调度算法,因为已经知道每一台机器的平均功率(Pavg),所以可以得出云计算系统中可以开启的、最大的节点数目为[V=PmaxPavg,]将问题转换为给定可用的节点数[V,]对如何使调度节点中任务执行的时间[Te]达到最小进行求解。在覆盖率中,每次所选的必须都是前[V]个节点中最高的节点,通过这[V]个节点进行并行化,并对该任务及性能做出相应地判断,看其是否属于读操作,如果属于读操作可以将分配在此任务中的任意节点开启,如果不是则只可以对节点开启中的主数据库进行相应的操作[5]。
2.3 分析online调度算法定义及算法
在批处理调度算法实时性要求比较高的条件下,无法发挥更好的性能,因此可以采用与实时性相适应的online调度策略。因为任务请求主要是对数据的主备份块进行访问,所以对于处在没有开启状态中的[P,]可以利用动态的数据摆放算法交换相应的数据。
优化目标2:已知Pmax,计算出[minTe=i=0a-1Ti。]
问题定义:输入Map、Jrequest,输出节点调度策略,已知集群消耗功率的上限是Pmax,且优化目标主要是利用节点调度来让任务请求执行的时间Te达到最小。
3 结 语
云计算系统是规模较大的数据计算系统典范,云计算系统中的能量消耗问题比较严重。影响云计算系统不断发展的主要因素是节能技术,节能计算是云计算系统底层中的一项服务。在本研究中,通过利用启发式动态数据摆放算法对云计算系统中的数据摆放问题进行有效处理,不仅使节点调度策略达到了相应的节能功效,并且还对云计算系统中的约束条件进行了考虑。进而给云计算系统中的节点调度策略提供较大的空间,由此证明本文提出的计算方法在云计算系统中是可行的、有效的方法。
参考文献
[1] 肖艳文,王金宝,李亚平.云计算系统中能量有效的数据摆放算法和节点调度策略[J].计算机研究与发展,2013,23(z1):342?351.
[2] 王鹏,张磊,郭又铭.云计算系统相空间分析模型及仿真研究[J].计算机学报,2013,25(47):257?258.
[3] 吴煜祺,曾国荪,曾媛.云计算环境下调度算法的趋势分析[J].微电子学与计算机,2012,52(33):7655?7657.
[4] 徐小龙,李玲娟,王汝传.面向绿色云计算数据中心的动态数据聚集算法[J].系统工程与电子技术,2013,42(21):475?479.
[5] 左利云,曹志波.云计算中调度问题研究综述[J].计算机应用研究,2012,83(65):1765?1767.
[6] 程春玲,张登银,徐小龙.一种面向云计算的分态式自适应负载均衡策略[J].南京邮电大学学报,2012,61(76):341?343.
随便看

 

科学优质学术资源、百科知识分享平台,免费提供知识科普、生活经验分享、中外学术论文、各类范文、学术文献、教学资料、学术期刊、会议、报纸、杂志、工具书等各类资源检索、在线阅读和软件app下载服务。

 

Copyright © 2004-2023 puapp.net All Rights Reserved
更新时间:2025/2/11 0:57:40