Class S3SelectLineRecordReader

java.lang.Object
io.trino.plugin.hive.s3select.S3SelectLineRecordReader
All Implemented Interfaces:
Closeable, AutoCloseable, org.apache.hadoop.mapred.RecordReader<org.apache.hadoop.io.LongWritable,org.apache.hadoop.io.Text>
Direct Known Subclasses:
S3SelectCsvRecordReader, S3SelectJsonRecordReader

@ThreadSafe public abstract class S3SelectLineRecordReader extends Object implements org.apache.hadoop.mapred.RecordReader<org.apache.hadoop.io.LongWritable,org.apache.hadoop.io.Text>
  • Constructor Details

    • S3SelectLineRecordReader

      public S3SelectLineRecordReader(org.apache.hadoop.conf.Configuration configuration, org.apache.hadoop.fs.Path path, long start, long length, Properties schema, String ionSqlQuery, TrinoS3ClientFactory s3ClientFactory)
  • Method Details

    • buildInputSerialization

      protected abstract com.amazonaws.services.s3.model.InputSerialization buildInputSerialization()
    • buildOutputSerialization

      protected abstract com.amazonaws.services.s3.model.OutputSerialization buildOutputSerialization()
    • shouldEnableScanRange

      protected abstract boolean shouldEnableScanRange()
    • getSchema

      protected Properties getSchema()
    • getCompressionType

      protected com.amazonaws.services.s3.model.CompressionType getCompressionType()
    • buildSelectObjectRequest

      public com.amazonaws.services.s3.model.SelectObjectContentRequest buildSelectObjectRequest(String query, org.apache.hadoop.fs.Path path)
    • getCompressionType

      protected com.amazonaws.services.s3.model.CompressionType getCompressionType(org.apache.hadoop.fs.Path path)
    • next

      public boolean next(org.apache.hadoop.io.LongWritable key, org.apache.hadoop.io.Text value) throws IOException
      Specified by:
      next in interface org.apache.hadoop.mapred.RecordReader<org.apache.hadoop.io.LongWritable,org.apache.hadoop.io.Text>
      Throws:
      IOException
    • createKey

      public org.apache.hadoop.io.LongWritable createKey()
      Specified by:
      createKey in interface org.apache.hadoop.mapred.RecordReader<org.apache.hadoop.io.LongWritable,org.apache.hadoop.io.Text>
    • createValue

      public org.apache.hadoop.io.Text createValue()
      Specified by:
      createValue in interface org.apache.hadoop.mapred.RecordReader<org.apache.hadoop.io.LongWritable,org.apache.hadoop.io.Text>
    • getPos

      public long getPos()
      Specified by:
      getPos in interface org.apache.hadoop.mapred.RecordReader<org.apache.hadoop.io.LongWritable,org.apache.hadoop.io.Text>
    • close

      public void close() throws IOException
      Specified by:
      close in interface AutoCloseable
      Specified by:
      close in interface Closeable
      Specified by:
      close in interface org.apache.hadoop.mapred.RecordReader<org.apache.hadoop.io.LongWritable,org.apache.hadoop.io.Text>
      Throws:
      IOException
    • getProgress

      public float getProgress()
      Specified by:
      getProgress in interface org.apache.hadoop.mapred.RecordReader<org.apache.hadoop.io.LongWritable,org.apache.hadoop.io.Text>
    • getStart

      protected long getStart()
    • getEnd

      protected long getEnd()
    • getLineDelimiter

      protected String getLineDelimiter()