【问题标题】:how to run illustrate command in pig?如何在猪中运行说明命令?
【发布时间】:2014-10-21 03:37:40
【问题描述】:

我也尝试在本地和 hdfs 模式下对 pig 中的别名运行 illustrate 命令。 但我遇到了错误。

2014-08-27 19:18:06,703 [主要] 错误 org.apache.pig.pen.ExampleGenerator - 读取数据时出错。内部的 创建作业配置时出错。 java.lang.RuntimeException:内部 创建作业配置时出错。 在 org.apache.pig.pen.ExampleGenerator.getExamples(ExampleGenerator.java:160) 在 org.apache.pig.PigServer.getExamples(PigServer.java:1182) 在 org.apache.pig.tools.grunt.GruntParser.processIllustrate(GruntParser.java:739) 在 org.apache.pig.tools.pigscript.parser.PigScriptParser.Illustrate(PigScriptParser.java:626) 在 org.apache.pig.tools.pigscript.parser.PigScriptParser.parse(PigScriptParser.java:323) 在 org.apache.pig.tools.grunt.GruntParser.parseStopOnError(GruntParser.java:194) 在 org.apache.pig.tools.grunt.GruntParser.parseStopOnError(GruntParser.java:170) 在 org.apache.pig.tools.grunt.Grunt.run(Grunt.java:69) 在 org.apache.pig.Main.run(Main.java:538) 在 org.apache.pig.Main.main(Main.java:157) 在 sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 在 sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) 在 sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 在 java.lang.reflect.Method.invoke(Method.java:606) 在 org.apache.hadoop.util.RunJar.main(RunJar.java:208) 2014-08-27 19:18:06,707 [main] 错误 org.apache.pig.tools.grunt.Grunt - 错误 2997:遇到 IOException。日志文件中的异常详细信息:/opt/pig_1409147241095.log

我正在使用此示例运行 Illustrate 命令。

假设输入文件是“visits.txt”,包含以下数据:

Amy cnn.com 20070218 Fred harvard.edu 20071204 Amy
bbc.com 20071205 Fred stanford.edu 20071206

一个 grunt 会话可能看起来像这样(注意在加载数据时使用模式。ExampleGenerator 需要你提供别名):

grunt> visits = load 'visits.txt' as (user, url, timestamp);
grunt> recent_visits = filter visits by timestamp >= '20071201';
grunt> user_visits = group recent_visits by user;
grunt> num_user_visits = foreach user_visits generate group, COUNT(recent_visits);
grunt> illustrate num_user_visits

【问题讨论】:

  • 不,这招行不通。我将我的代码更改为如下仍然相同的错误visits = load 'visits.txt' as (user, url); user_visits = group visits by user; illustrate user_visits 我在这里执行了非常简单的代码,没有任何时间或日期变量。
  • 你能粘贴'/opt/pig_1409147241095.log'的内容吗?您还可以在 grunt shell 中转储“访问”吗?

标签: hadoop apache-pig


【解决方案1】:

/etc/pig/conf/pig.properties上设置pig.enable.plan.serialization=false

【讨论】:

    猜你喜欢
    • 2013-10-30
    • 2013-10-12
    • 2020-09-05
    • 1970-01-01
    • 1970-01-01
    • 2016-12-15
    • 1970-01-01
    • 2020-06-08
    • 2011-09-13
    相关资源
    最近更新 更多