Hadoop大数据平台简介

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
    任务调度与资源管理

在这里插入图片描述

HDFS组件

在这里插入图片描述

YARN四大组件

在这里插入图片描述

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

YARN执行流程

在这里插入图片描述

  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组件作用

在这里插入图片描述
在这里插入图片描述

MapReduce执行流程

在这里插入图片描述
在这里插入图片描述

Hadoop生态系统

在这里插入图片描述

  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公司)
发布了118 篇原创文章 · 获赞 42 · 访问量 3万+

猜你喜欢

转载自blog.csdn.net/qq_41490561/article/details/104522572