Mapreduce实验报告

实验目的:
MapReduce原理及操作;
编程调试wordCount程序;
生成jar包,在虚拟机上运行
1、MapReduce原理
Ma和 Reduce,当向 MapReduce框架提交一个计算作业时,它会首先把计算作业拆分成若干个Map任务,然后分配到不同的节点上去执行,每一个MaD任务处理输入数据中的一部分,当Ma0任务完成后,它会生成一些中间文件,这些中间文件将会作为 Reduce任务的输入数据。 Reduce任务的主要目标就是把前面干个Ma的输出汇到一起并输出。
2、Map过程
每个输入分片会让一个map任务来处理,默认情况下,以HDFs的个块的大小(默认为640)为一个分片,当然我们也可以设置块的大小。mao轴出的结果会暂且放在一个环形内存缓冲区中(该缓冲区的大小默认为100,由io.sort.mb属性控制),当该缓冲区快要溢出时(默认为缓冲区大小的80%,由io.sort. spill percent属性控朝),会在本地文件系统中创建一个益出文件,将读缓冲区中的数据写入这个文件。

3、Reduce过程
Reduce会接收到不同map任务传来的数据,并且每个map博来的数据都是有序的。如果 reduce端接受的数据量相当小,则直接存储在内存中(缓冲区大小由 marred.job. shuffle. merge. percent属性控制,表示用作此用途的堆空间的百分比),如果数据量超过了该缓冲区的一定大小比例(由 marred.job. shuffle. merge. percent决定),则对数据合并后溢写到磁盘中。
4、运行wordcount程序
WordCountMapper类
WordCountReduce类
WordCountDriver类

  • 2
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值