APP下载

虚拟化Hadoop系统的数据资源调控与管理体系

2016-09-20司雅楠

新乡学院学报 2016年3期
关键词:数据处理虚拟化架构

司雅楠,阮 宁

(河南师范大学a.计算机与信息工程学院;b.新联学院,河南 新乡453007)

虚拟化Hadoop系统的数据资源调控与管理体系

司雅楠a,阮宁b

(河南师范大学a.计算机与信息工程学院;b.新联学院,河南新乡453007)

当前,Hadoop系统所采取的本地化数据优化方案还不能很好地应用于虚拟化环境当中,虚拟平台相关数据的处理及数据存储任务的优化还存在一些问题。为此,对虚拟化Hadoop系统的数据本地化属性进行了分析,并从虚拟化Hadoop系统平台的架构模式出发,提出分离式的系统平台架构模式,并以此为基础建立虚拟化Hadoop的数据资源调控与管理体系。

虚拟化Hadoop;资源调度;数据本地化;在线迁移

进入20世纪以来,互联网数据分析技术已被普遍应用在许多信息技术企业(如IMB、谷歌等)的数据管理中。分布式计算模式MapReduce[1]的出现使大数据技术在各大企业中得到了广泛的应用,而Hadoop作为其开源实现也备受关注[2]。Hadoop开发出一系列可供并行计算的框架模式,使IT产业的相关技术管理人员可以将工作重心放于企业业务的开展上,而无需担心数据的容错、负载等环节。随着Hadoop的日益普及,利用Hadoop搭建系统的规模也逐渐扩大,使用的环境也日益复杂,其所承载的数据内容也不断增多,因此,Hadoop中存在的问题也开始显露出来,例如,Hadoop仅提供集成式的数据任务管理,仅支持单一性的程序调度模式等。为了解决Hadoop系统中MapReduce功能不足的问题,新一代的Hadoop的资源管理器YARN[3]产生了,相比于传统的Hadoop,YARN具有更大的可扩展空间,同时还可以兼容包括MapReduce在内的多种不同的计算框架,例如Spark、REEF和DRYAD等。

传统的Hadoop系统采用物理服务器进行搭建,随着系统规模的不断扩大,这种搭建方式明显无法满足需要。随着云计算技术的广泛应用,应用平台可以部署在虚拟化的数据中心,即云平台中。虚拟集群的出现弥补了传统物理服务器搭建方式存在的不足,但是也产生了一些问题,例如,Hadoop新的资源管理器YARN上所运行的计算框架MapReduce有大量的I/O操作,这些I/O操作包括本地读写和跨节点的读写两种,而跨节点的数据传输则成为在虚拟化Hadoop系统中制约如MapReduce等应用程序性能的主要因素。

本文将讨论Hadoop系统虚拟化数据处理平台的优化问题,利用存储节点与数据节点分割架构的模式,将数据存储节点与数据计算节点分别架构在不同的虚拟平台上,从而大幅度提升数据计算及存储处理的调度与管理能力。通过建立Hadoop系统虚拟化数据处理平台,提出一种能够提升Hadoop系统应用程序数据处理性能的资源调控模式:(1)在提交任务数据阶段,通过对虚拟数据平台计算能力的调节,能够有效地完成“数据节点任务本地化”的任务;(2)在任务数据运行阶段,将虚拟计算数据节点向实体主机存储数据节点在线迁移[4],实现数据节点的本地化目的。

1 虚拟Hadoop系统的数据本地化属性

Hadoop系统中的分布式计算模式能够利用并行计算模型,将大规模的数据计算作业分化为许多小规模数据计算任务,每一个小规模数据计算任务仅处理一小部分数据,即一个数据块(YARN数据计算平台默认分割数据块的大小为128 MB)。按照指定的数据资源调控与管理模式,每一个小规模数据计算任务都被分配至指定的数据任务计算处理节点,同时,每个数据块要保存多个副本。YARN数据计算平台的默认数据块副本数为3,这3个副本以冗余备份的形式存在于3个不同的数据节点中。YARN数据资源调控与管理模式优先把数据计算任务转移至该任务所需的存储节点中,如果相关数据存储节点均已被占用,或无法实现对该数据任务的处理,那么,系统便会将该任务转移至其他与之相匹配的数据任务处理节点中。

在传统的Hadoop系统平台内,根据数据处理任务所需要的节点以及所需处理数据任务的存储节点之间的关系,可以将数据的本地化[5]属性划分为三类:跨平台数据本地化属性、平台数据本地化属性、数据节点本地化属性。而在虚拟的Hadoop系统平台内,由于增设了虚拟化的数据任务处理平台,故将其数据的本地化属性划分为下述四类:1)跨平台的数据本地化属性,即任务计算所需要的节点与数据存储节点未分布在相同的实体主机平台上,同时,这些实体主机平台也分布于不同的实体框架中;2)平台数据本地化属性,即任务计算所需要的节点与数据存储节点未分布在相同的实体主机平台上,但这些实体主机平台分布于相同的实体框架中;3)实体主机数据节点本地化属性,即任务计算所需要的节点与数据存储节点位于相同的节点内,且分布于相同的实体主机框架中;4)虚拟主机数据本地化属性,即任务计算所需要的节点与数据存储节点位于相同的虚拟主机节点内。

