Hadoop :计数器
一、 实验目的
- 基于 MapReduce 思想,编写计数器程序。
- 理解计数器的逻辑和处理场景。
二、 实验要求 - 能够理解 MapReduce 编程思想
- 会编写 MapReduce 版本计数器程序
- 能执行计数器程序和分析执行过程。
三、 实验背景 - MapReduce 计数器是什么?
计数器是用来记录 job 的执行进度和状态的。它的作用可以理解为日志。我们可以
在程序的某个位置插入计数器,记录数据或者进度的变化情况。 - MapReduce 计数器能做什么?
MapReduce 计数器(Counter)为我们提供一个窗口,用于观察 MapReduce Job 运
行期的各种细节数据。对 MapReduce 性能调优很有帮助,MapReduce 性能优化的评估大
部分都是基于这些 Counter 的数值表现出来的。
在许多情况下,一个用户需要了解待分析的数据,尽管这并非所要执行的分析任务
的核心内容。以统计数据集中无效记录数目的任务为例,如果发现无效记录的比例 相
当高,那么就需要认真思考为何存在如此多无效记录。是所采用的检测程序存在 缺陷,
还是数据集质量确实很低,包含大量无效记录?如果确定是数据集的质量问 题,则可
能需要扩大数据集的规模,以增大有效记录的比例,从而进行有意义的分析。计数器是一种收集作业统计信息的有效手段,用于质量控制或应用级统计。计数器
还可辅助诊断系统故障。如果需要将日志信息传输到 map 或 reduce 任务,更好的方法
通常是尝试传输计数器值以监测某一特定事件是否发生。对于大型分布式作业而言&