收藏 分享(赏)

基于模糊聚类的云任务调度优化策略研究.doc

上传人:weiwoduzun 文档编号:1875418 上传时间:2018-08-28 格式:DOC 页数:79 大小:2MB
下载 相关 举报
基于模糊聚类的云任务调度优化策略研究.doc_第1页
第1页 / 共79页
基于模糊聚类的云任务调度优化策略研究.doc_第2页
第2页 / 共79页
基于模糊聚类的云任务调度优化策略研究.doc_第3页
第3页 / 共79页
基于模糊聚类的云任务调度优化策略研究.doc_第4页
第4页 / 共79页
基于模糊聚类的云任务调度优化策略研究.doc_第5页
第5页 / 共79页
点击查看更多>>
资源描述

1、 硕士 硕士学位论文董世龙基于模糊聚类的云任务调度基于模糊聚类的云任务调度优化策略研究优化策略研究董世龙二一四年六月2014分类号 密级UDC硕士学位论文基于模糊聚类的云任务调度优化策略研究董世龙学科专业 计算机软件与理论指导教师 陈宁江教授论文答辩日期 2014年 5月 24日学位授予日期答辩委员会主席 王汝凉教授广西大学学位论文原创性和使用授权声明本人声明所呈交的论文,是本人在导师的指导下独立进行研究所取得的研究成果。除已特别加以标注和致谢的地方外,论文不包含任何其他个人或集体已经发表或撰写的研究成果,也不包含本人或他人为获得广西大学或其它单位的学位而使用过的材料。与我一同工作的同事对本论

2、文的研究工作所做的贡献均已在论文中作了明确说明。本人在导师指导下所完成的学位论文及相关的职务作品,知识产权归属广西大学。本人授权广西大学拥有学位论文的部分使用权,即:学校有权保存并向国家有关部门或机构送交学位论文的复印件和电子版,允许论文被查阅和借阅,可以将学位论文的全部或部分内容编入有关数据库进行检索和传播,可以采用影印、缩印或其它复制手段保存、汇编学位论文。本学位论文属于:保密,在不保密。年解密后适用授权。(请在以上相应方框内打“” )论文作者签名: 日期:指导教师签名:作者联系电话:日期电子邮箱:基于模糊聚类的云任务调度优化策略研究摘要云计算作为解决大数据和分布式计算的主要技术手段,将集

3、群资源以按需服务的方式提供给最终用户,而如何有效合理地分配资源和调度任务,已成为影响云计算应用效率的重点与难点,直接影响着云平台的整体性能和用户的使用满意度。云环境下集群主机节点存在着大量的异构性、多样性、不确定性和模糊性,很难准确地对资源和任务进行描述,如何分配资源去完成具有不同需求的作业任务存在复杂性。而基于模糊聚类的云资源划分和云任务调度已经成为业界的研究热点,但是随着集群规模不断壮大,云环境下拥有的主机数量已达到成千上万的规模,随之而来的问题是传统串行的模糊聚类划分算法在应对高维、超高维矩阵运算时存在运算量大、运算效率低、运算空间不足等问题,导致聚类耗时过长,无法满足云计算环境中集群资

4、源聚类的时效要求。因此,需要对传统串行模糊聚类算法进行优化和改进,才能更好地应用于云计算领域。首先,针对应用于云计算环境下的传统串行模糊聚类划分算法进行研究,对比分析了三种传统聚类算法(传递闭包法、最大树法和编网法),并总结了它们的特点和不足,提出了基于模糊等价关系和模糊相似处理的优化和并发策略,能够减少聚类的运算量,提高聚类运算效率,大幅缩短聚类耗时。实验结果表明,提出的优化和并发策略能够有效解决现有工作在面对中小规模云集群资源聚类划分过程中聚类耗时开销过大的问题。然后,针对现有工作在面对大规模集群资源聚类运算时,传统模糊聚类算法始终存在的运算内存不足、计算量超大,直接导致无法进行云集群I资

