云计算是目前最热门的研究领域之一,也是众多企业及研究机构研究的课题。云计算是分布式处理、并行处理和网格计算的发展,或者说是这些电脑科学概念的商业实现。云计算的新颖之处在于它几乎可以提供无限的廉价存储和计算能力。未来存储模式将改变目前的存储模式。不再存放在个人电脑及服务器上,而是存放在云服务器中。同时所有的计算及处理工作也将在云服务器完成。这样给企业及各厂商带来很多便利。节省了投入成本、企业能够很好的应付突发的大访问量以及能够提供存储服务的同步升级和数据的有效管理。因此,云计算在近年来赢得了众多厂商和企业的关注并得到长足的发展。 1. 云计算及其存储结构
1.1 云计算概念
云计算是网格计算、分布式计算、并行计算、效用计算、网络存储、虚拟化、负载均衡等传统电脑技术和网络技术发展融合的产物。它旨在通过网络把多个成本相对较低的计算实体整合成一个具有强大计算能力的完美系统, 并借助SaaS、PaaS、IaaS、MSP 等先进的商业模式把这强大的计算能力分布到终端用户手中。云计算的一个核心理念就是通过不断提高“云”的处理能力,进而减少用户终端的处理负担。最终使用户终端简化成一个单纯的输入输出设备。并能按需享受“云”的强大计算处理能力。也就是说用户端只需要进行输入输出。其它所有计算、存储、处理等功能全部交给“云”去处理,用户可以根据自己的需求订购“云”中的服务。 1.2 云计算的体系结构
在云计算体系结构中,用户的操作及存储等服务都由云中的各个服务器完成。根据需
求访问电脑和存储系统。用户的系统不需安装任何软件,数据也存储在云的电脑及服务器中。图1是云计算体系结构的模型。由用户端、服务目录、系统管理、配置工具、监控、服务器几个模块构成,各模块负责不同的功能。
用户端:用户与云系统交互的界面,用户通过用户端向云发出请求。
服务目录:显示该用户能够访问及操作的所有服务的目录列表,用户可以在这些目录里进行选择操作。
系统管理:管理可分配给电脑的各种资源,从而保证负载平衡。
配置工具: 用户通过配置工具在分配的服务器节点上配置需要的各种运行环境。 监控:监控和计算云系统资源的使用情况,确保资源能顺利分配给适宜的用户。 服务器集合:云系统中的各个服务器的集合。
在云计算体系结构中,用户通过用户端访问服务目录,选择所需的服务;当服务请求发送并验证通过后,由系统管理负责找到所需要的资源;用户通过用户端在服务目录中选取调用一个服务,该命令传递到系统管理后,由系统管理选取适宜的节点。调用配置工具为用户准备运行环境。
1.3 云存储及其架构模型
云存储的定义
云存储指通过集群应用、网格技术或分布式文件系统等功能将网络中大量各种不同类型的存储设备通过应用软件集合起来协同工作,共同对外提供数据存储和业务访问功能的一个系统。云存储可以简单的理解为云计算中的存储。云存储系统可以认为是配置了大容量存储空间的云计算系统。用户所有的数据都保存在“云”中,需要时从“云”中读取,本地不需要任何的存储设备。云存储更准精确地说是一种服务,用户使用的是由许多个存储设备和服务器所构成的集合体提供的数据访问服务。 云存储的架构模型
云存储系统主要用来进行数据存储与管理而且处理的数据都是超大规模的。云存储系统是网络设备、存储设备、服务器、应用软件、公用访问接口、接入网和客户端程序等多个部分组成的复杂系统。各部分以存储设备为核心,通过应用软件对外提供数据存储和业务访问服务。云存储模型与云计算模型相比,增加了一个存储层,且基础管理层增加了与数据管理和数据安全有关的功能。两者在访问层和应用接口层则是完全相同的。
存储层主要包括存储设备及存储设备管理系统。存储设备分布在不同地域,彼此之间通过网络互联在一起。存储设备管理系统负责存储设备的虚拟化管理、多链路冗余管理、硬件设备的状态监控和故障维护、设备升级等。基础管理层通过集群系统、分布式文件系统和网格计算等技术,实现云存储中多个存储设备之间的协同工作。应用接口层根据用户订购的服务为用户分配权限,为不同的用户提供不同的API 接口及应用软件,同时提供网络接入、用户认证等功能。访问层包括各种能够访问云存储系统的用户,用户可以通过标准的公共应用接口登录云存储系统,享受云存储服务。 2. Hadoop 平台介绍
Hadoop是一个能够对大量数据进行分布式处理的软件框架。用户可以轻松地在Hadoop上开发和运行处理海量数据的应用程序。它主要有以下几个优点:
学习文档 仅供参考
⒈高可靠性。Hadoop按位存储和处理数据的能力值得人们信赖。
⒉高扩展性。Hadoop是在可用的电脑集簇间分配数据并完成计算任务的,这些集簇可以方便地扩展到数以千计的节点中。
⒊高效性。Hadoop能够在节点之间动态地移动数据,并保证各个节点的动态平衡,因此处理速度非常快。
⒋高容错性。Hadoop能够自动保存数据的多个副本,并且能够自动将失败的任务重新分配。
Hadoop带有用Java语言编写的框架,因此运行在 Linux 生产平台上是非常理想的。Hadoop 上的应用程序也可以使用其他语言编写,比方 C++。
Hadoop 最核心的设计就是分布式文件系统HDFS 和Map/Reduce 算法模型。分布式文件系统HDFS是专门为Map/Reduce作业所设计的文件系统。但HDFS 并不是用来处理随机存取数据的,HDFS 的设计中更多的考虑到了数据批处理,而不是用户交互处理,比之数据访问的低延迟问题,更关键的在于数据访问的高吞吐量。因此,HDFS 是一个给应用提供高吞吐量的分布式文件系统,可能由成百上千的机器所构成, 每个机器上存储着文件系统的部分数据。计算模型Map/Reduce 是Hadoop 的核心计算模型,是用于在集群上分布式处理大数据集的软件架构。它将复杂的运行于大规模集群上的并行计算过程高度的抽象到了2 个函数,Map 和Reduce,这是一个简单而又强大的模型。 2.1 Hadoop 模型分析
Hadoop的分布式数据存储
〔1〕HDFS的工作原理
因篇幅问题不能全部显示,请点此查看更多更全内容