簡體   English   中英

在Hbase 1.2.5上編譯Pig 0.16,但是HbaseStorge不起作用

[英]Compile Pig 0.16 on Hbase 1.2.5, But HbaseStorge not work

我從Hbase 1.2.5上的源代碼編譯Apache Pig 0.16,如下所示:

ant jar -Dhadoopversion=23 -Dhbase95.version=1.2.5

現在我要運行豬代碼如下:

A = LOAD 'test.csv' USING PigStorage('\t') as (id:chararray,note:chararray);

STORE A into 'hbase://test_me' using org.apache.pig.backend.hadoop.hbase.HBaseStorage('id:id note:note');

但是當我想運行上面的代碼時,我收到此錯誤:

 pig script failed to validate: java.lang.RuntimeException: could not instantiate 'org.apache.pig.backend.hadoop.hbase.HBaseStorage' with arguments '[id:id note:note]'
at org.apache.pig.parser.QueryParserDriver.parse(QueryParserDriver.java:199)
at org.apache.pig.PigServer$Graph.parseQuery(PigServer.java:1819)
at org.apache.pig.PigServer$Graph.access$000(PigServer.java:1527)
at org.apache.pig.PigServer.parseAndBuild(PigServer.java:460)
at org.apache.pig.PigServer.executeBatch(PigServer.java:485)
at org.apache.pig.PigServer.executeBatch(PigServer.java:471)
at org.apache.pig.tools.grunt.GruntParser.executeBatch(GruntParser.java:172)
at org.apache.pig.tools.grunt.GruntParser.parseStopOnError(GruntParser.java:235)
at org.apache.pig.tools.grunt.GruntParser.parseStopOnError(GruntParser.java:206)
at org.apache.pig.tools.grunt.Grunt.exec(Grunt.java:81)
at org.apache.pig.Main.run(Main.java:630)
at org.apache.pig.Main.main(Main.java:176)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.apache.hadoop.util.RunJar.main(RunJar.java:212)

HBASE需要一個KEY列,您還沒有包含任何列! 在您的情況下,如果ID是鍵列,則應使用以下代碼:

A = LOAD 'test.csv' USING PigStorage('\t') as (id:chararray,note:chararray);
B = FILTER A BY SIZE(id) > 0;
STORE B into 'hbase://test_me' using org.apache.pig.backend.hadoop.hbase.HBaseStorage('note:note');

注意:Pig將自動選擇ID列作為鍵。

另外,我希望您的hbase表中有家人的“ 注釋

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM