hadoop pig:无法加载sqooped数据

Posted

技术标签:

【中文标题】hadoop pig:无法加载sqooped数据【英文标题】:hadoop pig: unable to load sqooped data 【发布时间】:2013-06-20 13:41:46 【问题描述】:

我正在将一个非常简单的 mysql 表(2 列,'key' 和 'label')sqooping 到 hdfs。当我查看数据时,这似乎工作正常:

hadoop fs -cat /path/to/my/dir/part-m-00001

看起来很像这样:

93aa3fxxxxxxxxxxa86cef  somelabel
84be7cxxxxxxxxxxaef348  anotherlabel
6a0767xxxxxxxxxx70dead  somelabel
464e9xxxxxxxxxxx5e65d5  somelabel

但是,当我想用​​ Pig 加载该数据时

apps = load '/path/to/my/dir/' USING PigStorage('\t') AS (app_key: chararray, label: chararray);

还有“插图应用程序”;我收到以下错误:

猪栈跟踪

错误 2997:遇到 IOException。 ExecException : 无法设置加载功能。

java.io.IOException: ExecException : 无法设置加载功能。 在 org.apache.pig.PigServer.getExamples(PigServer.java:1204) 在 org.apache.pig.tools.grunt.GruntParser.processIllustrate(GruntParser.java:725) 在 org.apache.pig.tools.pigscript.parser.PigScriptParser.Illustrate(PigScriptParser.java:591) 在 org.apache.pig.tools.pigscript.parser.PigScriptParser.parse(PigScriptParser.java:306) 在 org.apache.pig.tools.grunt.GruntParser.parseStopOnError(GruntParser.java:189) 在 org.apache.pig.tools.grunt.GruntParser.parseStopOnError(GruntParser.java:165) 在 org.apache.pig.tools.grunt.Grunt.run(Grunt.java:69) 在 org.apache.pig.Main.run(Main.java:490) 在 org.apache.pig.Main.main(Main.java:111) 在 sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 在 sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) 在 sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) 在 java.lang.reflect.Method.invoke(Method.java:597) 在 org.apache.hadoop.util.RunJar.main(RunJar.java:186)

知道为什么会这样吗?

【问题讨论】:

【参考方案1】:

没关系,我犯了一个愚蠢的错误,数据的路径不正确。

留下这个问题并回答,以防其他人遇到这个信息量不大的错误消息,因为我坚持自己的愚蠢;)

【讨论】:

以上是关于hadoop pig:无法加载sqooped数据的主要内容,如果未能解决你的问题,请参考以下文章

使用 Sqoop 将来自 MySQL 的数据加载到 PIG

Hadoop-3.0.0 与旧版本 Hive、Pig、Sqoop 和 Spark 的兼容性如何

错误: 找不到或无法加载主类 org.apache.sqoop.Sqoop

无法从 Pig Latin 的 Hadoop HDFS 加载文件

为啥这个 sqoop 命令会抛出异常?无法找到或加载主类 org.apache.hadoop.mapreduce.v2.app.MRAppMaster

无法将数据加载到 Pig 中的 Hortonworks Sandbox