在分布式Hadoop集群中,每个Map /
Reduce任务都在其自己的单独JVM中运行。因此,无法在运行在不同JVM(甚至不同节点)上的不同类实例之间共享静态变量。
但是,如果要在任务之间共享一些不可变的数据,则可以使用Configuration类:
// driver preConfiguration config = Configuration.create();config.setLong("foo.bar.somelong",1337);...// mapper prepublic class SomeMapper ... { private long someLong = 0; public void setup(Context context) { Configuration config = context.getConfiguration(); someLong = config.getLong("foo.bar.somelong"); }}