5、源聚类划分运算的问题,提出一种基于 MapReduce框架的模糊聚类算法并行化实现方案,并提出通过构造一个“同构” 小型云去调度一个“异构”大型云的设想。实验结果表明,提出的并行策略具有良好的加速比和扩展性,能够有效解决现有工作在面对大规模云集群时无法进行资源聚类划分的问题;并通过与并发策略结合使用,可适用于各种规模的云集群资源模糊聚类划分工作。最后,针对现有 Hadoop调度算法在异构性方面存在的调度效率低下的问题,将并发和并行后的模糊聚类研究成果应用到 Hadoop集群的资源划分工作中,提出了一种基于模糊聚类和性能评分机制 的 Hadoop调度器(FC-PS Scheduler ),并通过

6、仿真实验说明了 FC-PS Scheduler的有效性。关键词:云计算模糊聚类资源聚类 Hadoop任务调度IIRESEARCH ON OPTIMIZATION OF CLOUD JOB SCHEDULING STRATEGY BASED ON FUZZY CLUSTERING ABSTRACTAs a major technical solution of big data and distributed computing, cloudcomputing provides the cluster resources to the end users in the form ofon-dem

7、and services. How to allocate resources and schedule jobs effectivelyand reasonably have become the key points and difficulties. It not only has aninfluence on the efficiency on cloud computing applications, but also has adirect impact on the overall performance of cloud platform and user satisfacti

8、on.In the cloud computing environment, cluster nodes are heterogeneous, diverse,uncertain and fuzzy, so it is difficult to accurately describe resources and jobs,and it leads to the complication of on-demand resource allocation. Resourceallocation and job scheduling based on fuzzy clustering have be

9、come a hotresearch topic. As the cluster scale is getting enlarged, the number of nodes hasalready reached hundreds of thousands. When dealing with high-dimensionaland super high-dimensional matrix operations, the traditional serial fuzzyclustering algorithm has the problem of high-amount computiati

10、on, low effiency,computation space shortage and so on, so its unable to meet the timelinessrequirements of resource clustering in the cloud computing environment.Therefore, optimization and improvement have to be made based on traditionalserial fuzzy clustering algorithm, in order to suit cloud comp

11、uting better.Firstly, study on the traditional serial fuzzy clustering algorithm in theIIIcloud environment, compare and analyze three traditional clustering algorithmsand summarize their features and shortcomings. An optimization andconcurrency strategy based on fuzzy equivalence relation and fuzzy

12、 similarityprocessing, it can reduce the amount of computation, improve computingefficiency, and shorten the time-consuming. Experimental results show,compared to the existing methods, the strategy can effectively solve the problemof high overhead in the small and medium-scale cloud resource cluster

13、ingdivision process.Secondly, in order to deal with the problem of difficulty to divide resourceclustering caused by high-amount computation and memory shortage in thetraditional fuzzy clustering algorithm, a concurrency fuzzy clustering algorithmbased on MapReduce is implementated, and a proposal o

14、f scheduling a“heterogeneous” big cloud by constructing a “homogeneous” small cloud isintroduced. Experimental results show that the proposed concurrency strategyhas good speedup and scalability, can divide resource clustering effectively inthe large-scale cloud clusters, and can be used to differen

15、t cloud scales.Finally, in order to improve the Hadoop scheduling effiency in theheterogeneous environment, the concurrent and pararrel fuzzy clusteringalgorithm is applied. A new hadoop scheduler based on fuzzy clustering andperformance scoring mechanism (FC-PS Scheduler) is introduced, and thesimu

16、lation results show its effectiveness.KEY WORDS: Cloud Computing, Fuzzy Clustering, Resources Clustering,Hadoop, Job SchedulingIV目 录第一章绪论 . 11.1研究背景 11.2研究意义与研究内容 21.3论文组织结构 4第二章基于聚类理论的资源划分和任务调度相关研究 52.1基于聚类理论的云资源划分和云任务调度 52.1.1聚类理论在云计算领域的应用.52.1.2现有工作的不足和挑战.82.2 Hadoop调 度器的研究现状92.2.1 Hadoop自带的三大调度算

