MapReduce setup map(reduce) cleanup示例

本文介绍了MapReduce中setup、map和cleanup三个关键方法的用途。setup方法在每个map任务开始时执行,常用于准备工作;map方法执行实际的数据处理;cleanup方法在map任务结束时执行,用于收尾工作。代码示例展示了如何从每个电影文件中取出前20条数据。注意,多个map任务可能会导致取出超过20条数据。
摘要由CSDN通过智能技术生成

继承Mapper类可以重写三个方法 

1.setup

  每一个map在创建时执行的方法,也就是说该方法只执行一次,一般用来做一些准备工作,如获得文件名等

2.map

  真正执行分类操作的方法。

3.cleanup

在map完成任务销毁时执行的方法,也只执行一次,一般用来做一些收尾工作

这三个方法都可以像reduce传送数据

代码    取每个电影二十条数据(排序前面写过了,就不写了):

要注意map的个数,如果有多个map,会取出超过二十条数据

package nuc.edu.ls;

import java.io.DataInput;
import java.io.DataOutput;
import java.io.IOException;

import org.apache.hadoop.io.Writable;
import org.apache.hadoop.io.WritableComparable;

public class MovieBean implements WritableComparable<MovieBean>{
    private String movie;
    private String rate;
    private String timeStamp;
    private String uid;
    
	public String getMovie() {
		return movie;
	}
	public void setMovie(String movie) {
		this.movie = movie;
	}
	public String getRate() {
		return rate;
	}
	public void setRate(String rate) {
		this.rate = rate;
	}
	public String getTimeStamp() {
		return timeStamp;
	}
	public void setTimeStamp(String timeStamp) {
		this.timeStamp = timeStamp;
	}
	public String getUid() {
		return uid;
	}
	public void setUid(String uid) {
		this.uid = uid;
	}
	
	public void set(String movie, String rate, String timeStamp, String uid) {
		this.movie = movie;
		this.rate &#
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值