org.apache.hadoop.hbase.mapred
Class TableReduce<K extends WritableComparable,V extends Writable>

java.lang.Object
  extended by org.apache.hadoop.mapred.MapReduceBase
      extended by org.apache.hadoop.hbase.mapred.TableReduce<K,V>
All Implemented Interfaces:
Closeable, JobConfigurable, Reducer<K,V,Text,MapWritable>
Direct Known Subclasses:
IdentityTableReduce

public abstract class TableReduce<K extends WritableComparable,V extends Writable>
extends MapReduceBase
implements Reducer<K,V,Text,MapWritable>

Write a table, sorting by the input key


Constructor Summary
TableReduce()
           
 
Method Summary
static void initJob(String table, Class<? extends TableReduce> reducer, JobConf job)
          Use this before submitting a TableReduce job.
abstract  void reduce(K key, Iterator<V> values, OutputCollector<Text,MapWritable> output, Reporter reporter)
          Reduces values for a given key.
 
Methods inherited from class org.apache.hadoop.mapred.MapReduceBase
close, configure
 
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.JobConfigurable
configure
 
Methods inherited from interface org.apache.hadoop.io.Closeable
close
 

Constructor Detail

TableReduce

public TableReduce()
Method Detail

initJob

public static void initJob(String table,
                           Class<? extends TableReduce> reducer,
                           JobConf job)
Use this before submitting a TableReduce job. It will appropriately set up the JobConf.

Parameters:
table -
reducer -
job -

reduce

public abstract void reduce(K key,
                            Iterator<V> values,
                            OutputCollector<Text,MapWritable> output,
                            Reporter reporter)
                     throws IOException
Description copied from interface: Reducer
Reduces values for a given key.

The framework calls this method for each <key, (list of values)> pair in the grouped inputs. Output values must be of the same type as input values. Input keys must not be altered. Typically all values are combined into zero or one value.

Output pairs are collected with calls to OutputCollector.collect(WritableComparable,Writable).

Applications can use the Reporter provided to report progress or just indicate that they are alive. In scenarios where the application takes an insignificant amount of time to process individual key/value pairs, this is crucial since the framework might assume that the task has timed-out and kill that task. The other way of avoiding this is to set mapred.task.timeout to a high-enough value (or even zero for no time-outs).

Specified by:
reduce in interface Reducer<K extends WritableComparable,V extends Writable,Text,MapWritable>
Parameters:
key -
values -
output -
reporter -
Throws:
IOException


Copyright © 2006 The Apache Software Foundation