17、法 .102.2.2 Hadoop调度算法的改进研究 .122.3本章小结 .14第三章基于模糊等价关系和模糊相似处理的优化策略. 163.1云资源模糊聚类划分模型 .163.1.1云资源聚类划分的一般步骤173.1.2三种聚类方法的比较223.1.3实验与分析233.2模糊聚类算法的优化策略 .263.2.1传递闭包法的优化263.2.2模糊相似处理、模糊等价处理的并发293.2.4实验与分析303.3本章小结 .35第四章基于模糊相似处理的模糊聚类算法并行化实现方案. 374.1并行化方案的应用背景 .374.1.1解决方案的来源 374.1.2方案的可行性分析 384.2 MapRedu

18、ce框架的计算模式404.3基于MapReduce 的并行模糊聚类算法414.4实验与分析 .474.5本章小结 .52第五章基于模糊聚类和性能评分机制的 Hadoop调度器 535.1基于模糊聚类的调度算法构思 .535.2基于Slot的性能 评分机制 555.3基于模糊聚类和性能评分机制的Hadoop调度器 565.4实验与分析 .595.5本章小结 .63第六章结束语 656.1工作总结 .656.2工作展望 .66参考文献. 67致谢. 72攻读硕士学位期间参加的科研项目和发表的学术论文 73I广西大学硕士学位论文 基于模糊聚类的云任务调度优化策略研究第一章绪论1.1研究背景云计算技术

19、作为网格计算、分布式计算、效用计算等传统技术的商业化实现方案,已被众多 IT巨 头和研究机构所使用, 应用领域遍及各行各业1。它通过基础设施即服务IaaS、软件即服务 SaaS、平台即服 务 PaaS等多种形式将集群中的各种 资源以一种按需服务的方式提供给最终用户2,3 。作为云计算技术的先驱,Google公司自 2003年以来陆续公开发表了 Google 的三大核心技术:GFS4、BigTable5和 MapReduce 6,它 们为 Google的搜索引擎及各项服务提高了强大的技术支撑。与此同时,这也带动了一批开源云计算产品如火如荼地发展,其中最为经典的是 Apache开源社区开发和贡献的

20、 Hadoop7,作为 MapReduce计算模型和 GFS的一个开源实现,它已成为一个可靠性好、扩展性强的分布式计算和存储平台,被越来越多研究机构和公司用于数据挖掘、日志分析、广告计算和科学实验等。从各家IT公司公布的数据 获悉,近年来 Hadoop集群的规模在不断扩大,例如在 2013年,腾讯公司基于 Hadoop 的分布式数据仓库 TDW 单集群规模已达到 4400台,阿里的云梯Hadoop集群的服 务器数量已达到 5000台,雅虎和百度公司的 Hadoop集群规模已经过万台。随着云计算环境中集群规模不断壮大,如何有效合理地分配资源、调度任务,已成为影响云计算应用效率的重点与难点,直接影

21、响着云平台的整体性能和用户的使用满意度8,9。而 Hadoop作业任务调度算法的好坏直接影响 MapReduce分布式计算框架的性能优劣,而其自带的三种作业调度算法(FIFO调度算法 FIFO Scheduler、计算能力调度算法 Capacity Scheduler10 和公平份 额调度算法 Fair Scheduler11)都是建立在同构集群的前提下,即将集群中各节点的性能看成是一样的12 。而随着集群规模的增大,新老软硬件的交替,实时负载变幻莫测,集群各节点的异构性将会大大增加,各节点 CPU、内存、网络、硬盘等资源情况差异增大;相同配置的节点其上运行云服务的负载不同也会导致集群实际状态

22、的异构性。Hadoop集群环境的异构性将会导致在不同节点上运行相同的子任务时,由于节点其上的资源情况和性能差异的原因,使得各子任务的运行进度实际并不相同,出现“拖后腿” 节点、实际作业负载并不均衡,用户和作业得到的资源性能总和可能存在较大差异,系统优势资源得不到1广西大学硕士学位论文 基于模糊聚类的云任务调度优化策略研究优先利用等问题。针对 Hadoop 自带的三种作业调度算法在面对异构环境时,存在调度性能不佳、资源利用效率低等问题,因此有必要对异构环境下 Hadoop集群的资源划分和作业调度算法进行研究和改进,对提高云计算平台的整体系统性能和资源利用率具有重要意义。1.2研究意义与研究内容云

