我是MapReduce的新手。我看到許多在MapReduce中編寫的代碼並聲明瞭靜態變量。在mapreduce中使用static關鍵字在Mapper類中
例子:
public class Map extends Mapper<Object, Text, Text, IntWritable>{
private static IntWritable one = new IntWritable(1);
private Text word = new Text();
public void map(Object key, Text value, Context context){
//Mapper code
}
}
}
但是有一個疑問,我知道每一個地圖的任務是在不同的JVM實例化。那麼Mapper實例如何共享靜態變量?如果他們不能共享,那麼靜態變量的用法是什麼?
[this]的可能重複(http://stackoverflow.com/questions/24280415/hadoop-map-reduce-task-and-static-variable)。 – YoungHobbit