在Reducer之后生成HFileOutputFormat

时间:2014-01-29 16:20:33

标签: java hadoop hbase

我编写了一个MapReduce-Job,它需要Mapper和Reducer部分。在Reducer(生成Puts)之后,我想将结果保存到HFileOutputFormat中以进行增量加载。

这是我的问题,因为HFileOutputFormat还需要一个Reducer来生成HFile。据我所知,不可能有两个Reducers顺序。

在Reducer中,我将生成的Puts直接写入上下文并获得以下异常:

java.lang.ClassCastException: org.apache.hadoop.hbase.client.Put cannot be cast to org.apache.hadoop.hbase.KeyValue

然后我尝试构建一个ChainPeducer,它将Puts传递给另一个Mapper。这些Mapper只将给定的Puts写回上下文。所以现在应该可以为HFile执行Reducer。但后来我得到了这些例外:

java.lang.RuntimeException: java.lang.NoSuchMethodException: org.apache.hadoop.hbase.client.Put<init>()

我该怎么办?

提前致谢!

托比

0 个答案:

没有答案