23、计算平台的资源划分和任务调度一直都是业界研究的热点与难点。云环境下集群节点存在着大量的异构性、不确定性和大规模性,如何描述集群中的系统资源与作业任务存在困难,这使得分配资源去完成不同类型作业任务存在较大的复杂性。例如:在使用 Hadoop集群 对作业进行处理时,需要考虑用户对不同资源的需求偏好,像“文本搜索”这类作业 ,主要受集群网 络带宽和各个节点硬盘 I/O速度的限制,而像“ 日志分析”这类作业,主要依靠 CPU的处理能力。只有将合适的、足够的、均衡的系统资源去最大限度地满足用户的任务需求,才能更好地提高用户的使用满意度。正是由于云集群资源的异构性、动态性等特点,使得发现合适资源并对其进行

24、组织和利用以满足实际应用之需存在困难13 。因此有必要对云资源、网格资源进行数据挖掘,考虑如何有效地发现和区分这些不同主机节点间的相似性,进行聚类或者分组形成若干个资源子集,使同一类中的节点具有较高的相似度或相关度,而不同簇类中的节点之间差别较大,则可将每个子群看成是独立的“同构 ”小集群,将整个集群看成是由 许多个 “同构”小集群组成的“ 异构”大集群,从而能够降低对资源进行选择的时间和空间复杂度,能够提高资源分配的准确性,并且能够将整个云平台在资源层次上屏蔽异构性带来的负载不均衡、资源利用率不高等问题。目前,将基于等价关系的模糊聚类分析算法 14,15 应用于云计算环境下的云资源分配、云任

25、务调度等问题,借助模糊数学和模糊理论来构建云计算环境下的资源划分模型、任务调度模型,已成为国内外学者研究的重要问题,实践证明了模糊聚类算法在云计算场景下的可行性和有效性。但是现有工作较多的是在云任务调度的领域内做调度模型的建模和尝试,并没有将模糊聚类算法引入到实际的和具体的云产品、云平台或者云框架(如 Eucalyptus16、OpenStack17、Spark 18、Hadoop等)的调度问题中。因此,本文将在已有工作的基础上,结合 Hadoop框架的实际特点和问题需求,将模糊聚类划分算法引入到 Hadoop集群的资源划分问题和作业任务调度问题中,以解决2广西大学硕士学位论文 基于模糊聚类的

26、云任务调度优化策略研究现有 Hadoop 调度器存在的异构性难题,将模糊聚类算法真正落地到实际云产品的调度问题中来。而对于云集群资源和网格资源,规模和数量都是庞大的,现有 Hadoop集群中主机节点的数量已经达到成千上万的规模,并且随着云计算技术的不断发展,集群规模将会变得越来越庞大,将传统串行的模糊聚类算法应用于云计算环境下的资源划分和任务调度领域,就需要对高维和超高维的集群资源数据矩阵进行聚类划分运算,将导致资源聚类时间大大增加,进一步影响着资源选择、分配和调度的效率。一直以来,基于等价关系的模糊聚类算法(也称传递闭包法)在应对高维矩阵运算时存在的运算量大、运算效率低、运算空间不足等问题,

27、将难以对云资源划分和任务调度工作进行快速响应,无法满足云环境中集群资源调度的时效要求。因此,本文有必要首先探讨面向云环境的集群资源模糊聚类划分算法的优化和改进策略,在不改变传统算法聚类结果的前提下,让聚类过程变得更高效、更快捷,从而缩短云资源聚类的时间,才能提高下一步资源分配和调度过程的性能和效率。综上所述,本文先对传统串行的云资源模糊聚类划分算法进行优化和改进,再将改进后的模糊聚类划分算法引入到 Hadoop调度器中,将聚类结果作为调度的决策依据,期望能够解决异构环境下 Hadoop调度效率不高等问题。因此,本文的研究内容包括以下三个部分:(1)用传统的模糊聚类方法对 Hadoop集群的资源

