论文部分内容阅读
随着电子商务、移动互联网、物联网等技术的进一步发展,数据的规模、产生速度、复杂性均日益增长,标志着人类社会已经进入了大数据时代。随着数据之间的联系变得更加紧密、依赖关系更加复杂,部分数据的分布模式逐渐具有图的特征。传统的大数据处理技术,如MapReduce批处理框架不适用于关系复杂、需要多次迭代的图数据。谷歌的Pregel系统通过并行化的思想,并行地进行顶点计算,大大提高了计算性能,为大规模图数据处理提供了新的思路。现有大规模图数据处理的研究工作均基于Pregel的思想,部分解决了大规模图数据处理的问题,但仍存在如下的问题:一方面忽略了未隔离应用间的资源竞争而造成的性能衰减;另一方面则忽略了应用各阶段对资源的弹性需求而造成的性能下降或者资源浪费问题。为了解决以上的问题,本硕士论文将虚拟化技术引入图数据处理中,通过深入分析图数据处理过程的执行特性,并结合虚拟化良好的进程隔离性以及灵活的资源弹性可管理性,提出面向应用的图划分以及资源分配与调度机制,实现根据应用的具体执行模式来进行资源的弹性供给,以提高图数据处理系统的整体执行效率。综上所述,本论文从以下四个方面开展研究工作:首先,研究大规模图数据处理应用执行模式的抽取和分析机制。基于开源类Pregel系统进行二次开发,完成对应用执行模式的抽取,并建立执行模式与底层资源需求间的映射关系,为后续虚拟资源的分配与调度提供可靠的理论依据,是本文研究工作的基础。其次,研究应用感知的大规模图数据划分方法。大规模图数据划分是并行计算的前提。本文在虚拟化环境中,根据应用的执行模式,对图数据进行合理地划分,从而减少网络通讯并且实现负载均衡。对图数据进行合理地划分一方面有助于更好地进行资源分配与调度,另一方面可以提升应用的执行性能。再次,研究面向应用执行模式的虚拟资源分配与调度机制。基于执行模式与底层资源需求的映射关系,设计面向应用的虚拟资源分配与调度机制,根据上层应用执行模式对资源进行细粒度的分配与调度,在保证上层应用性能的前提下提高资源利用率。最后,通过部署Openstack软件以实现虚拟化环境,在此基础上,实现了相关理论的研究工作,设计并开发了大规模图数据处理平台nutcat以集成应用特征抽取模块,应用感知的超块划分模块以及面向应用执行模式的虚拟资源分配与调度模块,并部署于东南大学云计算中心(SEU CLOUD)真实环境中。通过在真实的东南大学云计算中心环境中的实验结果表明,本文提出的应用感知的大规模图数据划分方法以及面向应用执行模式的虚拟资源分配与调度机制可以显著地提高应用的执行性能并提升虚拟资源利用率,并为大数据应用与虚拟化环境相结合提供了面向应用进行资源分配与调度的新思路。