Har*_*rsh 4 java hadoop mapreduce
我在新的Hadoop版本中遇到了MultithreadedMapper类,文档说它可以用来代替传统的(单线程)映射器类.但是我没有遇到任何使用这个新类的演示示例.另外,我会更高兴使用setNumberOfThreads()方法.使用此代码的任何代码示例?
提前致谢
您的小代码片段:
Configuration conf = new Configuration();
Job job = new Job(conf);
job.setMapperClass(MultithreadedMapper.class);
conf.set("mapred.map.multithreadedrunner.class", WebGraphMapper.class.getCanonicalName());
conf.set("mapred.map.multithreadedrunner.threads", "8");
job.setJarByClass(WebGraphMapper.class);
// rest ommitted
job.waitForCompletion(true);
Run Code Online (Sandbox Code Playgroud)
我认为这是非常自我解释的.您正在使用多线程映射器作为主类,然后配置它必须运行的类(您的真实映射器).还有这些方便的静态方法可以为您完成此配置.通话可能如下所示:
MultithreadedMapper.setMapperClass(job, WebGraphMapper.class);
MultithreadedMapper.setNumberOfThreads(job, 8);
Run Code Online (Sandbox Code Playgroud)