Class HdfsSequentialTextSink

  • All Implemented Interfaces:
    java.lang.AutoCloseable, org.apache.pulsar.io.core.Sink<java.lang.String>

    public class HdfsSequentialTextSink
    extends HdfsAbstractSequenceFileSink<java.lang.Long,​java.lang.String,​org.apache.hadoop.io.LongWritable,​org.apache.hadoop.io.Text>
    This Sink should be used when the records are originating from a sequential source, and we want to retain the record sequence.This class uses the record's sequence id as the sequence id in the HDFS Sequence File if it is available, if not a sequence id is auto-generated for each new record.
    • Constructor Detail

      • HdfsSequentialTextSink

        public HdfsSequentialTextSink()
    • Method Detail

      • getWriter

        public org.apache.hadoop.io.SequenceFile.Writer getWriter()
                                                           throws java.io.IOException
        Overrides:
        getWriter in class HdfsAbstractSequenceFileSink<java.lang.Long,​java.lang.String,​org.apache.hadoop.io.LongWritable,​org.apache.hadoop.io.Text>
        Throws:
        java.io.IOException
      • getOptions

        protected java.util.List<org.apache.hadoop.io.SequenceFile.Writer.Option> getOptions()
                                                                                      throws java.lang.IllegalArgumentException,
                                                                                             java.io.IOException
        Overrides:
        getOptions in class HdfsAbstractSequenceFileSink<java.lang.Long,​java.lang.String,​org.apache.hadoop.io.LongWritable,​org.apache.hadoop.io.Text>
        Throws:
        java.lang.IllegalArgumentException
        java.io.IOException
      • extractKeyValue

        public org.apache.pulsar.io.core.KeyValue<java.lang.Long,​java.lang.String> extractKeyValue​(org.apache.pulsar.functions.api.Record<java.lang.String> record)
        Specified by:
        extractKeyValue in class HdfsAbstractSink<java.lang.Long,​java.lang.String>
      • convert

        public org.apache.pulsar.io.core.KeyValue<org.apache.hadoop.io.LongWritable,​org.apache.hadoop.io.Text> convert​(org.apache.pulsar.io.core.KeyValue<java.lang.Long,​java.lang.String> kv)
        Specified by:
        convert in class HdfsAbstractSequenceFileSink<java.lang.Long,​java.lang.String,​org.apache.hadoop.io.LongWritable,​org.apache.hadoop.io.Text>