admin 管理员组

文章数量: 1086019


2024年3月13日发(作者:java教程自学全套兄弟连)

基于Hadoop的企业云存储技术探索

摘 要:hadoop平台作为一种新技术,近些年发展非常迅速,它

的应用不仅能实现计算的“平民化”,而且它可以忽略开发并行应

用程序的细节,使程序员只需要专注于业务逻辑即可,从而大大提

高了编程开发效率。在云计算相关技术日益发展的今天,hadoop在

企业云存储平台构建中的应用已成为当前企业信息化管理的重要

发展趋势,本文在对基于hadoop的企业云存储构建所依赖的云计

算技术以及hadoop平台作分析说明的基础上,就基于hadoop的企

业云存储的实现进行探究。

关键词:hadoop;云计算;企业云存储;技术实现

中图分类号:tp333 文献标识码:a 文章编号:1007-9599

(2013) 04-0000-02

hadoop作为一个分布式的apache开源计算机组织框架,它可以

运行在廉价的中型或者大型集群的硬件设备上,为应用程序的开发

提供了一套稳定可靠的接口应用程序。它的这些优势使基于hadoop

的企业云存储平台的构建即经济又便捷,同时能够为企业的数据管

理提供存储服务的同步升级和安全管理,在企业管理领域具有很好

的前景。

1 基于hadoop的企业云存储所依赖的云计算及其体系结构

1.1 云计算概述。云计算是一种新型的基于数据中心的一个数

据密集型超级计算方法,它是虚拟化、网络存储、网格计算、分布

式计算以及并行计算等传统计算机技术和网络技术发展融合的产

物。云计算所依赖的核心技术主要包括编程模型、虚拟化技术、数

据存储和管理技术。另外,由于云计算系统需要满足用户的大量需

求,所以云计算的数据存储技术需要具有很高的吞吐量,由于分布

式存储能够很好的满足云计算数据存储的这种需求,因此,云计算

平台下的数据存储一般多采用分布式存储结构,而且增加了必要的

数据存储安全保障机制,在很大程度上提高了云存储平台下数据的

可用性和可靠性。

1.2 云计算的体系结构。云计算的体系结构主要由用户端、服

务目录、系统管理、配置工具、监控、服务器集合几个模块构成。

其中,用户端主要实现用户与云系统的交互;服务目录主要用于显

示该用户有权限操作和访问的所有服务的目录列表;系统管理用来

管理系统资源的分配情况;配置工具用来配置客户端和服务器所需

要的各种操作环境;监控主要用来监控和计算云系统资源的使用情

况;服务器集合用于实现云系统中的所有服务器的集成。

2 hadoop及其核心设计分析

2.1 hadoop概述。hadoop起源于开源搜索引擎apachenutch,

它是当前应用比较广泛的一种文本搜索库。其中,hadoop主要包括

hdfs(hadoop分布式文件系统)以及mapreduce引擎两项核心设计。

hdfs是hadoop分布式文件系统的缩写,hadoop分布式计算存储相

关功能实现均需要hdfs所提供的底层支持。mapreduce主要负责相

关数据索引任务的分解与结果的汇总。

hadoop的优点主要体现在如下几个方面:一是经济性,hadoop

框架对计算机的硬件没有特殊的要求,可以在普通的pc机上运行,

因此,不需要加大对硬件的成本投入;一是可扩展性,hadoop不需

要修改任何已有的结构,就可以很容易的实现扩展;三是高效性,

hadoop核心设计中的hdfs所具备的高效数据交互机制为高效处理

海量的数据信息提供了重要的技术支撑;四是可靠性,hadoop核心

设计中的mapreduce所实现的任务监控机制确保了hadoop框架分

布式处理的可靠性,另外hdfs的备份恢复机制又更好的确保了数

据的可靠性。

2.2 hadoop的核心设计分析

(1)hadoop分布式文件系统(hdfs)。hdfs体系的底部是hadoop

分布式文件系统的存储节点,所有的文件存储在hadoop集群节点

都存储在这里。从外部客户的角度来看,hdfs像传统的分层文件系

统。客户可以任意创建、删除、移动或重命名文件等。但hdfs的

架构是基于节点构造的一个特定的设置,这是由其自身的特点决定

的。这些节点包括namenode(只有一个),namenode是不同的机器

上涉及到hdfs运行的一个通常的软件,它负责访问文件系统名称

空间和控制外部客户的管理,因为只有一个namenode节点,所以

