Hadoop概述
什么是Hadoop:
分布式存储框架:HDFS分布式计算框架:MapReduce资源调度和管理平台:YARN Hadoop的版本 HDFS架构
分布式存储介绍HDFS架构分析 YARN架构分析MapReduce架构分析Hadoop的特点
SEER
Hadoop概述 什么是Hadoop:Hadoop是一个适合海量数据的分布式存储和分布式计算的平台
Hadoop是一个统称,目前Hadoop主要包含三大组件,分别是:
分布式存储框架:HDFS 分布式计算框架:MapReduce 资源调度和管理平台:YARN Hadoop的版本官方版本
Apache hadoop
使用下载最多的版本,稳定,有商业支持(收费),在Apache的基础上搭上了一些patch。推荐使用
Cloudera hadoop(CDH)
基于Apache的版本进行了集成,结合Ambari可以实现平台化快速安装部署
HDFS架构HortonWorks (HDP)
HDFS是分布式存储框架,他具有主从结构。
HDFS集群由单个名称节点组成,主服务器管理文件系统名称空间并控制客户机对文件的访问。此外,还有许多数据节点,通常是集群中每个节点一个,他们管理连接到运行他们的节点的存储。
在分布式存储系统中,分散在不同节点中的数据可能属于同一个文件为了组织众多的文件,把文件可以放到不同的文件夹中,文件夹可以一级一级的包含。我们把这种组织形式称为命名空间(namespace)。命名空间管理着整个服务器集群中的所有文件。集群中不同的节点承担不同的责任
负责命名空间职责的节点称为主节点(master node)负责存储真实数据职责的节点称为从节点 (slave node)主节点负责管理文系统的文件结构,从节点负责存储真实的数据,这样的结构方式称为主从式结构(master-slaves)用户操作时,应该先和主节点打交道,查询数据在哪些从节点上存储,然后再从从节点读取在主节点上,为了加快用户访问的速度,会把整个命名空间信息都放在内存中,当存储的文件越多时,那么主节点就需要越多的内存空间在从节点存储数据时,有的原始数据的文件可能很大,有的可能很小,大小不一样的文件不容易管理,那么我们可以抽象出一个独立的存储文件的单位,称为块(block)数据存放在集群中,可能应为网络原因或者节点硬件原因造成访问失败,最好采用副本(replication)机制,把数据同时备份到多台节点中,这样数据就安全了,数据丢失或者访问失败的概率就小了。 HDFS架构分析
负责数据的分布式存储主从结构
主节点,可以有2个:namenode从节点,有多个:datanode namenode负责
接受用户的操作请求,是用户操作的入口维护文件系统的目录结构,称作命名空间 datanide负责
存储数据 YARN架构分析
资源的调度和管理平台主从结构
主节点,可以有2个:ResourceManager从节点,有很多个:NodeManager RedourceManager负责
集群资源的分配与调度MapReduce、Storm、Spark等应用,但必须实现ApplicationMaster接口,才能被RM管理 NodeManager负责
单节点资源的管理(CPU+内存) MapReduce架构分析
依赖磁盘io的批处理计算模型主从结构
主节点,只有一个:MRAppMaster从节点,就是具体的task MRAppMaster负责
接受客户端提交的计算任务把极端任务分给NodeManager的Container中执行,即任务调度
Container是YARN中资源的抽象,他封装了某个节点上一定量的资源(CPU和内存资源)Container由ApplicationMaster向ResourceManager申请的,由ResouceManager中的资源调度器异步分配给ApplicationMasretContainer的运行是由ApplicationMaster向资源所在的NodeManager发起的 监控Container中Task的执行情况 Task负责:
处理数据 Hadoop的特点 SEER
S 扩容能力(Scalable):能可靠地存储和处理PB级别地数据。如果数据量更大,存储不下了,再增加节点就可以了E 成本低(Economical):可以通过普通机器组成的服务器集群来分发以及处理数据,这些服务器集群可达数千个节点E 高效率(Efficient):通过分发计算程序,Hadoop可以在数据所在节点上(本地)并行地处理他们,这使得处理非常地迅速R 可靠性 (Reliable):Hadoop能够自动的维护数据的多份副本,并且再任务失败后能够自动地部署计算任务