在相同的条件下,执行不同数据本地化属性的计算任务的响应及处理速度由慢至快依次为跨平台数据本地化、平台数据本地化、实体主机数据节点本地化和虚拟主机数据本地化。在这四种本地化处理方式中,实体主机数据节点本地化与虚拟主机数据本地化的数据任务响应与处理时间较为接近,而跨平台数据本地化与平台数据本地化的数据任务响应与处理时间则分别为上述两者的4倍与5倍。Hadoop系统平台所搭载的应用程序往往需做庞大的数据处理与数据传输操作,而且数据的虚拟化处理也会对I/O性能产生一定的影响,随着数据任务处理量的增加,任务数据的本地化对数据任务的处理效率造成的影响也增大。可见,提升实体主机数据节点本地化属性以及虚拟主机数据本地化属性能够有效地降低任务数据节点之间的数据传输量,进而提升应用程序执行相关数据处理任务的效率。

2 虚拟Hadoop系统平台的架构模式

2.1传统的平台架构模式

传统的Hadoop系统平台通常架构在实体主体内部。在虚拟化环境下,也可以利用这种架构模式[6],其逻辑构架如图1所示。图1中,DN(Data Node,数据节点)用来存放具体数据块,NM(Node Manager,节点管理器)对节点进行管理,NN(Name Node,名字节点)用来存放元数据,RM(Resource Manager,资源管理器)为系统提供资源调度管理。在这种构架中,计算节点同时也作为存储节点使用,这样可以在一定程度上确保数据节点任务处理的本地化属性。

图1 传统Hadoop系统平台逻辑架构模式

在虚拟化环境中,这种传统Hadoop系统平台架构模式存在以下问题。

(1)系统的扩展能力差。在虚拟的环境中,系统平台能够通过对虚拟主机数量的增加或减少来实现对虚拟集群的扩容和缩容。而在虚拟化的Hadoop系统平台内,可以根据所需计算节点的数目动态地增、减虚拟机数量,从而在高效完成计算任务的同时节省资源和成本。但是,在传统的Hadoop平台架构模式中,任务数据计算节点还兼作数据的存储节点,这样使得在增加或减少虚拟数据节点时,系统不得不增加或减少相应的数据存储节点:增加相应的数据存储节点就会提升执行相关数据处理任务的资源成本;减少相应的数据存储节点就会导致数据节点存储副本不足,进而造成系统后台数据备份性能下降。

(2)利用虚拟机对数据进行转移的效率较低。在虚拟的网络数据环境下,为了能够提升数据资源的使用效率,减少资源消耗,并尽可能地使物理机的维护更加便利,在通常情况下,会采用在线数据转移的方式,使虚拟机进行数据负载整合。在上述架构模式中,虚拟机不但可以作为数据任务处理节点,也可以作为数据任务的存储节点,这使虚拟机在迁移时产生大量的数据转移。

利用传统架构模式的虚拟化Hadoop平台系统,如1中所述的四种平台数据本地化属性均存在。即使YARN资源调控管理模式对数据本地化问题有所考虑,但其所采取的架构模式在实际的数据处理任务中也不能确保虚拟主机数据的本地化属性,且在虚拟化Hadoop系统平台下,因为增设了虚拟的数据处理平台,数据副本被划分为两个不同的层次,所以也会对传统Hadoop系统平台中的数据本地化水平产生一定程度的负面影响。

2.2分离式架构模式

在虚拟化环境下,还有一种Hadoop系统平台架构模式,即分离式架构模式。在这种架构模式中,数据的计算节点与存储节点分别被设置在不同的虚拟机内,如图2所示。图2中,虚拟机NN与虚拟机RM运行在同一台物理机中,当然这两台虚拟机也可以分别运行在不同的物理机上。

图2 分离式平台逻辑架构模式

分离式架构模式能够有效地解决传统Hadoop平台架构模式中存在的问题,并具备如下优势:1)具备较强的扩展能力,系统平台能够独立地增加或减少数据任务处理节点的数量,而数据任务存储节点不受影响,故不会对后台数据副本服务性能造成不良的影响;2)虚拟主机能够进行灵活的转移,当数据任务处理节点进行转移时,其数据任务存储节点不需转移。

3 数据资源调控与管理体系设计

Hadoop中的MapReduce计算模式把数据的计算过程分解成两个阶段:Map和Reduce。这两个阶段又分别对应了两个处理函数:mapper和reducer。在YARN平台中,用户程序中的MapReduce库将数据文件分化为许多的数据块(默认为128 MB),在Map阶段,每个Map处理一个小数据块,原始数据被输入mapper中进行过滤和转换,所获得的中间数据在Reduce阶段作为reducer函数的输入,经过reducer的聚合处理后生成最终结果。

