@InterfaceAudience.Public @InterfaceStability.Stable public abstract class OutputFormat<K,V> extends Object
OutputFormat
describes the output-specification for a
Map-Reduce job.
The Map-Reduce framework relies on the OutputFormat
of the
job to:
RecordWriter
implementation to be used to write out
the output files of the job. Output files are stored in a
FileSystem
.
RecordWriter
Constructor and Description |
---|
OutputFormat() |
Modifier and Type | Method and Description |
---|---|
abstract void |
checkOutputSpecs(JobContext context)
Check for validity of the output-specification for the job.
|
abstract OutputCommitter |
getOutputCommitter(TaskAttemptContext context)
Get the output committer for this output format.
|
abstract RecordWriter<K,V> |
getRecordWriter(TaskAttemptContext context)
Get the
RecordWriter for the given task. |
public abstract RecordWriter<K,V> getRecordWriter(TaskAttemptContext context) throws IOException, InterruptedException
RecordWriter
for the given task.context
- the information about the current task.RecordWriter
to write the output for the job.IOException
InterruptedException
public abstract void checkOutputSpecs(JobContext context) throws IOException, InterruptedException
This is to validate the output specification for the job when it is a job is submitted. Typically checks that it does not already exist, throwing an exception when it already exists, so that output is not overwritten.
Implementations which write to filesystems which support delegation tokens usually collect the tokens for the destination path(s) and attach them to the job context's JobConf.context
- information about the jobIOException
- when output should not be attemptedInterruptedException
public abstract OutputCommitter getOutputCommitter(TaskAttemptContext context) throws IOException, InterruptedException
context
- the task contextIOException
InterruptedException
Copyright © 2021 Apache Software Foundation. All rights reserved.