使用TableMapReduceUtil和MultipleOutputFormat时,在Job和JobConf之间挣扎

时间:2012-01-15 15:46:27

标签: java hadoop mapreduce

我正在尝试读取HBase表TableMapReduceUtil并将数据转储到HDFS中(不要问我为什么。它是已经通过但没有任何其他选项)。所以,要实现这一点,我想在减速器键上操作最终文件名(由reducer发出)。

在映射器端,我能够以默认顺序将hbase转换到HDFS。但是为了覆盖reducer输出文件格式(按键的名称),我想出了reducer的 MultipleOutputFormat 类(由于某些界面搞砸而在0.20上没有,在某处读取)而旧的只需要JobConf。但是如果我尝试使用旧的 JobConf 编写代码,我就无法使用HBase 0.90的 TableMapReduceUtil ,只需作业类< / p>

对Hadoop / HBase没有多少帮助。花了一些时间修改现有的MRJObs。 看来我被我的方法困住了。

版本Hadoop-Core-0.20 .; HBase 0.90.1

由于 的Pankaj

1 个答案:

答案 0 :(得分:1)

  

我无法使用HBase 0.90的TableMapReduceUtil,它只接受Job类。

org.apache.hadoop.hbase.mapred.TableMapReduceUtilorg.apache.hadoop.hbase.mapreduce.TableMapReduceUtil个类。第一个将采用JobConf(旧的MR API),第二个采用Job(新的MR API)。使用适当的TableMapReduceUtil类。