论文部分内容阅读
云计算系统具有服务器规模庞大和用户群体广泛的特点,系统需要频繁地对各种应用任务进行调度和管理。因此,如何对云计算资源进行合理分配和对大量应用任务进行高效调度管理,使得各类应用任务均能够获得一个较好的调度结果,并保证系统负载维持在一个相对均衡的状态,这已经成为云计算技术领域中的一个研究热点。由于云计算和传统分布式计算的任务调度问题具有一定的相似性,现有的云计算任务调度策略大都借鉴了传统分布式环境下的任务调度方法,或者在其基础上改进而来,本身具有一定的局限性;另外作为一种商业服务,云计算不但要考虑优化其任务调度策略来提高系统的服务能力,同时还应考虑云服务提供者的服务收益问题,目前虽然在该方面具有一些探讨,但尚无成熟的方法。因此,开展云计算的任务调度策略研究对于提高云计算系统的服务能力具有重要的理论价值和现实意义。基于此,本文重点对云计算的任务调度策略进行了全面而系统的分析和研究,论文的内容主要包括云计算用户任务调度的QoS目标约束问题、云计算任务调度决策的执行效率问题以及云服务提供者的服务收益问题三个方面的研究。论文在对这些问题进行深入研究的基础上,给出了一种全新的云计算环境下的任务调度体系架构。论文的主要研究工作和创新点体现在以下几个方面:(一)针对云计算环境下对QoS目标约束要求各不相同的用户任务调度问题,提出了一种多QoS目标约束的云计算任务协同调度策略。云计算环境下,资源动态多变,用户偏好多样,用户任务的QoS目标约束条件通常会包含多个指标的要求,对于用户任务的QoS目标约束条件的满足程度在很大程度上决定了云计算任务调度策略的性能优劣。本文提出的多QoS目标约束的云计算任务协同调度策略针对大量用户任务各不相同的QoS目标约束要求,分别建立相应的QoS目标约束条件;然后应用构造的隶属度函数将多QoS的目标约束问题转换为单目标的约束求解问题。与传统方法相比,本文提出的方法在满足用户任务多QoS目标约束要求的前提下,能够有效降低用户任务调度的截止时间底线违背率,并能够减少其平均任务执行时间以及其平均任务执行成本。(二)针对云计算环境中大量应用任务调度决策的执行效率问题,提出了一种基于遗传-蚁群算法的云计算任务调度策略。如何对云计算中的海量任务进行高效调度执行,使得各类任务的调度请求均能够在较短时间内获得一个较好的调度结果,是云计算领域的一个技术难点。本文提出的基于遗传-蚁群算法的云计算任务调度策略首先基于遗传算法进行初步的全局快速搜索,然后将得到的全局搜索信息转化为蚁群算法初始搜索时的信息素描述,最后基于蚁群算法实现精确求解。该方法综合了遗传算法全局搜索能力较好和蚁群算法求解精度较高的优势,并规避了遗传算法局部求解能力不足以及蚁群算法初始搜索阶段效率低下的缺陷;在大规模任务参与调度的情景下,该方法能够有效提高云计算任务调度决策的执行效率,并能够实现较好的系统负载均衡水平。(三)为了提高云计算系统的服务收益,从云服务提供者的角度出发提出了一种服务成本驱动的云计算任务调度策略。现有的云计算任务调度策略往往从用户角度出发,以满足用户任务的资源请求和QoS目标约束要求为目标,对于云服务提供者的服务收益关注不足;作为一种商业服务,云计算系统应尽可能地提高其服务收益水平。在本文提出的服务成本驱动的云计算任务调度策略中,调度开支成为云用户在进行任务调度时所必须考虑的一个因素,在满足用户任务的资源请求与QoS目标约束要求的前提下,用户将优先选择价格低廉的计算资源,这样使得任务的调度决策更为理性和高效,同时计算资源的管理分配也更为公平和节约。该方法在一定程度上提高了云计算系统的资源利用率和云服务提供者的服务收益水平,最终可以促进云计算市场的健康可持续发展。(四)在分析和研究了云计算任务调度问题所关注的各类性能指标的基础上,提出了一种云计算环境下的任务调度体系架构。现有关于云计算任务调度问题的研究往往基于某种假设,侧重于对约定的某一个或几个性能指标进行评估,测试结果具有主观性和片面性。本文提出的任务调度体系架构对各种功能模块进行了明确定义,同时对用户任务及处理单元的各种属性参数进行了详细描述。这样在对具体的任务调度策略进行测试和评估时,开发人员无需再进行条件假设,只需根据具体的测试要求和调度目标实例化相应的属性参数即可。与此同时,考虑到云计算系统故障发生较为频繁,故在提出的任务调度体系架构中引入了一种动态的数据副本管理策略,它不仅有效提高了云计算系统的可靠性和可用性,而且也提高了系统的数据文件访问效率和负载均衡水平。