Home | About | Sematext search-lucene.com search-hadoop.com
NEW: Monitor These Apps!
elasticsearch, apache solr, apache hbase, hadoop, redis, casssandra, amazon cloudwatch, mysql, memcached, apache kafka, apache zookeeper, apache storm, ubuntu, centOS, red hat, debian, puppet labs, java, senseiDB
 Search Hadoop and all its subprojects:

Switch to Threaded View
MapReduce >> mail # user >> Writing multiple tables from reducer


Copy link to this message
-
Re: Writing multiple tables from reducer
I have written a blog on this a while ago where I was writing to multiple
tables from my mapper class. You can look into it at
http://bigdatabuzz.wordpress.com/2012/04/24/how-to-write-to-multiple-hbase-tables-in-a-mapreduce-job/

Key things are,
a) job.setOutputFormatClass (MultiTableOutputFormat.class);
b) In your reducer , you would stick with the if else to write to the
corresponding HBase tables.

Thanks
Ravi Magham
On Wed, Aug 28, 2013 at 3:50 AM, jamal sasha <[EMAIL PROTECTED]> wrote:

> Hi,
>   I am new to hbase and am trying to achieve the following.
>
> I am reading data from hdfs in mapper and parsing it..
>
> So, in reducer I want my output to write to hbase instead of hdfs
> But here is the thing.
>
> public static class MyTableReducer extends TableReducer<Text, Text,
> ImmutableBytesWritable>  {
>
>  public void reduce(Text key, Iterable<Text> values, Context context)
> throws IOException, InterruptedException {
>  int type = getType(values.toString());
> if (type == 1) // put data to table 1
>  if (type==2) // put data to table 2
>
>
>    }
>  }
>
> How do I do this?
> Thanks
>
NEW: Monitor These Apps!
elasticsearch, apache solr, apache hbase, hadoop, redis, casssandra, amazon cloudwatch, mysql, memcached, apache kafka, apache zookeeper, apache storm, ubuntu, centOS, red hat, debian, puppet labs, java, senseiDB