Get the App
SLTechnology News&Howtos  ›  Servers  › 

How to implement KeyValueTextInputFormat in hadoop

Shulou Source: shulou.com Published: 2022-05-31 14:33:48 09月16日 Update

This article mainly shows you "how to achieve KeyValueTextInputFormat in hadoop", the content is easy to understand, clear, hope to help you solve doubts, the following let the editor lead you to study and learn "how to achieve KeyValueTextInputFormat in hadoop" this article.

Package com.test;import java.io.IOException;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.Text;import org.apache.hadoop.mapreduce.Job;import org.apache.hadoop.mapreduce.Mapper;import org.apache.hadoop.mapreduce.lib.input.FileInputFormat;import org.apache.hadoop.mapreduce.lib.input.KeyValueLineRecordReader Import org.apache.hadoop.mapreduce.lib.input.KeyValueTextInputFormat;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 / * hello jim * hello tim * * final output * hello 1 * jim 1 * hello 1 * tim 1 * / public class WordCountKeyValue extends Configured implements Tool {public static class Map extends Mapper {/ * * key hello * value jim * / public void map (Text key, Text value, Context context) throws IOException, InterruptedException {context.write (key, new IntWritable (1)); context.write (value, new IntWritable (1)) }} public int run (String [] args) throws IOException, InterruptedException, ClassNotFoundException {Configuration conf = this.getConf (); / / specify the KeyValueTextInputFormat separator. The default separator is\ t / / conf.set ("mapreduce.input.keyvaluelinerecordreader.key.value.separator", "\ t"); conf.set (KeyValueLineRecordReader.KEY_VALUE_SEPERATOR, "\ t"); Job job = new Job (conf); job.setJobName (WordCountKeyValue.class.getSimpleName ()); job.setJarByClass (WordCountKeyValue.class) FileInputFormat.addInputPath (job, new Path (args [0])); FileOutputFormat.setOutputPath (job, new Path (args [1])); job.setNumReduceTasks (0); job.setMapperClass (Map.class); job.setInputFormatClass (KeyValueTextInputFormat.class); job.setOutputFormatClass (TextOutputFormat.class); job.setMapOutputKeyClass (Text.class); job.setMapOutputValueClass (IntWritable.class); job.waitForCompletion (true); return job.isSuccessful ()? 0:1 } public static void main (String [] args) throws Exception {int exit = ToolRunner.run (new WordCount (), args); System.exit (exit);}} these are all the contents of the article "how to implement KeyValueTextInputFormat in hadoop". Thank you for reading! I believe we all have a certain understanding, hope to share the content to help you, if you want to learn more knowledge, welcome to follow the industry information channel!

Tags: Content articles learning help easy to understand more organization knowledge editing industry information information channels channels research output Apple Docker Huawei Linux macOS MariaDB Microsoft MySQL NVidia OPPO Reno NVidia Shulou Information Xiaomi Docker OPPO Reno