Class HdfsSequentialTextSink
java.lang.Object
org.apache.pulsar.io.hdfs3.AbstractHdfsConnector
org.apache.pulsar.io.hdfs3.sink.HdfsAbstractSink<K,V>
org.apache.pulsar.io.hdfs3.sink.seq.HdfsAbstractSequenceFileSink<Long,String,org.apache.hadoop.io.LongWritable,org.apache.hadoop.io.Text>
org.apache.pulsar.io.hdfs3.sink.seq.HdfsSequentialTextSink
- All Implemented Interfaces:
AutoCloseable,Sink<String>
public class HdfsSequentialTextSink
extends HdfsAbstractSequenceFileSink<Long,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.
-
Field Summary
Fields inherited from class org.apache.pulsar.io.hdfs3.sink.seq.HdfsAbstractSequenceFileSink
hdfsStream, writerFields inherited from class org.apache.pulsar.io.hdfs3.sink.HdfsAbstractSink
hdfsSinkConfig, syncThread, unackedRecordsFields inherited from class org.apache.pulsar.io.hdfs3.AbstractHdfsConnector
compressionCodecFactory, connectorConfig, hdfsResources -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionKeyValue<org.apache.hadoop.io.LongWritable,org.apache.hadoop.io.Text> extractKeyValue(org.apache.pulsar.functions.api.Record<String> record) protected List<org.apache.hadoop.io.SequenceFile.Writer.Option>org.apache.hadoop.io.SequenceFile.WriterMethods inherited from class org.apache.pulsar.io.hdfs3.sink.seq.HdfsAbstractSequenceFileSink
close, createWriter, writeMethods inherited from class org.apache.pulsar.io.hdfs3.sink.HdfsAbstractSink
connectToHdfs, getHdfsStream, getOutputStreamBuilder, getPath, launchSyncThread, openMethods inherited from class org.apache.pulsar.io.hdfs3.AbstractHdfsConnector
checkHdfsUriForTimeout, getCompressionCodec, getCompressionCodecFactory, getConfiguration, getEncoding, getFileSystem, getFileSystem, getFileSystemAsUser, getUserGroupInformation, resetHDFSResources
-
Constructor Details
-
HdfsSequentialTextSink
public HdfsSequentialTextSink()
-
-
Method Details
-
getWriter
- Overrides:
getWriterin classHdfsAbstractSequenceFileSink<Long,String, org.apache.hadoop.io.LongWritable, org.apache.hadoop.io.Text> - Throws:
IOException
-
getOptions
protected List<org.apache.hadoop.io.SequenceFile.Writer.Option> getOptions() throws IllegalArgumentException, IOException- Overrides:
getOptionsin classHdfsAbstractSequenceFileSink<Long,String, org.apache.hadoop.io.LongWritable, org.apache.hadoop.io.Text> - Throws:
IllegalArgumentExceptionIOException
-
extractKeyValue
- Specified by:
extractKeyValuein classHdfsAbstractSink<Long,String>
-
convert
public KeyValue<org.apache.hadoop.io.LongWritable,org.apache.hadoop.io.Text> convert(KeyValue<Long, String> kv) - Specified by:
convertin classHdfsAbstractSequenceFileSink<Long,String, org.apache.hadoop.io.LongWritable, org.apache.hadoop.io.Text>
-