云计算平台:基于Hadoop的研究

时间:2022-02-25 07:01:44

云计算平台:基于Hadoop的研究

一、云计算有关发展趋势

2006年,Google提出云计算概念后,不断有IT厂商推出属于自己的云计算平台。2010年,云计算已经从概念逐渐走向应用层面。2013年11月12日,首届云计算用户大会开幕,云计算产业进一步促进。

随着互联网的高速发展、移动互联网应用不断创新、三网融合步伐加速、以及国家“两化融合”产业基地建设加快,中国云计算产业发展有了良好的发展机遇,更多的厂商开展云计算布局并积极加大研发与推广,创新产品线不断推出,围绕着云计算研发与应用推广的产业链逐渐形成。

如果把以往计算机发展分为三个阶段,那就是主机、个人PC机和互联网时代,我们现在已经进入到云计算时代。从技术层面来看,云计算是一种资源的池化,通过互联网向用户提供按需按量的计算服务。云计算主要包括IaaS(基础设施即服务)、PaaS(平台即服务)、SaaS(软件即服务)三种服务模式,Hadoop是一种用于构建PaaS的云计算模型,它是Google云计算的主要技术GFS和MapReduce的开源实现。利用Hadoop,在底层可以实现对集群的管理;在上层可以很方便地构建企业级的应用。

近来,云计算产业界和科技界紧跟世界发展潮流,技术研发、理论研究和推广应用不断发展。正是在此大环境下,我国的云计算产业才得以快速发展。越来越多的用户正在接受并使用着各种云计算的应用。业界对云计算的关注和探讨逐渐从服务商、制造商的角度转向用户的使用和体验的角度。

随着云计算技术趋向成熟,高校信息化技术也翻开了新的一页。结合高校信息化的特点,以云计算技术为依托,对内进行IT资源整合,提升资源利用率和科研水平;对外通过高性能计算云平台来支撑科学计算,以产学研的能力,在应用层面推动云计算的落地。

2008年以来,云计算得到了快速的发展,已经从理论研究迈入了应用开发时期,国家“十二五”规划把云计算作为新一代IT产业研发与应用的重要领域之一,云计算将推动我国的IT产业实现跨越升级。从技术的角度来看,面向服务的体系结构是云计算的一项重要内容,搞好基于其的应用云建设,将有助于促进服务质量的提高。

SOA(Service Oriented Architecture,面向服务的体系结构)是为业务需求提供服务的体系结构,它可以把企业所有相关的系统的组件接口和各个不同的服务单元以及绑定于那些服务的信息联系起来,并将服务抽象为业务流程,从而得到新的解决方案。SOA为系统结构增添了灵活性,使得对系统的修改非常方便,而不需要重复的对系统进行开发,这些优点对云计算的可扩展性以及灵活管理是不可或缺的。基于SOA的应用云有利于更加合理、高效地使用企业内部的资源库,促进服务质量的提高。

二、Hadoop技术探析

基于开源的Hadoop模型进行云计算平台搭建,需要对Hadoop技术进行探析。Hadoop是Apache开源组织的一个分布式计算框架,可以在大量廉价的硬件设备所组成的集群上开发和运行处理海量数据。它能构建一个具有高可靠性和良好扩展性的分布式系统,任何普通的PC 上安装运行hadoop 框架集群,都可用来高效处理海量的信息。Hadoop 集群是典型的主(Master)/从(Slave)结构,Master由NameNode和JobTracker组成,Slave由DataNode和TaskTracker组成。Hadoop框架由许多子项目组成,其中的核心是HDFS、MapReduce和HBase,前者允许在多台普通机器上存储和复制文件,后两者分别用于执行并行程序任务和储存数据。

1.分布式文件系统HDFS

HDFS由一个名字节(NameNode)和很多个数据节点(DataNode)组成。NameNode是管理节点,用于管理文件系统的元数据,DataNode存储实际的数据。客户端联系NameNode以获得文件的元数据,通过DataNode 对文件进行I/O操作。HDFS可以部署在廉价的硬件之上,能够高容错、可靠地存储海量数据。它可以和MapReduce编程模型很好地结合,提供高吞吐量的数据访问。

2.分布式数据处理MapReduce

MapReduce 由JobTracker和TaskTracker组成,前者的作用是启动、跟踪和调度各个任务的执行,后者的作用是根据应用要求来结合本地数据执行Map任务以及Reduce任务,JobTracker 也同时检测TaskTracker的运行状况,在必要的时候可以重新执行某个任务。MapReduce把运行在大规模集群上并行计算过程抽象为两个函数:Map和Reduce,就是“任务的分解与结果的汇总”。Map把任务分解成为多个小任务,Reduce把分解后多任务的结果汇总起来,得到最终结果。

3.分布式结构化数据表HBase

HBase是一个分布式的、面向列的开源数据库。与一般的关系数据库不同,HBase是一个适合于非结构化数据存储的数据库。它基于列的而不是基于行的模式。用户在表格里存储一系列的数据行,每行拥有一个可选择的行关键字、一个可选的时间戳和任意数量的列(稀疏)。用户可根据键访问行,以及对于一系列的行进行扫描和过滤。HBase一个可以横向扩张的表存储系统,能够为海量数据提供速度非常快的低等级更新。主要用于需要随机访问,实时读写大数据(Big Data),而这正是高性能计算所需要的功能。

除了开源之外,Hadoop还有以下优点:

(1)扩展性。不论是储存的可扩展还是计算的可扩展都是Hadoop的设计思想。

(2)成本低。Hadoop可以运行在廉价的PC上,对硬件没有太高的要求。

(3)可靠性。H D F S的备份恢复机制及MapReduce的任务监控机制保证了分布式处理的可靠性。

(4)高效性。分布式文件系统的高效数据交互实现及MapReduce结合Local Data处理的模式,为高效处理海量的信息打下了基础。

随着有关技术的发展,我们正迈向云计算时代。随着各种云计算技术的日趋成熟,云计算的发展不仅局限于基础平台的建设,如何实现一个能够“统一规划,统一部署,统一管理”来整合自身的资源库,建设面向各类学科、各类人群和各类用途的云资源平台,是下一步信息化建设中云计算的主要发展方向和目标。

作者单位:中国石油辽阳石化分公司信息技术部

上一篇:了解机器联网的世界:解读物联网 下一篇:服务机器人:渐行渐近