hadoop小结(知识点)

hdfs

namenode

NameNode是HDFS的主要组件之一。它负责管理文件系统的命名空间和元数据。NameNode维护了一个文件树和文件的元数据,包括文件的访问权限、块的位置等。它记录了文件系统中每个文件和目录的信息,并协调客户端对文件的访问请求。NameNode还负责分配和管理数据块存储在哪个DataNode上。

datanode

DataNode是HDFS的工作节点组件。它是存储实际数据块的地方。DataNode负责存储和检索数据块,以及向客户端提供读写数据的服务。DataNode根据NameNode的指示来保存和复制数据块,并向NameNode报告存储容量和健康状况。

secondnamenode

Secondary NameNode并不是NameNode的备份,而是NameNode的辅助组件。它的主要功能是定期合并和压缩NameNode的编辑日志(Edit Logs),以减少NameNode启动时间。Secondary NameNode定期从NameNode获取最新的编辑日志,并将其合并为一个新的镜像文件(Checkpoint)。这样,当NameNode发生故障时,可以使用Checkpoint快速恢复文件系统状态。

yarn

Yarn是Hadoop的资源管理器,负责协调和管理群集中的资源。它接收应用程序的资源请求,并根据可用资源进行动态分配。Yarn还跟踪应用程序的进度和状态,并监控集群中的节点。

ResourceManager

ResourceManager是Yarn的组件之一。负责全局资源的管理和分配。ResourceManager维护着整个集群的资源信息,包括内存、CPU等。当应用程序提交资源请求时,ResourceManager根据可用资源进行分配。

NodeManager

NodeManager是Yarn的另一个组件,运行在每个集群节点上。它负责监视和管理该节点上的资源。NodeManager与ResourceManager通信,报告节点的可用资源,并执行ResourceManager的指令来启动或停止容器。

ApplicationMaster

对于每个运行在Yarn上的应用程序,都有一个对应的ApplicationMaster。ApplicationMaster负责协调应用程序执行过程中的所有任务。它与ResourceManager通信,申请和分配资源,并与NodeManager交互,启动和监控容器的执行。ApplicationMaster还负责错误处理和应用程序的状态管理。

Container

在Yarn中,容器是运行应用程序任务的隔离环境。当应用程序向ResourceManager请求资源时,ResourceManager会为应用程序分配容器。容器是一个虚拟的执行环境,具有特定的资源限制,如内存和CPU。每个容器内部运行一个或多个任务,并提供必要的资源。容器之间相互隔离,以确保任务之间的互不干扰。

mapreduce

partitioner(分区)Grouping(分组)

在MapReduce中,Partitioner(分区)和Grouping(分组)是两个相关但不完全相同的概念。

分区(Partitioner)用于将Mapper产生的键值对按照一定规则分配到不同的Reduce任务中。分区的目的是确保相同的键被发送到同一个Reduce任务中进行处理。默认情况下,MapReduce使用哈希函数来进行分区,但也可以自定义分区逻辑。

分组(Grouping)是指在Reduce阶段对键值对进行聚合操作时,将相同键的值进行分组。在Reduce任务中,相同的键会被聚合在一起,以便进行后续的归约操作。默认情况下,MapReduce使用键的equals()方法来进行分组,但也可以通过自定义的比较器来实现其他分组逻辑。

分区和分组在MapReduce中的作用是不同的:

分区是为了在Map阶段将数据按照键进行划分,以便将相同键的数据发送到同一个Reduce任务中进行处理。

分组是为了在Reduce阶段将相同键的数据进行聚合,以便进行后续的归约操作。

  • 9
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值