目录 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调度器和调度算法
- 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工作流程
- 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。