28、特征进行建模,给出云集群资源模糊聚类划分的一般方法和步骤。比较和分析三种传统聚类划分方法(传递闭包法、最大树法和编网法)的特点和缺陷,提出本文对传递闭包法的优化策略,对模糊相似处理和模糊等价处理两个环节的多线程并发改造策略,以解决中小规模云集群资源聚类划分耗时超标的问题。(2)在面向拥有大规模主机的 Hadoop集群资源聚类划分问题时,即使是经过优化和多线程并发后的模糊聚类算法,都无法应对运算空间不足,计算量超大的难题。本文通过构造一个小规模的“ 同构 ”Hadoop集群,将模糊聚 类算法在 MapReduce 并发框架下进行并行化设计与实现,以达到能够对大规模“异构” Hadoop集群的资源

29、数据进行聚类划分运算的目标,进而去调度一个“异构” 的大型 Hadoop集群的作业和任务。(3)在国内外已有工作及(1)、(2)工作的基础上,特别注重调度场景所可能面对的云集群规模性问题,提出一种能够适用不同规模集群的模糊聚类 Hadoop作业调度改进算法。3广西大学硕士学位论文 基于模糊聚类的云任务调度优化策略研究1.3论文组织结构本文各章内容安排如下:首先,绪论部分对本文研究的背景、意义及内容进行了简要介绍。第二章从基于聚类的云资源划分、云任务调度的研究工作入手,分析和解读了聚类理论应用在资源划分和任务调度的可行性和有效性,并提出了面向云计算环境下传统串行模糊聚类划分算法遇到的挑战及待优化

30、的地方。另一方面,本文分析了 Hadoop平台自带的三大调度算法及其不足之处,介绍了国内外在改进 Hadoop作业任务调度算法方面的研究进展,本文拟将模糊聚类算法引入 Hadoop的作业任务调度算法的改进工作中。第三章介绍了传统模糊聚类算法的一般步骤,分析和比较了三种不同聚类方法的优缺点,提出了对传递闭包法的优化策略,对模糊相似处理和模糊等价处理两个环节的并发实现方案,最后用仿真实验对优化和并发策略的有效性进行了验证。第四章在 MapReduce 并行框架基础上,对传统模糊聚类算法进行了并行化可行性分析,对聚类步骤的并行化设计流程进行设计构思与实现,针对并行方案中出现的各计算节点负载不均衡问题

31、提出一种“折半” 轮转办法进行解决,从而做到能 够应对拥有大规模节点的云集群资源聚类划分运算,最后在构造的小规模“同构” Hadoop集群上对并行聚类算法进行了实验。第五章将第三章和第四章的研究成果应用于 Hadoop的作业任务调度算法的改进工作,在面对不同规模的 Hadoop集群资源模糊聚类划分时,结合并发和并行策略能够确保聚类耗时开销在合理的范围,在此前提下提出一种基于模糊聚类和性能评分机制的Hadoop调度算法 FC-PS Scheduler,最后在 CloudSim上模拟的较大规模“ 异构”集群中验证了 FC-PS Scheduler的有效性和 较好的调度性能。第六章,对本文的研究工作

32、进行了总结和展望,对研究过程中遇到的一些问题进行了回顾,并提出下一步工作需要进行改进和提升的方向。4广西大学硕士学位论文 基于模糊聚类的云任务调度优化策略研究第二章基于聚类理论的资源划分和任务调度相关研究在充满着异构性、不确定性、模糊性的云计算场景下,如何对云平台中的资源进行划分、选择和调配,直接影响着整个系统的资源利用率和用户的使用满意度,需要寻求一种合适的方式对目标资源进行划分,缩小资源的搜索空间。一直以来,聚类分析方法被大量应用于决策支持、数据挖掘、模式识别和机器学习等传统领域19-21 ,而近年来国内外已有很多学者将聚类分析方法应用在网格计算和云计算领域的资源划分和任务调度工作。另一方

33、面,在 Hadoop 这一分布式计算框架被推出之后,就聚集了一大批学者和科研机构对其作业调度算法进行了改进研究,针对不同的需求从不同角度提出了优化和改进策略。2.1基于聚类理论的云资源划分和云任务调度2.1.1聚类理论在云计算领域的应用聚类分析又被称为点群分析,是将个体对象按照亲疏关系、相似程度进行区分和分类的一种无监督方法,聚类结果具有类内性能相近、类间性能差异较大的特点22 。聚类方法主要有基于划分、基于密度、基于分层、基于网格和基于模型五种类型,其中最常用的聚类方法是基于划分的方法,包括硬划分和软划分两种划分类型。硬划分方法(如k-means23、模糊 C均值 FCM24)是基于目标函数

