NLineInputFormat的示例分析

  介绍

小编给大家分享一下NLineInputFormat的示例分析,希望大家阅读完这篇文章之后都有所收获、下面让我们一起去探讨吧!

package  com.test;   import  java.io.IOException;   import  java.util.Iterator;   import  java.util.StringTokenizer;   import  org.apache.hadoop.conf.Configuration;   import  org.apache.hadoop.conf.Configured;   import  org.apache.hadoop.fs.Path;   import  org.apache.hadoop.io.IntWritable;   import  org.apache.hadoop.io.LongWritable;   import  org.apache.hadoop.io.Text;   import  org.apache.hadoop.mapreduce.Job;   import  org.apache.hadoop.mapreduce.Mapper;   import  org.apache.hadoop.mapreduce.Reducer;   import  org.apache.hadoop.mapreduce.lib.input.FileInputFormat;   import  org.apache.hadoop.mapreduce.lib.input.NLineInputFormat;   import  org.apache.hadoop.mapreduce.lib.output.FileOutputFormat;   import  org.apache.hadoop.mapreduce.lib.output.TextOutputFormat;   import  org.apache.hadoop.util.Tool;   import  org.apache.hadoop.util.ToolRunner;/* *   ,* TextInputFormat处理的数据来自于一个InputSplit.InputSplit根据块大小划分。   ,*由于每条记录有长有短,所以,每个地图任务处理的记录数都不一样   ,* NLineInputFormat决定每个地图处理记录数是相同的   ,*/public  class  WordCountNL  extends  Configured  implements  Tool  {   ,   ,public  static  class  Map  extends  Mapper, {   public 才能;void 地图(LongWritable 关键,Text 价值,Context 上下文),throws  IOException, InterruptedException  {   ,,String  line =, value.toString ();   ,,   ,,StringTokenizer  st =, new  StringTokenizer(线);   ,,,(st.hasMoreElements ()), {   ,,,context.write (new 文本(st.nextElement () .toString ()),, new  IntWritable (1));   ,,}   ,,}   ,}   ,   ,public  static  class  Combiner  extends  Reducer<文本,IntWritable,,文本,IntWritable>, {   public 才能;void 减少(Text 关键,Iterable,价值观,Context 上下文),throws  IOException, InterruptedException  {   ,,int  count =, 0;   ,,Iterator, {   public 才能;void 减少(Text 关键,Iterable,价值观,Context 上下文),throws  IOException, InterruptedException  {   ,,int  count =, 0;   ,,Iterator

看完了这篇文章,相信你对“NLineInputFormat的示例分析”有了一定的了解,如果想了解更多相关知识,欢迎关注行业资讯频道,感谢各位的阅读!

NLineInputFormat的示例分析