Hadoop是什么
Hadoop是一个用于解决大数据存储与分析计算的一个分布式系统基础架构。而Hadoop的强大之处在于生态圈的强大,正如Java一样,生态决定了一个工具语言的流行程度
Hadoop的组成
Hadoop有Hadoop1.x跟Hadoop2.x两个版本,其主要核心由三部分组成HDFS(Hadoop分布式文件系统)、MapReduce(负责映射计算)、HBase(Nosql数据库)。
Hadoop1.x与Hadoop2.x的最大区别是将资源调度从MapReduce中抽离处理,增加了Yarn进行资源调度,让Hadoop的整体耦合度降低
HDFS简介
HDFS即Hadoop Distributed File System,HDFS由NameNode(nn)与DataNode(dn)组成。
NameNode:存储文件的元数据,如文件目录,文件目录结构,类似索引的存在,可以指明数据块的存储位置。
DataNode:在本地文件系统存储文件块数据,即实际存储数据的地方。
二者的关系可以认为一个请求过来,先从NameNode获取数据的存储位置,然后通过存储位置,到对应的DataNode获取数据。
Yarn简介
Yarn主要进行Hadoop的资源调度,监控各个节点
MapReduce架构简介
MapReduce将数据的运行分为两个阶段,Map跟Reduce。
Map阶段并行处理输入数据
Reduce阶段将Map结果进行汇总
运行关系有点像ES6或者Java8的Map跟Reduce运算,分发运算汇总,提高系统效率。