34、将个体对象严格地划分到某个类中,具有“非此即彼 ”的特性。模糊聚 类分析方法是一种 软划分的方法,通过构建两两个体间的相似关系,根据不同的相似度划分出不同的聚类结果,具有“亦此亦彼” 的特性,能够形成一种动态聚类效果。以下列出在聚类理论应用于网格计算环境下资源划分与任务调度方面的相关工作。文献13在网格 环境下结合实际应用的需求偏好,提出了一种基于应用偏好的网格资源模糊聚类选择算法。文献25对网格异构 环境的调度问题和传统的工作流任务调度算法进行了研究,提出一种基于模糊聚类的启发式任务图调度算法,将目标系统的处理单元用五个资源特征指标来刻画,在此基础上对异构环境中的网格资源进行模糊聚类,并在任

35、务调度时使用聚类结果作为选择执行单元的参考和依据,缩短了任务调度的完成时间,提高了任务调度性能。5广西大学硕士学位论文 基于模糊聚类的云任务调度优化策略研究文献26对大 规模、分布式、自治、异构、动态的网格计算环境,提出了一种能够描述用户应用程序喜好差异的启发式网格模糊聚类资源分配算法,实现合理的预分类资源,根据用户喜好进行选择,最大化用户的目标效用。同时,避免不同任务分配集中在少数资源,使网格环境的负载平衡得以改善。文献27根据网格 环境下服务资源的异构多样等特点,结合小世界理论对网格服务资源进行聚类建模,提出一种面向多维网格资源的模糊聚类任务调度算法,提升了资源与任务的匹配效率和调度性能。

36、文献28为了提高复 杂软硬件系统的资源利用率和快速响应实时任务,提出了一种基于模糊等价矩阵的资源聚类调度算法,将资源划分为三种任务类型:读/写存储器任务型、CPU计算任务型和 I/O任务型。文献29提出一种新型的基于资源和任务混合聚类的网格资源分配算法,巧妙地分配合适的资源以完全满足任务之需,并且有效预见当前和未来任务的资源需求,避免资源的滥用或分配不合理。文中对用传递闭包法求模糊等价矩阵时出现的运算效率低下、时间复杂度过高等问题,采用了编网法直接对模糊相似矩阵进行聚类划分,以提高运算效率。许多学者在文献25 和文献27 的基础上,将聚类理论引入到云计算环境下的云资源划分、云任务调度领域,为解

37、决云环境下大规模的资源分类和任务调度等难题提供了有益的借鉴。刘伯成30,那 丽春31 等人提出了适用于云 计算领域的集群资源模糊聚类划分模型。文献32提出一种云 计算环境下的基于模糊 C均值聚类方法的两级任务调度算法FCTLBS,通过将云提供商的 资源进行聚类并按性能排序,划分为计算型、带宽型、存储型三种类型的资源,再从用户和任务两个级别进行资源分配,保证了较高的用户自主资源选择权和用户满意度,更好地反映了任务需求。不足之处是模糊 C均值聚类方法属于硬划分,只产生了三种类型的资源类簇。文献33使用模糊 C均值算法对云计算任务调度中的任务迁移问题进行研究,提出一种面向不同类型请求的负载均衡策略。

38、文献34考虑 到云计算环境下资源特征的异构性和模糊性,在文献 33的基础上,提出一种以传递闭包法进行资源模糊聚类的工作流任务调度算法,通过预先对资源进行划分,优先将任务调度到综合性能较好的资源划分子群,使得调度性能得到提升。6广西大学硕士学位论文 基于模糊聚类的云任务调度优化策略研究文献35结合模糊聚 类、改进的遗传算法、改进的 Min-Min这三种算法,分别从系统平台资源划分、资源组合、资源分配与调度三个角度进行应用,提出一种有效的资源调度算法。上述工作的共同点都是运用了聚类分析方法对网格资源或者云资源进行聚类划分,将规模较大的集群资源划分为了若干个具有不同偏向特征的子群,再把这些子群作为分

