@Override
  protected void initialize(JobContext context) throws IOException {
    // Do we have to worry about mis-matches between the Configuration from setConf and the one
    // in this context?
    TableName tableName = TableName.valueOf(conf.get(INPUT_TABLE));
    try {
      initializeTable(ConnectionFactory.createConnection(new Configuration(conf)), tableName);
    } catch (Exception e) {
      LOG.error(StringUtils.stringifyException(e));
    }
  }
Sets up a {@link Scan} instance, applying settings from the configuration property constants
defined in {@code TableInputFormat}. This allows specifying things such as:
<ul>
<li>start and stop rows</li>
<li>column qualifiers or families</li>
<li>timestamps or timerange</li>
<li>scanner caching and batch size</li>
</ul>
hbase-mapreduce/src/main/java/org/apache/hadoop/hbase/mapreduce/TableInputFormat.java