第一章 绪论
1.1 研究背景及意义
随着信息时代的发展,信息量的增长速度远超摩尔定律,传统的数据存储和分析处理技术已经无法满足当前数据量的需求。第四范式[23]数据密集型科学为大数据提供了高效的存储和分析处理方法,云计算作为其中一个有效的现代服务方法已经得到了广泛的应用,其架构采用了虚拟化技术和并行分布式策略。其中,虚拟化技术使软、硬件分离实现了资源共享,增加了计算资源的利用率和扩展性;并行分布式策略加快了大数据在云计算中的处理速度。目前,众多领域的数据量急剧增加,围绕着数据采集、存储、管理、挖据、服务等环节的大数据生态系统正在建立。大数据不仅是一个 IT 行业术语,同时也是一种数据现象。它最早用来描述更新网络搜索索引需要同时进行批量处理或分析的大量数据集。目前主要形容通过传统数据库技术无法进行高效存储、处理和分析的,数据量不断增长的结构化、半结构化及非结构化的数据。大数据是新资源、新技术和新理念的混合体,其概念具有模糊性,定义尚未统一。在早期,大数据被定义为大量的可视化科学数据[1]。然而,进入大数据时代之后其定义多种多样,[2]将大数据定义为数据量超出当前存储、管理和有效处理技术能力范围的数据;[3-4]定义大数据的特征为 3V (Volume、Variety和 Velocity),且 Gartner 研究机构认为大数据是需要新处理模式才能具有更强的决策力、洞察发现力和流程优化能力的海量、高增长率和多样化的信息资产;[5]定义大数据是采用一种新形式集成一系列的方法和技术,然后挖掘多种多样的、复杂的、大规模的数据集所蕴含的潜在价值的过程;[6]将 3V 扩展到4V(Volume, Variety, Velocity, and Value),充分体现了大数据的含义和必要性,这是当前被广泛认同的定义;阿姆斯特丹大学的 Yuri Demchenko 等人[7]提出了大数据体系架构的5V特征,它在上述4V的基础上,增加了真实性 (Veracity) 特征,真实性特性中包括可信性、真伪性、来源和信誉、有效性和可审计子特征。为更加深入了解大数据的特征,表 1.1 从数据源、数据结构类型、数据存储类型和数据处理类型四个方面对大数据进行了描述。
.........
1.2 云计算中心性能分析
在大数据时代,并行计算模型和云计算得到了广泛的应用和快速的发展。并行计算模型为大数据应用程序的开发提供了有效的、便捷的方案,开发者可以根据并行计算模型编写高并发性的程序,无需考虑数据分布、容错以及中间信息交互等复杂的细节。云计算已经发展成为一个强大的计算模式,它为处理分析多源异构大数据集所需的底层资源提供了保障,云中心利用虚拟化技术有效的整合了大规模的基础设施、平台以及软件应用,并以虚拟资源池的形式对用户开放,用户可按需即时的租用池中资源,有效节省了对软硬件资源的管理和维护费用。虽然大数据应用得到了有效的解决,但是仍存在以下两个问题:云用户如何平衡处理时间和租用资源的数量(花费更多的资源往往可以缩短处理时间)?云提供者如何使用最少的资源同时保证服务质量(quality of service,QoS)?精准的评估云计算中心的性能可以有效解决上述问题。分析云计算中心的性能不仅可以获得云中心的性能指标,例如,任务等待时间、任务立即获得服务的概率等,而且基于这些性能指标可以有效的预测大数据应用在不同云资源配置环境中的处理时间,同时直观的反映云服务的 QoS。如何分析面向大数据应用的云计算中心性能已经成为当前亟需解决的问题,但是大数据应用的多样性和云资源的复杂性在理论和实践两个方面给云计算中心的性能分析工作带来了巨大挑战。大数据应用的多样性:当某个大数据应用被提交到云计算中心时,首先,云中心会根据并行计算模型的分布式算法将应用划分成多个并行子任务,然后,这些子任务在多个云计算节点上被并发处理。在实际环境中,每个大数据应用具有其固有的数据流,而每一个并行计算模型只能高效的处理一类应用,因此每一个大数据应用只会选择一个适用的并行计算模型,例如,一个批处理应用会优先选择 MapReduce 模型,而一个迭代应用会选择 BSP 模型。另外,子任务的粒度、子任务的数量、所配发资源的并行配置方案、子任务的分布式算法等诸多由并行计算模型所确定的因素,都将对云计算中心的性能造成巨大的波动,因此如何屏蔽大数据的多样性,并采用统一的规范标准去定义上述性能影响因素成为云计算中心性能评估的关键。
.........
第二章 关键技术与相关工作
2.1 引言
目前,在金融、医疗、交通等诸多应用领域,数据量已经从 TB 级迅速发展到 PB 级甚至更高的数量级,且数据量仍以指数速度增长,数据类型也越来越丰富多样。数据已经被作为研究的对象和工具,使数据创造出更大的价值对掌握未来的发展趋势至关重要。大数据的分析处理基础[24]主要包括数据存储、计算设施和计算模式三方面内容。由于数据自然形成的数据独立性和分布性,产生了新的理论问题,因此需要研究新的存储模式、计算设施架构以及计算模式。云计算是一种以数据和处理能力为中心的密集型计算模式,它有效解决了大数据的存储和底层基础设施问题,并且云计算以并行计算模型作为其并行分布式策略,不仅提高了软、硬件资源使用率,同时使后台复杂的任务处理和资源调度透明化。随着云技术的成熟,在虚拟化云资源上构建并行处理模式是当前大数据应用的主流解决方案。但是不同的应用对资源的需求量各不相同,如何平衡应用的时间开销与云资源成本之间的关系,以及如何在最低资源开销的前提下保障云中心的 QoS 已经成为大数据分析处理的关键问题。本文利用排队论提出一种基于并行计算模型的云中心性能分析策略,预测了面向 QoS 的云中心性能指标和应用的时间开销,为云资源的配置以及云资源的申请做出指导,促使用户在保证性能的前提下最大限度的降低资源成本。本章组织结构如下:2.2 节详细介绍了本文所采用的关键技术排队论,具体描述了排队系统的数学建模方法;2.3 节对并行计算模型的演变历史及发展现状进行了分析,并总结了并行计算模型的性能预测方案;2.4 节对云计算中心的资源管理方案以及云计算中心的性能建模方法进行了详细描述;2.5 节对本章节内容进行了总结。
.........
2.2 排队论概述
排队[25]是人们日常生活中经常遇到的现象,例如到商场购物,去图书馆借阅书刊,汽车到加油站加油,医院挂号看病等,往往需要先进行排队,然后才能得到相应的服务。排队系统如图 2.1 所以:输入过程是对顾客到达系统的一种描述,主要分为以下四个方面:顾客总体可以是有限或者无限;顾客到达系统的方式可以逐个或成批;顾客相继到来时间间隔可分为确定性和随机性;顾客到达系统可以是独立的或者相关的,输入过程可以是平稳、马尔可夫、齐次等。排队规则是服务窗口对顾客排队次序和方式的一种约定,主要分为三种制式:损失制,顾客到达系统时,系统中所有服务窗口均被占用,到达顾客随即离去;等待制,顾客到达系统时,系统中所有窗口均被占用,到达顾客按先后顺序进行排队等候;混合制,它是上述两种制式的混合,系统只允许有限个顾客排队等候。
..........
第三章 云计算中心性能分析策略...........30
3.1 引言........30
3.2 问题描述.........32
3.3 性能分析模型..........35
3.4 可行性验证.....54
3.5 本章小结.........57
第四章 云中心性能指标及应用时间开销........58
4.1 引言........58
4.2 云中心性能指标模型.......59
4.3 大数据应用时间开销模型........64
4.4 性能指标可行性验证.......68
4.5 预测时间开销..........71
4.6 本章小结.........79
第五章 性能可预测并行计算模型...........81
5.1 引言........81
5.2 问题描述.........81
5.3 原型设计.........82
5.4 数据副本优化方案...........87
5.5 负载感知 CPU 调度 .........89
5.6 实验验证.........92
5.7 本章小结.........95
第五章 性能可预测并行计算模型
5.1 引言
并行计算模型的特征[128-129]不仅直观的反映了大数据应用的多样性,而且其所需求的基础资源同时反映了云资源的复杂性,因此并行计算模型综合体现了面向大数据应用的云计算中心性能影响因素。从并行计算模型的角度对云中心的性能进行分析是一种更加有效的方法,并且基于并行计算模型预测大数据应用的时间开销将更加精确。并行计算模型的性能模型在为云商和用户提供性能指标和时间开销预测功能的同时,还为并行计算模型的改进工作做出了建设性的指导。本章提出了一个混合并行计算模型,并通过本文提出的并行计算模型排队系统实现了混合模型的性能可预测功能。另外,本章优化了数据块副本放置方案,实现了负载感知的 CPU 资源调度策略。大数据应用通常使用某种并行计算模型来帮助其开发和支持运行。目前已有较多的支持大数据处理的并行计算模型,这些模型主要关注如何实现某类数据处理模式,较少侧重于应用的性能预测。云计算采用虚拟化技术使软、硬件隔离,为并行计算模型的实现提供了按需、弹性伸缩的资源申请模式,但是不同的并行计算模型对资源的需求量各不相同,因此对并行计算模型进行性能预测不仅可为资源的申请和配置作出指导,促使用户在保证处理性能的前提下最大限度的降低资源开销,同时可以指导并行计算模型的改进工作。本文在第三章已经提出了并行计算模型的性能模型,并在第四章对其性能指标和时间开销的预测精确度和可行性进行了验证,本章将会介绍研究并行计算模型的改进工作。


