一.开始

1.1 hadoop是什么?

(1 ) Hadoop 是一个由 Apache 基金会所开发的 分布式系统基础架构 。 (2 )主要解决,海量数据的 存储 和海量数据的 分析计算 问题。 (3 )广义上来说, Hadoop 通常是指一个更广泛的概念 —— Hadoop 生态圈 。  

1.2 为什么要用hadoop?

现在的我们,生活在数据大爆炸的年代。2020年,全球的数据总量达到44ZB,经过单位换算后,至少在440亿TB以上,也就是说,全球每人一块1TB的硬盘都存储不下。

扩展: 数据大小单位,从小到大分别是: byte、kb、mb、Gb、Tb、PB、EB、ZB、DB、NB... 单位之间的转换都是满足1024. 一些数据集的大小更远远超过了1TB,也就是说,数据的存储是一个要解决的问题。同时,硬盘技术也面临一个技术瓶颈,就是硬盘的传输速度(读数据的速度)的提升远远低于硬盘容量的提升。

对于如何提高读取数据的效率,我们已经想到解决的方法了,那就是将一个数据集存储到多个硬盘里,然后并行读取。比如1T的数据,我们平均100份存储到100个1TB硬盘上,同时读取,那么读取完整个数据集的时间用不上两分钟。至于硬盘剩下的99%的容量,我们可以用来存储其他的数据集,这样就不会产生浪费。解决读取效率问题的同时,我们也解决了大数据的存储问题。

但是,我们同时对多个硬盘进行读/写操作时,又有了新的问题需要解决:

硬件故障问题。一旦使用多个硬件,相对来说,个别硬件产生故障的几率就高,为了避免数据丢失,最常见的做法就是复制(replication):文件系统保存数据的多个复本,一旦发生故障,就可以使用另外的复本。读取数据的正确性问题。大数据时代的一个分析任务,就需要结合大部分数据来共同完成分析,因此从一个硬盘上读取的数据要与从其他99个硬盘上读取的数据结合起来使用。那么,在读取过程中,如何保证数据的正确性,就是一个很大的挑战。

针对于上述几个问题,Hadoop为我们提供了一个可靠的且可扩展的存储和分析平台,此外,由于Hadoop运行在商用硬件上且是开源的,因此Hadoop的使用成本是比较低了,在用户的承受范围内。  

二.入门

2.1 hadoop组成

hadoop2.0以后的四个模块:     - Hadoop Common:Hadoop模块的通用组件     - Hadoop Distributed File System:分布式文件系统     - Hadoop YARN:作业调度和资源管理框架     - Hadoop MapReduce:基于YARN的大型数据集并行计算处理框架

2.2 hadoop生态系统

三.hadoop架构

3.1 HDFS 架构概述  

Hadoop Distributed File System ,简称 HDFS ,是一个分布式文件系统 (1 ) NameNode ( nn ):存储文件的 元数据 ,如 文件名,文件目录结构,文件属性 (生成时间、副本数、 文件权限),以及每个文件的 块列表 和 块所在的 DataNode 等。 (2 ) DataNode(dn) :在本地文件系统 存储文件块数据 ,以及 块数据的校验和 。 (3 ) Secondary NameNode(2nn) : 每隔一段时间对 NameNode 元数据备份 。 简单的说就是NameNode就相当于一个目录,一个索引,负责标记每一个DataNode的存放位置 而DataNode才是真正存放数据的, Secondary NameNode(2nn) :相当与老板的一个秘书,他会备份 一部分 数据,不会备份全部数据。

3.2 YARN 架构概述  

Yet Another Resource Negotiator 简称 YARN ,另一种资源协调者,是 Hadoop 的资源管理器。

3.3 MapReduce 架构概述  

MapReduce 将计算过程分为两个阶段: Map 和 Reduce (1 ) Map 阶段并行处理输入数据 (2 ) Reduce 阶段对 Map 结果进行汇总  

3.4 HDFS、YARN、MapReduce 三者关系

用户提交任务,任务给到ResourceManager,ResourceManager  会找一个节点NodeManager,开启一个Container ,把任务(App Mstr)放在Container    App Mstr会向 

ResourceManager申请说自己需要多少资源  ResourceManager 看哪一个DataNode有资源,给他分配资源  之后  App Mstr 会在被分配的资源节点上开启计算任务(MapTask ),这个其实就是MapReduce 的map阶段,之后会返回一个Reduce到各自对应的节点,这就是他们三者之间的关系。

相关链接

评论可见,请评论后查看内容,谢谢!!!评论后请刷新页面。