hdfs容易出现单点故障的问题,这是hdfs的一个重要缺陷;数据

节点(datanode),当服务器从hdfs客户端上获得读写请求的响应

时,这些数据节点就可以根据这个报告完成块映射和其他文件系统

元数据验证。

hdfs的主要任务是要保证客户能够以流的形式访问写入的文

件。其中,hdfs的工作原理如下:客户预想将文件写到hdfs上时,

先将该文件缓存到本地的临时存储中。如果所需的hdfs块的大小

不能满足缓存数据的实际需求时,需要借助namenode和datanode

来创建额外的文件存储块,其中namenode用于相应创建文件的请

求,datanode 用以标识保存额外所需文件块副本的 存储块。在完

成以上操作的基础上,客户就可以将临时文件借助namenode和

datanode通过管道方式将文件块内容不断写到 hdfs 上。在最后的

文件块发送之后,namenode将文件创建提交到它的持久化元数据存

储,这样客户就能够以流的形式访问写入的文件。

(2)mapreduce。mapreduce是一个编程模型和处理产生大数据

集的相关实现。用户指定一个map函数处理一个key/value对,从

而产生中间的key/value对集。然后再指定一个reduce函数合并

所有的具有相同中间key的中间value。

3 基于hadoop的云存储系统的实现

3.1 基于hadoop的云存储系统结构。基于hadoop的云存储系

统主要由客户端、web操作系统、 eyeos、云服务器以及云存储中

心组成。

(1)客户端。系统的前端即客户端,客户端可以通过网页浏览

器来便捷的访问云存储系统。(2)云端服务器。基于hadoop的云

端服务器主要有一系列的云存储中心所构成,云端服务器主要负责

文件系统名称空间的管理以及外部访问云存储系统客户的管理。

(3)web操作系统。它主要负责接收来自客户端的各种访问请求,

eyeos作为web操作系统的核心,为客户提供了大量的应用程序,

客户可以结合自己的实际需求下载这些应用程序,从而可以有效实

现客户端系统的个性化配置。(4)云存储中心。云存储中心是由大

量的基于hadoop数据节点的服务器所组成的,主要用于实现文件

数据信息的分布式存储。

3.2 基于hadoop的云存储系统文件操作的实现。基于hadoop

的云存储系统文件操作基本上可分为两类:即读文件读和写文件。

客户要读一个文件,需要把该文件下载到本地,通过应用软件和网

络操作系统,将文件处理后显示给用户;如果要对文件进行修改和

保存的写操作,需要通过网络操作系统将要修改和保存的本地文件

上传到云存储系统。

读文件的流程如下:1)客户端通过浏览器访问web操作系统,

通过发出双击文件图标的驱动事件请求借助eyeos向hadoop的管

理节点发出获取文件请求。2)管理节点将查找到的客户端请求的

相应文件信息通过数据节点发送到客户端。3)客户端将接受的数

据信息合并成一个文件后借助与文件关联的应用程序来显示文件

信息从而完成文件的读操作。

写文件的流程如下:1)客户端浏览器通过web操作系统借助

eyeos向hadoop的管理节点发出上传文件请求。2)管理节点接收

到客户端的文件上传请求后,根据客户请求要上传文件的大小合理

分配存储空间。3)客户将要上传的文件上传至云存储系统中,完

成文件的写操作。

hadoop作为一个在集群上运行大型数据库处理应用程序的开放

式源代码框架。它是通过google的mapreduce编程范例来创建并

执行的应用程序,在很多大型企业网站上都已经得到了应用,可以

说是目前最为广泛应用的开源云计算软件平台,它在企业云存储系

统构建中的应用,更是促进了当前企业信息化管理的发展。相信随

着越来越多的全球it产业巨头不断加入云计算的阵营,基于hadoop

的云存储技术将势必会变成一个巨大的全球产业,改技术的不断发

展和成熟将为企业信息管理中实现企业管理信息系统的高性能和

低功耗提供有力的保证。

参考文献:

[1]张鹏.hadoop集群公平调度算法的改进与实现[j].电脑知识

与技术,2012,5.

[2]王皎,刘闫锋.hadoop集群参数的自动调优[j].电脑知识与

技术,2012,4.

[3]谌超,强保华,石龙.基于hadoop mapreduce的大规模数据

索引构建与集群性能分析[j].桂林电子科技大学学报,2012,4.


本文标签: 文件 计算 数据 实现 客户