Hadoop MapReduce 入门

发布日期:2026-07-03 21:12:04   来源 : 杭州电子商务研究院    浏览量 :7
杭州电子商务研究院 发布日期:2026-07-03 21:12:04  
7

介绍

分布式系统因其处理大数据的效率而广受欢迎。利用计算集群处理大量数据的方法有很多种。Hadoop 采用分而治之的模式。它将大问题分解为小问题,将任务分配到各个节点,然后汇总各个结果以形成最终输出。

Hadoop 中执行处理的组件是MapReduce,这是一个旨在在分布式集群上并行处理大量数据的软件框架。

MapReduce 的工作原理是将输入数据分割成更小的块,并将其提供给称为映射器(mapper) 的处理组件。然后,映射器将其处理后的输出传递给Reducer (reducer),后者产生最终输出。

本指南假设您对整个 Hadoop 架构有基本的了解。Hadoop 的入门指南可在此处找到。

MapReduce 架构与功能

为了实现其功能,该架构包含两个以控制器-操作员方式设计的主要处理元件。它们是:

1. Job Tracker:控制器。负责作业调度并向驻留在每个节点中的运算符组件发出执行命令。它还负责重新执行失败的任务。

2. 任务跟踪器:操作员。存在于每个节点上,执行指令并将反馈传回控制器组件。

如上所示,MapReduce 的运行分为两个阶段:map 阶段和 Reduce 阶段。

地图阶段

这是在 Hadoop 系统中执行处理任务时发生的第一个阶段。该框架以<key,value>对的形式理解数据,因此必须对输入数据进行预处理以匹配此预期格式。输入数据集通过称为逻辑分割的方法分解为较小的块

然后将逻辑块分配给可用的映射器,映射器将每个输入记录处理为 <key,value> 对。此阶段的输出被视为中间输出。

输出可以经过中间过程,其中映射器输出数据在输入到 Reducer 之前会经过进一步处理。这些过程包括合并、排序、分区和混洗。有关这些过程的重要性的更多信息,请参见此处。这些过程的中间数据存储在相应处理节点内的本地文件系统中。

减少阶段

每个作业的 Reducer 数量是可配置的,可以在mapred-site.xml配置文件中设置。

处理阶段的 Reducer 获取 Mapper 阶段的输出并处理数据以生成最终输出,该输出由称为记录写入器的函数记录在 Hadoop 分布式文件系统 (HDFS) 内的输出文件中。

实例

结论

现在,您已经了解了 MapReduce 编程范式以及它在分布式计算中的实现方式,以促进大型数据集的分布式并行处理。主要方法是分而治之。这项技能对于组织中担任大数据工程师或分布式计算架构师角色的任何开发人员都至关重要。

为了进一步理解本指南,请进一步了解分布式和并行计算,尤其是如何在分布式集群中协商和分配资源以处理处理和存储。在 Hadoop 中,资源协商和分配由YARN执行。可以在此处找到 Hadoop 的 YARN 入门指南

以上内容来自杭州电子商务研究院推送
关注
关于我们
热门推荐
合作伙伴
免责声明:本站部分资讯来源于网络,如有侵权请及时联系客服,我们将尽快处理
Copyright © 2025-2027 ToB产业网址导航 公安备案 浙公网安备33010602013138号 浙ICP备16025413号-9
支持 反馈 关注 数据