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.
版权声明:本文标题:基于Hadoop的企业云存储技术探索 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.roclinux.cn/b/1710331326a568072.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论