1 / 22
文档名称:

Hadoop体系架构概述备份 ppt课件.ppt

格式:ppt   大小:132KB   页数:22页
下载后只包含 1 个 PPT 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

Hadoop体系架构概述备份 ppt课件.ppt

上传人:龙的传人 2020/9/14 文件大小:132 KB

下载得到文件列表

Hadoop体系架构概述备份 ppt课件.ppt

文档介绍

文档介绍:Hadoop体系架构概述Hadoop体系架构HDFS简介Map/Reduce模型分布式列式数据库HbaseHadoop概述基于Apache基金会下的一个开源项目,致力于开发一个可靠的、大规模的分布式计算框架用户可采用简单的计算模型在计算机集群下对大规模的数据进行分布式处理设计理念之一是扩展单一的服务器为成千上万机器的集群,且集群中每一个机器同时提供本地计算力和存储力Hadoop框架是在应用层检测和处理硬件失效问题,而不是依赖于硬件自身来维持高可用性。在Hadoop框架集群中硬件失效被认为是一种常态,集群的高可用性服务是建立在整个集群之上的分布式文件系统(HadoopDistributed,HDFS)并行计算模型(Map/Reduce)列式数据库(HBase)数据仓库(Hive)数据分析语言(Pig)数据格式转化工具(Sqoop)协同工作系统(Zookeeper)数据序列化系统(Avro)HDFS(HadoopDistributed)Map/Reduce(JobScheduling/ExecutionSystem)Hbase(ColumnDatabase)Pig(DataFlow)Hive(SQL)SqoopETLToolsBIReportingRDBMSAvroSerialization)Zookeeper(Coordination)Hadoop整体框架Hadoop整体框架下特点Hadoop主要在多节点集群环境下以数据存储为基础最大限度兼容结构化数据格式以数据处理为目的且其数据操作技术多样化HDFS概述-----基本特征基于商用硬件环境HDFS具有高容错性,并且被部署在廉价的硬件之上HDFS向应用程序提供高的数据吞吐访问,适合于需要处理大规模海量数据集的应用HDFS遵循部分POSIX协议要求,可以确保应用程序以流的方式访问文件系统数据HDFS的对现实应用环境的假设及其目标硬件失效流式数据访问海量数据集追加写入及文件同步“移动计算比移动数据的代价小”。在HDFS中,硬件失效是常态而不是意外。一个真实的HDFS环境可能由上百或上千的机器组成,每一个机器存储文件系统中的部分数据。集群中大量的机器都有极高的可能性会发生硬件故障而失效,这一真实的情况表明HDFS集群中的部分机器总是处于非正常工作状态。因此,检测机器失效并快速自动恢复发生故障的机器是HDFS的核心架构目标。。运行在HDFS之上的应用程序需要流式访问其数据集,这与运行在常规文件系统上的通用应用程序不一样。HDFS更适用于批量数据处理而不是用户的交互性使用。HDFS的重点是强调数据的高吞吐访问而不是数据的低延迟访问。POSIX规定了很多的硬性要求,这些要求对运行在HDFS上的应用程序而言是非必须的。但是,HDFS在几个关键领域引入了POSIX语义来提高数据的吞吐率。。运行在HDFS上的应用是建立在海量数据集之上的。HDFS被设计来存储大文件,通常HDFS中的文件大小应该是千兆字节到兆兆字节。HDFS必须具备有很高的总数据带宽,其单一集群规模能够容乃成千上万的机器节点,并且一个HDFS集群能够支撑数以万计的文件量。。大多数的HDFS应用都需要“一次写多次读”的文件访问模式。HDFS具有两种高级特征:刷新缓存(hflush)和文件添加(append)。刷新缓存使得一个未关闭文件的最后一个块对访问者可见的同时提供了读一致性和数据持久性。文件添加提供了在一个已关闭文件的末尾添加额外数据的机制。5.“移动计算比移动数据的代价小”。应用所需要的计算如果在数据的附近实施效率更高,这一特性在数据量特别庞大时会显得更加明显。数据处理的本地化会最大限度地减少网络拥塞,并且提高系统整体的吞吐量。因此,在HDFS中假设移动计算至数据的存储位置比移动数据至应用程序运行位置更好。为了实现这一假设,HDFS为应用提供了接口来移动应用自身到接近数据的储存点。。HDFS设计的目标之一是能够简单的从一个平台移植到另一平台。这便于大量的应用选择HDFS作为一个平台而广泛使用。HDFS架构主从(Master/Slave)体系结构只含有一个NameNode主服务节点这个节点管理文件系统中的命名空间和调度客服端对文件的访问通常一个机器就是一个DataNode数据节点,DataNode管理本节点上数据的存储在HDFS内部,一个文件被分割为一个或多个数据块,并且这些数据块被存储在一批DataNode中。NameNode执行文件系统中命名空间的操作(打开、关闭、重命名文件和目录),NameNode需要执行数据块到DataNode映射的决策DataNode负责响应来自客户端的文件读写要求,也要负责执行