目录 Hadoop概述 Hadoop 发展历史 Hadoop 三大发行版本 1.Apache Hadoop(常用) 2.Cloudera Hadoop 3.Hortonworks Hadoop 优势 优势总结——4高(高可靠、高扩展、高效、高容错) Hadoop组成 1.HDFS 管理者:NameNode(nn) 工作者:DataNode(dn) 辅助管理者:SecondaryNameNode(2nn) HDFS的优缺点 优点: 缺点 HDFS的写数据流程 HDFS的读数据流程 2.YARN YARN工作机制 YARN作业提交过程 1.作业提交 2.作业初始化 3.任务分配 4.任务运行 5.进度和状态更新 6.作业完成 YARN调度器和调度算法

  1. FIFO调度器(First In First Out) 2.容量调度器(Capacity Scheduler) 特点 资源分配算法 3.公平调度器 特点 公平调度器队列资源分配方式: 3.MapReduce MapReduce核心思想 Mapper: Reduce: MapReduce优缺点 优点: 缺点: MapReduce进程 MapReduce框架原理 1.MapTask并行度决定机制 2.FileInputFormat切片解析 3.TextInputFormat实现类 TextInputFormat KeyValueTextInputFormat NLineInputFormat CombineTextInputFormat 4.CombineTextInputFormat切片机制 MapReduce工作流程
  2. mapTask阶段 2.shuffle阶段 3.reduce阶段 HDFS、YARN、MapReduce 三者关系 Hadoop生态体系 Hadoop的工作方式 Hadoop的守护进程 Hadoop概述 Hadoop 是使用 Java 编写,允许分布在集群,使用简单的编程模型的计算机大型数据集处理的Apache 的开源框架。

主要解决,海量数据的存储和海量数据的分析计算问题。 广义上来说,Hadoop通常是指一个更广泛的概念——Hadoop生态圈。 Hadoop 发展历史 Hadoop创始人Doug Cutting,为 了实 现与Google类似的全文搜索功能,他在Lucene框架基础上进行优化升级,查询引擎和索引引擎。

2001年年底Lucene成为Apache基金会的一个子项目。

对于海量数据的场景,Lucene框架面对与Google同样的困难,存储海量数据困难,检索海量速度慢。

学习和模仿Google解决这些问题的办法 :微型版Nutch。

可以说Google是Hadoop的思想之源(Google在大数据方面的三篇论文) GFS —>HDFS Map-Reduce —>MR BigTable —>HBas

2003-2004年,Google公开了部分GFS和MapReduce思想的细节,以此为基础Doug Cutting等人用了2年业余时间实现了DFS和MapReduce机制,使Nutch性能飙升。

2005 年Hadoop 作为 Lucene的子项目 Nutch的一部分正式引入Apache基金会。

2006 年 3 月份,Map-Reduce和Nutch Distributed File System (NDFS)分别被纳入到 Hadoop 项目中,Hadoop就此正式诞生,标志着大数据时代来临。

名字来源于Doug Cutting儿子的玩具大象

Hadoop 三大发行版本

Apache、Cloudera、Hortonworks。


Apache 版本最原始(最基础)的版本,对于入门学习最好。【2006】

Cloudera 内部集成了很多大数据框架,对应产品 CDH。【2008】

Hortonworks 文档较好,对应产品 HDP。