本文提出的数据资源调控与管理体系的架构模式如图3所示,该调控与管理体系主要包括四个环节,分别是迁移控制器、作业解析器、资源调节器以及任务解析器。图3中的序号表示的是该调控与管理体系具体的工作顺序与流程。

作业被发送至作业解析器后(如图3步骤1),作业解析器对该作业包含的所有任务内容以及每项任务涉及的数据块副本所在的位置信息进行解析。根据YARN资源调节模式,若某项数据处理任务能够被调节至符合实体主机数据本地化属性的数据任务处理节点中,那么该任务便不需要进行调节;否则,便由资源调节器(图3步骤2)按照数据块副本的位置分布信息,选择具有提升数据处理能力的计算节点所在的虚拟机,并利用资源调节器来提升该计算节点的计算能力。在对虚拟机计算节点的计算能力进行调整的过程中,若出现节点所处的宿主机无法增加计算能力来满足该计算节点需要的情况时,就需要将该宿主机上的一些虚拟机通过迁移控制器(图3步骤3)在线迁移到其他宿主机上,再利用资源调节器(图3步骤4)对迁移后宿主机上虚拟机的计算能力进行调节。

在上述调整过程中,对最终仍不能实现宿主机数据本地化的数据计算任务,可以利用YARN默认的处理模式,即尽可能地将其转移至平台数据本地化的数据处理与计算节点中运行。在运行过程中,任务解析器(图3步骤5)负责对任务运行中的数据状态、数据本地化属性、数据分析处理进度,特别是未符合“实体主机数据本地化属性”的数据进行监控,对数据计算处理进度明显落后于其他处理进度的任务,由迁移控制器(图3步骤6)按照数据任务副本的划分情况以及宿主机系统资源的剩余状况,筛选出符合该宿主机数据本地化属性的宿主机,随后对该计算节点所在的虚拟机进行在线迁移。

图3 数据资源调控与管理体系

4 结束语

随着互联网数据分析技术应用的日益普遍,各大信息企业对系统平台的数据任务处理要求也不断提高,即对其任务处理能力、任务处理效率的要求逐渐增加,而传统的Hadoop已不能满足新型信息技术企业的发展要求,需要形成新的系统平台架构模式、更高效的系统数据处理平台以及功能更强大的虚拟化数据调控与管理体系。

本文以这种需求为基础,从传统Hadoop系统平台存在的缺陷及问题出发,提出相应的系统架构模式以及数据调控管理体系,为今后系统数据平台的架构与设立提供参考。

[1]张文光,陈俊,姚钰辉,等.分布式网络环境中基于MapReduce的WordCount实现[J].贵州师范大学学报(自然科学版),2015(1):93-97.

[2]Apache Software Foundation.Hadoop[EB/OL].(2015-06-09)[2015-10-12].http://hadoop.apache.org.

[3]董西成.Hadoop技术内幕:深入解析YARN架构设计与实现原理[M].北京:机械工业出版社,2013:153-184.

[4]兰雨晴,申骞,刘铭.云计算环境中在线迁移技术研究[J].电信科学,2010(9):90-94.

[5]徐永士,霍菁,孙功星.一种数据本地化存储与处理系统[J].计算机工程与应用,2012(5):7-11.

[6]杨卓荦.基于YARN构建多功能分布式集群[J].程序员,2013(11):105-107.

【责任编辑梅欣丽】

Data Resources Control and Management System for Virtual Hadoop System

SI Yanana,RUAN Ningb
(a.College of Conmputer and Information Engineering;b.Xinlian College,Henan Normal University,Xinxiang 453007,China)

The current localization optimization data scheme adopted for Hadoop system platform could not be well applied in virtual environment,which prevented the optimization of virtual platform from processing the related data calculation and data storage.This paper conducted analysis according to the data localization property of Hadoop system platform.From the structure mode of virtual Hadoop system platform,it put forward separated type system platform structure mode,and on which,it established the data resource control and management system of virtual Hadoop system platform.

virtual Hadoop;resources control;data localization;live migration;localization property

TP391

A

2095-7726(2016)03-0029-04

2015-12-20

司雅楠(1987-),女,河南新乡人,硕士,研究方向:大数据。阮宁(1988-),男,河南驻马店人,硕士,研究方向:数据挖掘。

猜你喜欢

数据处理虚拟化架构
基于FPGA的RNN硬件加速架构
认知诊断缺失数据处理方法的比较:零替换、多重插补与极大似然估计法*
ILWT-EEMD数据处理的ELM滚动轴承故障诊断
功能架构在电子电气架构开发中的应用和实践
基于云服务的图书馆IT架构
基于OpenStack虚拟化网络管理平台的设计与实现
对基于Docker的虚拟化技术的几点探讨
WebGIS架构下的地理信息系统构建研究
浅析虚拟化技术的安全保障
H3C CAS 云计算管理平台上虚拟化安全防护的实现