Hadoop3.X框架下组件详解

Hadoop框架组件详解


前言

Hadoop是一个由Apache基金会所开发的分布式系统基础架构,Hadoop框架下有三个核心组件–HDFS、MapReduce和Yarn。HDFS为海量的数据提供了存储,而MapReduce则为海量的数据提供了计算,Yarn为HDFS和MapReduce提供资源调度。

一、分布式和集群

了解Hadoop架构之前先简单认识一下服务器工作的分布式和集群两种模式,便于后续理解。分布式指多台服务器协同配合完成一个大任务,每个服务器只完成大任务拆分出来的单独一个子任务。集群指多台服务器联合但独立完成相同的任务,可以实现并行和备份操作。

二、Hadoop架构的三个重要组件

1.HDFS

全称是Hadoop分布式文件系统,用于解决海量数据存储。有三个核心组件NameNode(主节点)、SecondaryNameNode(辅助节点)、DataNode(从节点)。HDFS遵循主从模式,NameNode是集群中的主节点,主要负责数据存储的管理工作,管理集群当中的各种数据,不实际储存真实海量的业务数据,但会储存HDFS中业务数据的元数据(HDFS文件大小,文件路径,文件权限,文件切割后的块信息等),同时主节点也可以被设置为DataNode从节点。SecondaryNameNode是集群中的辅助节点,用于辅助主节点进行数据的管理工作,可以对主节点中元数据信息进行整合并发送给主节点,紧急情况下可以帮助恢复NameNode的部分数据,但不能作为其热备存在。DataNode是集群中的从节点,主要用于存储海量的真实业务数据,受主节点的管理,执行主节点的命令操作,从节点会执行用户的读/写操作,用户存储数据时会切分成相同大小的数据块并存入从节点,从节点还会定时向主节点汇报块信息,提供了数据存储的安全性和稳定性。

2.Yarn资源调度

Yarn-作业调度和集群资源管理的框架,解决资源任务调度。Yarn主要由以下4个核心组件组成,分别是:
一.ResourceManager(RM):集群级别的资源管理器,负责整个集群的资源分配调度管理。
二.NodeManager(NM):单个节点上的资源管理器,负责执行资源分配和调度的任务,同时向RM汇报资源使用情况。
三.ApplicationMaster(AM):每个应用程序都有一个ApplicationMaster,负责与ResourceManager协商资源,并与NodeManager协同工作来执行和监控任务。
四.Containers:容器是在NodeManager上运行的执行单元,可以视为轻量级的虚拟机,提供隔离的环境供应用程序运行。

3.MapReduce

MapReduce为海量的数据分析提供了计算,其基本流程包括两个主要阶段:
1.Map阶段:
在这个阶段,原始数据会被分割成小块,每个小块被一个Map任务处理。每个Map任务读取输入数据的一个子集,并产生一系列的键值对。这些键值对随后会被排序和分组。
2.Reduce阶段:
经过排序和分组后,相关的键值对被传递给Reduce任务。Reduce任务对具有相同键的所有值执行聚合操作,例如求和、计数等。最终结果是一系列经过处理的聚合的键值对。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值