10分钟零基础就可搞懂的Hadoop架构原理,阿里架构师详解

我今天花了大半个下午的时间,写了这篇hadoop的架构,全篇都是以大白话的形式,也算是为后面更加详细的每一部分开了个好头吧,如果喜欢请点转发和关注,如果有疑问,直接在评论里说出来,大家一起解决,才能进步 。
一、概念Hadoop诞生于2006年,是一款支持数据密集型分布式应用并以Apache 2.0许可协议发布的开源软件框架 。它支持在商品硬件构建的大型集群上运行的应用程序 。Hadoop是根据google公司发表的MapReduce和Google档案系统的论文自行实作而成 。
Hadoop与Google一样,都是小孩命名的,是一个虚构的名字,没有特别的含义 。从计算机专业的角度看,Hadoop是一个分布式系统基础架构,由Apache基金会开发 。Hadoop的主要目标是对分布式环境下的“大数据”以一种可靠、高效、可伸缩的方式处理 。
Hadoop框架透明地为应用提供可靠性和数据移动 。它实现了名为MapReduce的编程范式:应用程序被分割成许多小部分,而每个部分都能在集群中的任意节点上执行或重新执行 。
Hadoop还提供了分布式文件系统,用以存储所有计算节点的数据,这为整个集群带来了非常高的带宽 。MapReduce和分布式文件系统的设计,使得整个框架能够自动处理节点故障 。它使应用程序与成千上万的独立计算的电脑和PB级的数据 。

10分钟零基础就可搞懂的Hadoop架构原理,阿里架构师详解

文章插图
 
二、组成1.Hadoop的核心组件
10分钟零基础就可搞懂的Hadoop架构原理,阿里架构师详解

文章插图
 
分析:Hadoop的核心组件分为:HDFS(分布式文件系统)、MapRuduce(分布式运算编程框架)、YARN(运算资源调度系统)
2.HDFS的文件系统
10分钟零基础就可搞懂的Hadoop架构原理,阿里架构师详解

文章插图
 
【10分钟零基础就可搞懂的Hadoop架构原理,阿里架构师详解】HDFS
1.定义
整个Hadoop的体系结构主要是通过HDFS(Hadoop分布式文件系统)来实现对分布式存储的底层支持,并通过MR来实现对分布式并行任务处理的程序支持 。
HDFS是Hadoop体系中数据存储管理的基础 。它是一个高度容错的系统,能检测和应对硬件故障,用于在低成本的通用硬件上运行 。HDFS简化了文件的一致性模型,通过流式数据访问,提供高吞吐量应用程序数据访问功能,适合带有大型数据集的应用程序 。
2.组成
HDFS采用主从(Master/Slave)结构模型,一个HDFS集群是由一个NameNode和若干个DataNode组成的 。NameNode作为主服务器,管理文件系统命名空间和客户端对文件的访问操作 。DataNode管理存储的数据 。HDFS支持文件形式的数据 。
从内部来看,文件被分成若干个数据块,这若干个数据块存放在一组DataNode上 。NameNode执行文件系统的命名空间,如打开、关闭、重命名文件或目录等,也负责数据块到具体DataNode的映射 。DataNode负责处理文件系统客户端的文件读写,并在NameNode的统一调度下进行数据库的创建、删除和复制工作 。NameNode是所有HDFS元数据的管理者,用户数据永远不会经过NameNode 。
10分钟零基础就可搞懂的Hadoop架构原理,阿里架构师详解

文章插图
 
分析:NameNode是管理者,DataNode是文件存储者、Client是需要获取分布式文件系统的应用程序 。
MapReduce
1.定义
Hadoop MapReduce是google MapReduce 克隆版 。
MapReduce是一种计算模型,用以进行大数据量的计算 。其中Map对数据集上的独立元素进行指定的操作,生成键-值对形式中间结果 。Reduce则对中间结果中相同“键”的所有“值”进行规约,以得到最终结果 。MapReduce这样的功能划分,非常适合在大量计算机组成的分布式并行环境里进行数据处理 。
2.组成
10分钟零基础就可搞懂的Hadoop架构原理,阿里架构师详解

文章插图
 
分析:
(1)JobTracker
JobTracker叫作业跟踪器,运行到主节点(Namenode)上的一个很重要的进程,是MapReduce体系的调度器 。用于处理作业(用户提交的代码)的后台程序,决定有哪些文件参与作业的处理,然后把作业切割成为一个个的小task,并把它们分配到所需要的数据所在的子节点 。
Hadoop的原则就是就近运行,数据和程序要在同一个物理节点里,数据在哪里,程序就跑去哪里运行 。这个工作是JobTracker做的,监控task,还会重启失败的task(于不同的节点),每个集群只有唯一一个JobTracker,类似单点的NameNode,位于Master节点
(2)TaskTracker


推荐阅读