..........
总结
大数据时代,数据已经被作为研究的对象和工具,人们通过对数据的分析和处理可以进一步掌握未来的发展趋势,使数据创造出更大的价值。然而,随着数据量的急剧增加和数据类型的多样化,对数据的分析处理提出了更高的要求。并行计算模型和云计算作为大数据分析处理的核心技术得到了广泛的关注,其中并行计算模型向开发者提供了有效、便捷的抽象模式,使开发者可以编写高并发性程序的同时,无需考虑数据分布、容错以及中间信息交互等复杂的细节,云计算中心通过按需租用的方式向大数据处理提供了底层资源保障。但是,由于大数据应用的多样性和云资源的复杂性,为云计算中心QoS的保障工作,以及解决大数据应用的时间消耗和云资源租用量之间的平衡问题带来了新的挑战。为解决上述问题,本文将并行计算模型与云计算中心相结合,提出了基于并行计算模型的云计算中心性能分析策略,预测了云计算中心的性能指标和大数据应用的时间消耗,进一步研究了性能可预测的并行计算模型及其性能优化方案。具体贡献如下:
(1) 提出了一个易操作的并行计算模型的性能分析模型,此模型可以用于精准的评估面向大数据应用的云计算中心的性能。其利用排队论和嵌入式马尔可夫链屏蔽了大数据应用的多样性,在统一规范下定义了性能影响因素,同时利用概率分析和统计深入分析了云计算中心资源的复杂性。另外,利用排队论提出了一个直接以云节点为服务窗口以云中心为排队系统的性能分析模型,与基于并行计算模型的云中心性能分析策略进行了易用性和精准性的比较。
(2) 本文提出的基于并行计算模型的性能分析策略和其对比模型不仅提供了预测大数据应用时间开销的推导方程,同时也提供了云计算中心关键性能指标的计算方程。在以往工作中,并行计算模型的性能预测模型大多是用于预测应用的处理时间,而云计算中心的性能模型主要用于性能指标的预测。本文的方案综合考虑上述两种因素,实现了同时对两者的预测。
(3) 大数据应用被划分成多个并行子任务,子任务数量被定义成一个离散随机变量,其数值是由并行计算模型决定。在以往工作中,子任务的数量大多被单服务器上虚拟机的个数、云中心中虚拟机的最大数量以及应用请求的最大虚拟机数量等因素所限制。
(4) 本文在计算服务率时,综合考虑了以下因素:同一个服务器上多个虚拟机之间对 CPU 和带宽的竞争;当虚拟机数量增加时对服务器造成的性能衰减。同时,考虑了并行子任务之间的中间数据交互。每一个子任务不仅与存储系统创建链接进行数据的读取和存入,而且子任务之间也会通过虚拟链路交互中间结果。当中间数据量达到一定规模时,中间数据的交互时间不可忽略。
(5) 基于性能分析策略提出了一个性能可预测的混合并行计算模型。并以云节点服务率为基础,通过云节点之间的计算能力比值,优化了数据副本的放置方案。同时参考 CPU 的消耗额度和分配额度,实现了负载感知CPU 调度方案。
..........
参考文献(略)