目前我正在评估apachecrunch。我遵循了一个简单的wordcount mapreduce作业示例:之后我尝试将结果保存到一个独立的hbase中。hbase正在运行(使用jps和hbase shell检查),如下所述:http://hbase.apache.org/book/quickstart.html
现在我采用这个例子来编写hbase:
Pipeline pipeline = new MRPipeline(WordCount.class,getConf());
PCollection<String> lines = pipeline.readTextFile(inputPath);
PTable<String,Long> counts = noStopWords.count();
pipeline.write(counts, new HBaseTarget("wordCountOutTable");
PipelineResult result = pipeline.done();
我得到一个例外:“exception:java.lang.illegalargumentexception:hbasetarget仅支持put和delete“
有什么线索吗?
1条答案
按热度按时间am46iovg1#
ptable可能是pcollection,但hbasetarget只能处理put或delete对象。因此,必须将ptable转换为pcollection,其中集合的每个元素都是put或delete。看一看这些关键的例子。
转换示例如下所示: