Hadoop是什么
1)Hadoop是一个有Apache基金会所开发的分布式系统基础架构。
2)主要解决海量数据的存储和海量数据的分析计算问题。
3)广义上来说,Hadoop通常是指一个更广泛的概念---Hadoop生态圈。
1.2Hadoop发行版本
Hadoop发行的三个版本:Apache、Cloudera、Hortonworks。
1)Apache Hadoop
官网地址:http://hadoop.apache.org
下载地址:https://hadoop.apache.org/releases.html
2)Cloudera Hadoop
官网地址:https://www.cloudera.com/downloads/cdh
下载地址:https://docs.cloudera.com/documentation/enterprise/6/release-notes/topics/rg_cdh_6_download.html
3)Hortonworks Hadoop
官网地址:https://hortonworks.com/products/data-center/hdp/
下载地址:https://hortonworks.com/downloads/#data-platform
1.3 Hadoop优势
1)高可靠性
Hadoop底层维护多个数据副本,所以即使Hadoop某个计算元素出现故障,也不会导致数据的丢失。
2)高扩展性
在集群间分配任务数据,可方便的扩展数以千计的节。
3)高效性
在MapReduce的思想下,Hadoop是并行工作的,以加快任务处理速度。
4)高容错性
能够自动将失败的任务重新分配。
1.4Hadoop组成
Hadoop1.x
MapReduce(计算+资源调度)
HDFS(数据存储)
Common(辅助工具,HDFS和MR共有的常用的工具包模块!)
hadoop1.x时:MapReduce同时处理业务逻辑运算和资源调度,耦合性较大
Hadoop2.x
MapReduce(计算)
Yarn(资源调度)
HDFS(数据存储)
Common(辅助工具,HDFS和MR共有的常用的工具包模块!)
hadoop2.x增加了Yarn,Yarn只负责资源调度,MapReduce只负责运算 将资源调度和管理进行分离!由统一的资源调度平台YARN进行大数据计算资源的调度! 提升了Hadoop的通用性!Hadoop搭建的集群中的计算资源,不仅可以运行Hadoop中的MR程序!也可以运行其他计算框架的程序!
Hadoop3.x
Hadoop在组成上没有变化。
1.4.1HDFS架构概述
Hadoop Distributed File System,简称HDFS,是一个分布式文件系统。
1)NameNode(nm):存储文件的元数据,比如文件名,文件目录结构,文件属性(生成时间、副本数、文件权限),以及每个文件的块列表和所在的DataNode等。
2)DataNode(dn):在本地文件系统存储文件块数据,以及块数据的校验和。
3)Secodary NameNode(2nm):每隔一段时间对NameNode元数据备份。
1.4.2YARN架构概述
Yet Another Resource Negotiator 简称YARN,另一种资源协调者,是Hadoop的资源管理器。
1)ResourceManager(RM):整个集群资源(内存、cpu等)的管理者。
2)NodeManager(NM):单个节点服务器资源的管理者。
3)ApplicationMaster(AM):单个任务运行的管理者。
4)Container:容器,相当于一台独立的服务器,里面封装了任务运行所需要的资源,如内存、cpu、磁盘、网络等。
说明:1、客户端可以有多个;
2、集群上可以运行多个ApplicationMaster
3、每个NodeManager上可以有多个Container
1.4.3 MapReduce架构概述
MapReduce将计算过程分为两个部分:Map和Reduce
1)Map阶段是并行处理输入数据
2)Reduce阶段是对Map结果进行汇总