39、配和调度资源时的参考和依据,能够缩小任务调度时对资源的选择范围和精度,高效合理地管理和利用资源,可将这些工作的应用模式总结如图 2-1所示。基于聚类理论的云资源分配云资源划分模型特征选取 聚类分析方法 应用于云集群资源数据聚类划分结果原始数据矩阵 云任务调度图 2-1模糊聚类的应用模式Fig. 2-1 Application Model of Fuzzy Clustering表 2-1对 在网格计算和云计算领域中使用的资源聚类划分方法进行了总结,硬划分方法的缺点是聚类个数需提前指定,初始化聚类中心的随机性会对聚类效果和质量产生较大影响,需要通过迭代计算的方式进行反复修正聚类中心。而软划分和硬划

40、分的区别就在于隶属度的不同,硬划分的隶属度只能为 1或 0,即严格地分为属于和不属于,而软划分的隶属区间为0,1,即可在某种程度上划分为归属于和不归属于。表 2-1资源聚类划分方法总结Table 2-1 Summary of Resource Clustering Division Method云资源和云任务调度算法FCTLBS32,33所用聚类方法模糊 C均值 FCM划分类型硬划分GRAA_HFC29 基于编网法的模糊聚类方法FCBSH25、FRAAP26 、 软划分基于传递闭包法的模糊聚类方法MPCGSR27、FCBWTS 34云计算领域中集群数量规模庞大,资源的异构性和模糊性特别明显,负

41、载情况随时可变,资源的差异性往往没有严格的区别,也不需要提前指定聚类的个数,因此使用基于模糊聚类的软划分方法能更适合反映云计算集群资源的不确定性,更符合云计算环境下的客观实际需求。除了基于编网法和传递闭包法的模糊聚类方法外,还有最大树法36 ,7广西大学硕士学位论文 基于模糊聚类的云任务调度优化策略研究这三种划分方法的聚类结果都是一样的,只是聚类划分方式不同。2.1.2现有工作的不足和挑战将模糊聚类算法引入到云资源划分、云任务调度中,需要关注的两个问题分别是调度的开销和调度的效果。调度的开销是首先需要关注的重点问题,具体指的是使用第三方算法获得调度决策依据的过程是否高效,换句话说,得到决策的耗

42、时是否足够短,否则用时过长,再去执行基于聚类划分结果的调度任务策略就没意义了。调度的效果是指将第三方算法应用到云计算领域的任务调度工作中,是否能够提升调度的性能,能否最大限度的发挥系统资源优势,是否能够使作业整体完成时间得到减少,是否能够提高平台的吞吐量,以上指标都是直接检验引入第三方算法好坏的标准。调度开销的意义在于“ 快”聚类足够快,调度效果的意 义在于“准”调度足够准,只有保证调度耗时在可接受范围的前提下,进而再去设计能够让调度性能提升的任务调度策略,才是合理有效的工作思路。而与调度耗时密切相关的因素,一是所选取第三方算法的时间复杂度和计算量,二是所要面对和解决某一类问题的规模大小。文献

43、29采用基于 编网法的资源聚类划分方法,时间复杂度为 O(n2),建立模糊相似矩阵的计算量为 n2;文献25-28、30-31 、34-35采用基于传递闭包法的资源聚类划分方法,时间复杂度为 O(n3),建立模糊等价矩阵的 计算量为 n3 n3log2n;文献36使用的是基于最大树的模糊聚类方法,时间复杂度为 O(n3),构建一棵最大树的计算量不超过3n3/2。可以看到基于传递闭包法的聚类划分方法是使用得最多的, 这是因为求解模糊等价矩阵的平方合成运算所使用的计算公式简单明了并且易于实现,在面对较小规模的资源聚类运算时,聚类耗时与其他两种方法相差无几。在网格计算和云计算环境下,使用模糊聚类方法

