本文整理匯總了Java中org.apache.hadoop.mapred.TextOutputFormat.setCompressOutput方法的典型用法代碼示例。如果您正苦於以下問題:Java TextOutputFormat.setCompressOutput方法的具體用法?Java TextOutputFormat.setCompressOutput怎麽用?Java TextOutputFormat.setCompressOutput使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類org.apache.hadoop.mapred.TextOutputFormat
的用法示例。
在下文中一共展示了TextOutputFormat.setCompressOutput方法的4個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Java代碼示例。
示例1: getJob
import org.apache.hadoop.mapred.TextOutputFormat; //導入方法依賴的package包/類
/**
* Sets up a job conf for the given job using the given config object. Ensures
* that the correct input format is set, the mapper and and reducer class and
* the input and output keys and value classes along with any other job
* configuration.
*
* @param config
* @return JobConf representing the job to be ran
* @throws IOException
*/
private JobConf getJob(ConfigExtractor config) throws IOException {
JobConf job = new JobConf(config.getConfig(), SliveTest.class);
job.setInputFormat(DummyInputFormat.class);
FileOutputFormat.setOutputPath(job, config.getOutputPath());
job.setMapperClass(SliveMapper.class);
job.setPartitionerClass(SlivePartitioner.class);
job.setReducerClass(SliveReducer.class);
job.setOutputKeyClass(Text.class);
job.setOutputValueClass(Text.class);
job.setOutputFormat(TextOutputFormat.class);
TextOutputFormat.setCompressOutput(job, false);
job.setNumReduceTasks(config.getReducerAmount());
job.setNumMapTasks(config.getMapAmount());
return job;
}
示例2: createJobConf
import org.apache.hadoop.mapred.TextOutputFormat; //導入方法依賴的package包/類
protected JobConf createJobConf() throws Exception {
JobConf jobConf = KafkaETLJob.createJobConf("SimpleKafakETL", _topic, _props, getClass());
jobConf.setMapperClass(SimpleKafkaETLMapper.class);
KafkaETLInputFormat.setInputPaths(jobConf, new Path(_input));
jobConf.setOutputKeyClass(LongWritable.class);
jobConf.setOutputValueClass(Text.class);
jobConf.setOutputFormat(TextOutputFormat.class);
TextOutputFormat.setCompressOutput(jobConf, false);
Path output = new Path(_output);
FileSystem fs = output.getFileSystem(jobConf);
if (fs.exists(output)) fs.delete(output);
TextOutputFormat.setOutputPath(jobConf, output);
jobConf.setNumReduceTasks(0);
return jobConf;
}
示例3: run
import org.apache.hadoop.mapred.TextOutputFormat; //導入方法依賴的package包/類
public int run(String[] args) throws Exception {
// Get current configuration.
Configuration conf = getConf();
// Parse command line arguments.
String inputPaths = args[0];
String outputPath = args[1];
JobConf job = new JobConf(conf);
// Set input path.
if (inputPaths.length() > 0) {
List<String> segmentPaths = Lists.newArrayList(Splitter.on(",")
.split(inputPaths));
for (String segmentPath : segmentPaths) {
LOG.info("Adding input path " + segmentPath);
FileInputFormat.addInputPath(job, new Path(segmentPath));
}
} else {
System.err.println("No input path found.");
return 1;
}
// Set output path.
if (outputPath.length() > 0) {
LOG.info("Setting output path to " + outputPath);
TextOutputFormat.setOutputPath(job, new Path(outputPath));
// Compress output to boost performance.
TextOutputFormat.setCompressOutput(job, true);
TextOutputFormat.getOutputCompressorClass(job, GzipCodec.class);
} else {
System.err.println("No output path found.");
return 1;
}
// Load other classes from same jar as this class.
job.setJarByClass(OutputToText.class);
// Input is Hadoop sequence file format.
job.setInputFormat(SequenceFileInputFormat.class);
// Output is text format for import into database later.
job.setOutputFormat(TextOutputFormat.class);
// Set the output data types.
job.setOutputKeyClass(Text.class);
job.setOutputValueClass(Text.class);
// Use custom mapper class.
job.setMapperClass(OutputToTextMapper.class);
// Use standard reducer class.
job.setReducerClass(IdentityReducer.class);
if (JobClient.runJob(job).isSuccessful())
return 0;
else
return 1;
}
示例4: run
import org.apache.hadoop.mapred.TextOutputFormat; //導入方法依賴的package包/類
public int run(String[] args) throws Exception {
// Get current configuration.
Configuration conf = getConf();
// Parse command line arguments.
String inputPaths = args[0];
String outputPath = args[1];
JobConf job = new JobConf(conf);
// Set input paths.
if (inputPaths.length() > 0) {
List<String> segmentPaths = Lists.newArrayList(Splitter.on(",")
.split(inputPaths));
for (String segmentPath : segmentPaths) {
LOG.info("Adding input path " + segmentPath);
FileInputFormat.addInputPath(job, new Path(segmentPath));
}
} else {
System.err.println("No input path found.");
return 1;
}
// Set output path.
if (outputPath.length() > 0) {
LOG.info("Setting output path to " + outputPath);
TextOutputFormat.setOutputPath(job, new Path(outputPath));
// Compress output to boost performance.
TextOutputFormat.setCompressOutput(job, true);
TextOutputFormat.getOutputCompressorClass(job, GzipCodec.class);
} else {
System.err.println("No output path found.");
return 1;
}
// Load other classes from same jar as this class.
job.setJarByClass(SegmentCombiner.class);
// Input is Hadoop sequence file format.
job.setInputFormat(SequenceFileInputFormat.class);
// Output to text file format.
job.setOutputFormat(TextOutputFormat.class);
// Set the output data types.
job.setOutputKeyClass(Text.class);
job.setOutputValueClass(LongWritable.class);
// Use custom mapper class.
job.setMapperClass(SegmentCombinerMapper.class);
// Use standard reducer class.
job.setReducerClass(LongSumReducer.class);
if (JobClient.runJob(job).isSuccessful())
return 0;
else
return 1;
}