Hadoop 从HDFS加载数据并使用Pig写入HBase时出错
如何将hdfs中mapreduce程序的输出数据加载到hbase中 我尝试运行以下pig命令将数据从hdfs加载到hbase:-Hadoop 从HDFS加载数据并使用Pig写入HBase时出错,hadoop,hbase,apache-pig,hdfs,Hadoop,Hbase,Apache Pig,Hdfs,如何将hdfs中mapreduce程序的输出数据加载到hbase中 我尝试运行以下pig命令将数据从hdfs加载到hbase:- A = LOAD 'hdfs://b**/user/user1/development/hbase/output/part-00000' USING PigStorage('t') as (strdata1:chararray, strdata2:chararray); STORE A INTO 'hbase://mydata' USING org.apache.p
A = LOAD 'hdfs://b**/user/user1/development/hbase/output/part-00000' USING PigStorage('t') as (strdata1:chararray, strdata2:chararray);
STORE A INTO 'hbase://mydata' USING org.apache.pig.backend.hadoop.hbase.HBaseStorage('mycf:strdata2');
其中,hdfs://b**/user/user1/development/hbase/output/part-00000
是映射减少输出mydata
是创建的hbase表名
mycf
是列族名称
我得到以下错误:-
ERROR 2017: Internal error creating job configuration.
org.apache.pig.backend.hadoop.executionengine.mapReduceLayer.JobCreationException: ERROR 2017: Internal error creating job configuration.
at org.apache.pig.backend.hadoop.executionengine.mapReduceLayer.JobControlCompiler.getJob(JobControlCompiler.java:673)
at org.apache.pig.backend.hadoop.executionengine.mapReduceLayer.JobControlCompiler.compile(JobControlCompiler.java:256)
at org.apache.pig.backend.hadoop.executionengine.mapReduceLayer.MapReduceLauncher.launchPig(MapReduceLauncher.java:147)
at org.apache.pig.backend.hadoop.executionengine.HExecutionEngine.execute(HExecutionEngine.java:378)
at org.apache.pig.PigServer.executeCompiledLogicalPlan(PigServer.java:1198)
at org.apache.pig.PigServer.execute(PigServer.java:1190)
at org.apache.pig.PigServer.access$100(PigServer.java:128)
at org.apache.pig.PigServer$Graph.execute(PigServer.java:1517)
at org.apache.pig.PigServer.executeBatchEx(PigServer.java:362)
at org.apache.pig.PigServer.executeBatch(PigServer.java:329)
at org.apache.pig.tools.grunt.GruntParser.executeBatch(GruntParser.java:112)
at org.apache.pig.tools.grunt.GruntParser.parseStopOnError(GruntParser.java:169)
at org.apache.pig.tools.grunt.GruntParser.parseStopOnError(GruntParser.java:141)
at org.apache.pig.tools.grunt.Grunt.exec(Grunt.java:90)
at org.apache.pig.Main.run(Main.java:406)
at org.apache.pig.Main.main(Main.java:107)
Caused by: java.lang.IllegalArgumentException: java.net.URISyntaxException: Relative path in absolute URI: hbase://mydata_logs at org.apache.hadoop.fs.Path.initialize(Path.java:148)
at org.apache.hadoop.fs.Path.<init>(Path.java:71)
at org.apache.hadoop.fs.Path.<init>(Path.java:45)
at org.apache.pig.backend.hadoop.executionengine.mapReduceLayer.JobControlCompiler.getJob(JobControlCompiler.java:476)
... 15 more
Caused by: java.net.URISyntaxException: Relative path in absolute URI: hbase://mydata_logs at java.net.URI.checkPath(URI.java:1787)
at java.net.URI.<init>(URI.java:735)
at org.apache.hadoop.fs.Path.initialize(Path.java:145)
2017年错误:创建作业配置时出现内部错误。
org.apache.pig.backend.hadoop.executionengine.mapReduceLayer.JobCreationException:错误2017:创建作业配置的内部错误。
位于org.apache.pig.backend.hadoop.executionengine.mapReduceLayer.JobControlCompiler.getJob(JobControlCompiler.java:673)
位于org.apache.pig.backend.hadoop.executionengine.mapReduceLayer.JobControlCompiler.compile(JobControlCompiler.java:256)
位于org.apache.pig.backend.hadoop.executionengine.mapReduceLayer.mapreduceLancher.launchPig(mapreduceLancher.java:147)
位于org.apache.pig.backend.hadoop.executionengine.HExecutionEngine.execute(HExecutionEngine.java:378)
位于org.apache.pig.PigServer.executeCompiledLogicalPlan(PigServer.java:1198)
位于org.apache.pig.PigServer.execute(PigServer.java:1190)
org.apache.pig.PigServer.access$100(PigServer.java:128)
位于org.apache.pig.PigServer$Graph.execute(PigServer.java:1517)
位于org.apache.pig.PigServer.executeBatchEx(PigServer.java:362)
位于org.apache.pig.PigServer.executeBatch(PigServer.java:329)
位于org.apache.pig.tools.grunt.GruntParser.executeBatch(GruntParser.java:112)
位于org.apache.pig.tools.grunt.GruntParser.parseStopOnError(GruntParser.java:169)
位于org.apache.pig.tools.grunt.GruntParser.parsetoponerror(GruntParser.java:141)
位于org.apache.pig.tools.grunt.grunt.exec(grunt.java:90)
位于org.apache.pig.Main.run(Main.java:406)
位于org.apache.pig.Main.Main(Main.java:107)
原因:java.lang.IllegalArgumentException:java.net.URISyntaxException:绝对URI中的相对路径:hbase://mydata_logs 位于org.apache.hadoop.fs.Path.initialize(Path.java:148)
在org.apache.hadoop.fs.Path.(Path.java:71)
位于org.apache.hadoop.fs.Path(Path.java:45)
位于org.apache.pig.backend.hadoop.executionengine.mapReduceLayer.JobControlCompiler.getJob(JobControlCompiler.java:476)
... 还有15个
原因:java.net.URISyntaxException:绝对URI中的相对路径:hbase://mydata_logs 位于java.net.URI.checkPath(URI.java:1787)
位于java.net.URI。(URI.java:735)
位于org.apache.hadoop.fs.Path.initialize(Path.java:145)
仅从数据源字符串中删除hbase://架构,如下所示: 使用org.apache.pig.backend.hadoop.hbase.hbastorage('mycf:strdata2')将数据存储到“mydata”中 这对您有帮助吗?您是否按照本文的入门部分设置了env变量?