44、来解决云资源划分、云任务调度难题,所面对的问题规模是十分庞大的,云集群的主机节点数量已经成千上万,并随着云计算技术的高速发展,集群规模还在不断增加,节点个数甚至达到数万数十万。文献25-31、34-35、36所使用的三种模糊聚类 划分方法都是基于内存的传统串行处理模式,受制于算法的复杂度,不管是基于哪一种聚类方法,在主机数量众多的云集群下,要对成千上万的节点资源数据进行聚类,就会出现高维矩阵运算,将会遇到计算量超大、运算内存严重不足等瓶颈问题,直接导致聚类无法在数分钟内完成,甚至无法进行聚类运算。从以上分析可知,基于传统串行模糊聚类算法的云资源聚类划分工作8广西大学硕士学位论文 基于模糊聚类的

45、云任务调度优化策略研究将会面临调度耗时严重超标、调度开销过大的问题,还可能面临无法对大规模集群资源进行聚类的可用性问题,都将无法有效地应用到云计算环境下大规模集群云资源分配和和云任务调度工作中,严重影响云资源的分配和调度性能。因此,有必要探讨面向云环境的集群资源模糊聚类划分算法的优化策略,在不改变聚类结果的前提下,通过优化策略使得聚类运算量得到减少,整体聚类耗时得到降低,才能保证下一步应用到云资源分配和调度的时效性和可用性。2.2 Hadoop调度器的研究现状Hadoop框架包括 MapReduce、HDFS37和 HBASE38 三大核心模块,分别对应着Google公司的 MapReduce

46、、GFS和 BigTable 。Hadoop采用主从(Master/Slave)结构的设计模式,包括用户(Client)、作业(Job)、任务(Task,可细分为 Map Task和 ReduceTask)、JobTracker、TaskTracker、作业任务调度器(Job Scheduler)等组件。有一个节点作为 JobTracker (即 Master),其他节点作为 TaskTracker (即 Slave )。JobTracker负责对 MapReduce Job进行调度、管理和监督,定时地通过心跳与 TaskTracker进行节点信息的交互。当监控到用户有作业提交时, JobTr

47、acker会使用作业调度算法JobScheduler进行执行节点 TaskTracker的选择,TaskTracker则负责提供基础的环境执行MapReduce Job。Hadoop将系统资 源用槽位(Slot)的概念进行描述, 对应于 Map Task和 Reduce Task分为 Map Slot和 Reduce Slot两种类型。每个 TaskTracker节点上对应着若干个 Slot,这些 Slot将 TaskTracker 上的多维资源(CPU 、带宽、内存和磁盘等)以一种等量的形式分割成若干份,可简单的理解成对一台宿主主机划分为了多个“进程” ,从而大大地简化了资源管理和分配的问题

48、39 。如图 2-2 所示,Hadoop 用队列来管理用户作业和资源,每个队列包含若干个作业以及能够使用的系统资源份额。JobTracker 收到用户提交的 Job 后,将其分解为若干个 MapTask和 Reduce Task,然后通知 JobScheduler 进行队列、作业、任务的初始化工作,并按照优先级和提交时间对其进行排序。当 TaskTracker周期性地与 JobTracker 交互状态信息时,发现它能够接受新任务,于是调用 JobScheduler的 assignTasks方法返回为其分配的任务列表。Hadoop现有调 度器是基于用户模式,采用三层调度模型,当有某个 TaskT

49、racker 请求任务时,JobScheduler首先 选择某个队列,其次 选择队列中某个作业,然后选择作业9广西大学硕士学位论文 基于模糊聚类的云任务调度优化策略研究中的某个任务,最后把任务返回给 TaskTracker。而任务的选择策略是相同的,都是以保证数据本地性为前提,按照同节点( node-local,数据与 Slot 位于同一节点)、同机架(rack-local,数据与 Slot 位于同一机架)和跨机架(off- rack ,数据与 Slot位于不同机架)的顺序进行任务选择,JobScheduler 会优先推送那些具有数据本地性的 Map Task。队列A 队列BMap TaskMap TaskMap Task Map TaskMap TaskMap TaskReduce Task Reduce Task Reduce Task分解归属于用户A 用户B 用户A提交Job J

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 学术论文 > 期刊/会议论文

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报