org.apache.accumulo.core.client.mapred
Class AbstractInputFormat.AbstractRecordReader<K,V>

java.lang.Object
  extended by org.apache.accumulo.core.client.mapred.AbstractInputFormat.AbstractRecordReader<K,V>
All Implemented Interfaces:
org.apache.hadoop.mapred.RecordReader<K,V>
Direct Known Subclasses:
InputFormatBase.RecordReaderBase
Enclosing class:
AbstractInputFormat<K,V>

protected abstract static class AbstractInputFormat.AbstractRecordReader<K,V>
extends Object
implements org.apache.hadoop.mapred.RecordReader<K,V>

An abstract base class to be used to create RecordReader instances that convert from Accumulo Key/Value pairs to the user's K/V types. Subclasses must implement RecordReader.next(Object, Object) to update key and value, and also to update the following variables:


Field Summary
protected  Key currentKey
           
protected  long numKeysRead
           
protected  Iterator<Map.Entry<Key,Value>> scannerIterator
           
protected  RangeInputSplit split
           
 
Constructor Summary
protected AbstractInputFormat.AbstractRecordReader()
           
 
Method Summary
 void close()
           
 long getPos()
           
 float getProgress()
           
 void initialize(org.apache.hadoop.mapred.InputSplit inSplit, org.apache.hadoop.mapred.JobConf job)
          Initialize a scanner over the given input split using this task attempt configuration.
protected abstract  void setupIterators(org.apache.hadoop.mapred.JobConf job, Scanner scanner, String tableName, RangeInputSplit split)
          Configures the iterators on a scanner for the given table name.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface org.apache.hadoop.mapred.RecordReader
createKey, createValue, next
 

Field Detail

numKeysRead

protected long numKeysRead

scannerIterator

protected Iterator<Map.Entry<Key,Value>> scannerIterator

split

protected RangeInputSplit split

currentKey

protected Key currentKey
Constructor Detail

AbstractInputFormat.AbstractRecordReader

protected AbstractInputFormat.AbstractRecordReader()
Method Detail

setupIterators

protected abstract void setupIterators(org.apache.hadoop.mapred.JobConf job,
                                       Scanner scanner,
                                       String tableName,
                                       RangeInputSplit split)
Configures the iterators on a scanner for the given table name.

Parameters:
job - the Hadoop job configuration
scanner - the scanner for which to configure the iterators
tableName - the table name for which the scanner is configured
Since:
1.6.0

initialize

public void initialize(org.apache.hadoop.mapred.InputSplit inSplit,
                       org.apache.hadoop.mapred.JobConf job)
                throws IOException
Initialize a scanner over the given input split using this task attempt configuration.

Throws:
IOException

close

public void close()
Specified by:
close in interface org.apache.hadoop.mapred.RecordReader<K,V>

getPos

public long getPos()
            throws IOException
Specified by:
getPos in interface org.apache.hadoop.mapred.RecordReader<K,V>
Throws:
IOException

getProgress

public float getProgress()
                  throws IOException
Specified by:
getProgress in interface org.apache.hadoop.mapred.RecordReader<K,V>
Throws:
IOException


Copyright © 2015 Apache Accumulo Project. All rights reserved.