Class OSSRecoverableWriter

  • All Implemented Interfaces:
    org.apache.flink.core.fs.RecoverableWriter

    public class OSSRecoverableWriter
    extends Object
    implements org.apache.flink.core.fs.RecoverableWriter
    An implementation of the RecoverableWriter against OSS.

    This implementation makes heavy use of MultiPart Uploads in OSS to persist intermediate data as soon as possible.

    • Constructor Detail

      • OSSRecoverableWriter

        public OSSRecoverableWriter​(OSSAccessor ossAccessor,
                                    long ossUploadPartSize,
                                    int streamConcurrentUploads,
                                    Executor executor,
                                    org.apache.flink.util.function.FunctionWithException<File,​org.apache.flink.core.fs.RefCountedFileWithStream,​IOException> cachedFileCreator)
    • Method Detail

      • open

        public org.apache.flink.core.fs.RecoverableFsDataOutputStream open​(org.apache.flink.core.fs.Path path)
                                                                    throws IOException
        Specified by:
        open in interface org.apache.flink.core.fs.RecoverableWriter
        Throws:
        IOException
      • requiresCleanupOfRecoverableState

        public boolean requiresCleanupOfRecoverableState()
        Specified by:
        requiresCleanupOfRecoverableState in interface org.apache.flink.core.fs.RecoverableWriter
      • cleanupRecoverableState

        public boolean cleanupRecoverableState​(org.apache.flink.core.fs.RecoverableWriter.ResumeRecoverable resumable)
                                        throws IOException
        Specified by:
        cleanupRecoverableState in interface org.apache.flink.core.fs.RecoverableWriter
        Throws:
        IOException
      • recoverForCommit

        public org.apache.flink.core.fs.RecoverableFsDataOutputStream.Committer recoverForCommit​(org.apache.flink.core.fs.RecoverableWriter.CommitRecoverable resumable)
                                                                                          throws IOException
        Specified by:
        recoverForCommit in interface org.apache.flink.core.fs.RecoverableWriter
        Throws:
        IOException
      • getCommitRecoverableSerializer

        public org.apache.flink.core.io.SimpleVersionedSerializer<org.apache.flink.core.fs.RecoverableWriter.CommitRecoverable> getCommitRecoverableSerializer()
        Specified by:
        getCommitRecoverableSerializer in interface org.apache.flink.core.fs.RecoverableWriter
      • getResumeRecoverableSerializer

        public org.apache.flink.core.io.SimpleVersionedSerializer<org.apache.flink.core.fs.RecoverableWriter.ResumeRecoverable> getResumeRecoverableSerializer()
        Specified by:
        getResumeRecoverableSerializer in interface org.apache.flink.core.fs.RecoverableWriter
      • supportsResume

        public boolean supportsResume()
        Specified by:
        supportsResume in interface org.apache.flink.core.fs.RecoverableWriter