Hadoop的由来

    hadoop是用于处理分布式存储和分布式计算的一个大数据处理框架。2002年,google开源了GFS论文。一个叫Doung Cutting的人根据GFS论文写了一个HDFS模块,解决了分布式存储的问题;2004年,google又开源了MapReduce论文,Doung Cutting又根据这篇论文写了一个MapReduce模块。后来将HDFS和MapReduce拆分出来,就形成了一个大数据处理平台——Hadoop

Hadoop概述

Hadoop项目主要包括以下四个模块

1.Hadoop Common
    为其他Hadoop模块提供基础设施
2. Hadoop HDFS
    一个高可靠、高吞吐量的分布式文件系统
3. Hadoop MapReduce
    一个分布式的离线并行计算框架
4. Hadoop YARN
    任务调度与资源管理

hadoop 是什么产品 hadoop是什么平台_Hadoop

HDFS组件

hadoop 是什么产品 hadoop是什么平台_hadoop 是什么产品_02

YARN四大组件

hadoop 是什么产品 hadoop是什么平台_Hadoop_03

1.ResourceMangage(RM)
2.NodeManager(NM)
3.ApplicationMaster(AM)
4.Container

YARN执行流程

hadoop 是什么产品 hadoop是什么平台_分布式计算_04

  1. Client连接RM提交作业,RM给Client一个Jobid(注:ApplicationManager和ResourceScheduler)
  2. RM 中的ApplicationsManager连接一个NM,让NM创建一个AM处理客户端作业请求
  3. AM连接RM中的ApplicationsManager申请NodeManager
  4. AM去ResourceScheduler给Client的作业申请资源(cpu、内存、磁盘、网络)
  5. AM连接NM,发送Client job作业程序和申请的资源(cpu、内存、磁盘、网络)
  6. NM启动Container进程运行job的不同任务
  7. Container进程运行状态实时反馈给AM
  8. AM反馈任务状态信息给RM中的ApplicationsManager
  9. Client端可以连接RM或AM查询job的执行情况

:NM启动后去RM上进行注册,会不断发送心跳,说明处于存活状态

YARN组件作用

hadoop 是什么产品 hadoop是什么平台_hadoop 是什么产品_05


hadoop 是什么产品 hadoop是什么平台_分布式计算_06

MapReduce执行流程

hadoop 是什么产品 hadoop是什么平台_Hadoop_07


hadoop 是什么产品 hadoop是什么平台_分布式计算_08

Hadoop生态系统

hadoop 是什么产品 hadoop是什么平台_HDFS_09

  1. Hadoop:分布式存储、分布式计算、资源调度与任务管理
    hdfs、mapreduce、yarn、common
  2. Lucene:索引检索工具包
  3. Solr:索引服务器
  4. Nutch:开源的搜索引擎
  5. HBase/Cassandra:基于谷歌的BigTable开源的列式存储的非关系型数据库
  6. Hive:基于SQL的分布式计算引擎,同时是一个数据仓库
  7. Pig:基于Pig Latin脚本的计算引擎
  8. Thrift/Avro:RPC框架,用于网络通信
  9. BigTop:项目测试、打包、部署
  10. Oozie/Azakban:大数据的工作流框架
  11. Chukwn/Scribe/Flume:数据收集框架
  12. Whirr:部署为云服务的类库
  13. Sqoop:数据迁移工具
  14. Zookeeper:分布式协调服务框架
  15. HAMA:图计算框架
  16. Mahout:机器学习框架

Hadoop环境

三个环境

  1. 单机环境
  2. 伪分布式环境
  3. 分布式环境

三个分支

  1. apache版本(Apache基金会)
  2. cdh版本(cloudera公司)
  3. hdp版本(HortOnWorks公司)