Package org.apache.wayang.flink.compiler
Class WayangFileOutputFormat<IT>
- java.lang.Object
-
- org.apache.flink.api.common.io.RichOutputFormat<IT>
-
- org.apache.flink.api.common.io.FileOutputFormat<IT>
-
- org.apache.wayang.flink.compiler.WayangFileOutputFormat<IT>
-
- All Implemented Interfaces:
java.io.Serializable,org.apache.flink.api.common.io.CleanupWhenUnsuccessful,org.apache.flink.api.common.io.InitializeOnMaster,org.apache.flink.api.common.io.OutputFormat<IT>
public class WayangFileOutputFormat<IT> extends org.apache.flink.api.common.io.FileOutputFormat<IT> implements org.apache.flink.api.common.io.InitializeOnMaster, org.apache.flink.api.common.io.CleanupWhenUnsuccessfulWrapper forFileOutputFormat- See Also:
- Serialized Form
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description protected classWayangFileOutputFormat.BlockBasedOutputWrites a block info at the end of the blocks.
Current implementation uses only int and not long.
-
Field Summary
Fields Modifier and Type Field Description static java.lang.StringBLOCK_SIZE_PARAMETER_KEYThe config parameter which defines the fixed length of a record.static java.lang.StringFILE_PARAMETER_KEYThe key under which the name of the target path is stored in the configuration.static longNATIVE_BLOCK_SIZEprotected org.apache.flink.core.fs.PathoutputFilePathThe path of the file to be written.protected org.apache.flink.core.fs.FSDataOutputStreamstreamThe stream to which the data is written;
-
Constructor Summary
Constructors Constructor Description WayangFileOutputFormat()WayangFileOutputFormat(java.lang.String path)WayangFileOutputFormat(org.apache.flink.core.fs.Path outputPath)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description voidclose()protected voidcomplementBlockInfo(org.apache.flink.api.common.io.BlockInfo blockInfo)voidconfigure(org.apache.flink.configuration.Configuration parameters)protected org.apache.flink.api.common.io.BlockInfocreateBlockInfo()protected java.lang.StringgetDirectoryFileName(int taskNumber)org.apache.flink.api.common.io.FileOutputFormat.OutputDirectoryModegetOutputDirectoryMode()org.apache.flink.core.fs.PathgetOutputFilePath()org.apache.flink.core.fs.FileSystem.WriteModegetWriteMode()static voidinitDefaultsFromConfiguration(org.apache.flink.configuration.Configuration configuration)Initialize defaults for output format.voidinitializeGlobal(int parallelism)Initialization of the distributed file system if it is used.voidopen(int taskNumber, int numTasks)voidsetOutputDirectoryMode(org.apache.flink.api.common.io.FileOutputFormat.OutputDirectoryMode mode)voidsetOutputFilePath(org.apache.flink.core.fs.Path path)voidsetWriteMode(org.apache.flink.core.fs.FileSystem.WriteMode mode)voidtryCleanupOnError()voidwriteRecord(IT record)-
Methods inherited from class org.apache.flink.api.common.io.RichOutputFormat
getRuntimeContext, setRuntimeContext
-
-
-
-
Field Detail
-
FILE_PARAMETER_KEY
public static final java.lang.String FILE_PARAMETER_KEY
The key under which the name of the target path is stored in the configuration.- See Also:
- Constant Field Values
-
outputFilePath
protected org.apache.flink.core.fs.Path outputFilePath
The path of the file to be written.
-
stream
protected transient org.apache.flink.core.fs.FSDataOutputStream stream
The stream to which the data is written;
-
BLOCK_SIZE_PARAMETER_KEY
public static final java.lang.String BLOCK_SIZE_PARAMETER_KEY
The config parameter which defines the fixed length of a record.- See Also:
- Constant Field Values
-
NATIVE_BLOCK_SIZE
public static final long NATIVE_BLOCK_SIZE
- See Also:
- Constant Field Values
-
-
Method Detail
-
initDefaultsFromConfiguration
public static void initDefaultsFromConfiguration(org.apache.flink.configuration.Configuration configuration)
Initialize defaults for output format. Needs to be a static method because it is configured for local cluster execution, see LocalFlinkMiniCluster.- Parameters:
configuration- The configuration to load defaults from
-
setOutputFilePath
public void setOutputFilePath(org.apache.flink.core.fs.Path path)
- Overrides:
setOutputFilePathin classorg.apache.flink.api.common.io.FileOutputFormat<IT>
-
getOutputFilePath
public org.apache.flink.core.fs.Path getOutputFilePath()
- Overrides:
getOutputFilePathin classorg.apache.flink.api.common.io.FileOutputFormat<IT>
-
setWriteMode
public void setWriteMode(org.apache.flink.core.fs.FileSystem.WriteMode mode)
- Overrides:
setWriteModein classorg.apache.flink.api.common.io.FileOutputFormat<IT>
-
getWriteMode
public org.apache.flink.core.fs.FileSystem.WriteMode getWriteMode()
- Overrides:
getWriteModein classorg.apache.flink.api.common.io.FileOutputFormat<IT>
-
setOutputDirectoryMode
public void setOutputDirectoryMode(org.apache.flink.api.common.io.FileOutputFormat.OutputDirectoryMode mode)
- Overrides:
setOutputDirectoryModein classorg.apache.flink.api.common.io.FileOutputFormat<IT>
-
getOutputDirectoryMode
public org.apache.flink.api.common.io.FileOutputFormat.OutputDirectoryMode getOutputDirectoryMode()
- Overrides:
getOutputDirectoryModein classorg.apache.flink.api.common.io.FileOutputFormat<IT>
-
configure
public void configure(org.apache.flink.configuration.Configuration parameters)
-
open
public void open(int taskNumber, int numTasks) throws java.io.IOException
-
writeRecord
public void writeRecord(IT record) throws java.io.IOException
- Specified by:
writeRecordin interfaceorg.apache.flink.api.common.io.OutputFormat<IT>- Throws:
java.io.IOException
-
getDirectoryFileName
protected java.lang.String getDirectoryFileName(int taskNumber)
- Overrides:
getDirectoryFileNamein classorg.apache.flink.api.common.io.FileOutputFormat<IT>
-
close
public void close() throws java.io.IOException
-
initializeGlobal
public void initializeGlobal(int parallelism) throws java.io.IOExceptionInitialization of the distributed file system if it is used.- Specified by:
initializeGlobalin interfaceorg.apache.flink.api.common.io.InitializeOnMaster- Overrides:
initializeGlobalin classorg.apache.flink.api.common.io.FileOutputFormat<IT>- Parameters:
parallelism- The task parallelism.- Throws:
java.io.IOException
-
tryCleanupOnError
public void tryCleanupOnError()
- Specified by:
tryCleanupOnErrorin interfaceorg.apache.flink.api.common.io.CleanupWhenUnsuccessful- Overrides:
tryCleanupOnErrorin classorg.apache.flink.api.common.io.FileOutputFormat<IT>
-
createBlockInfo
protected org.apache.flink.api.common.io.BlockInfo createBlockInfo()
-
complementBlockInfo
protected void complementBlockInfo(org.apache.flink.api.common.io.BlockInfo blockInfo)
-
-