猪拉丁语:错误 org.apache.pig.tools.grunt.Grunt - 错误 1045

Posted

技术标签:

【中文标题】猪拉丁语:错误 org.apache.pig.tools.grunt.Grunt - 错误 1045【英文标题】:Pig Latin: ERROR org.apache.pig.tools.grunt.Grunt - ERROR 1045 【发布时间】:2015-12-27 21:09:57 【问题描述】:
M = LOAD '/apps/hive/warehouse/hsfawtbx9000_archive.db/fds_audit_record_master_text' using PigStorage(',')
     AS(id:int,audit_action:chararray,userid:chararray,audit_time:datetime,record_type:chararray,record_identifier:double,master_record_type:chararray,master_record_identifier:double,record_display_id:chararray);
A = FILTER M BY (audit_time IS NOT NULL);
F = GROUP A BY ToDate((audit_time,'yyyy-mm-dd');

2015-12-27 15:53:45,981 [主要] 错误 org.apache.pig.tools.grunt.Grunt - 错误 1045:无法将 org.apache.pig.builtin.ToDate 的匹配函数推断为多个或没有 合身。请使用显式转换。

不知道为什么抱怨。

【问题讨论】:

当我在 LOAD 期间使用 chararray 类型时,在执行之前尝试过的 ToDate 时出现错误 6017。 [main] 错误 org.apache.pig.tools.grunt.Grunt - 错误 6017:作业 ID:job_1447970573826_0481 原因:作业失败! 首先,能否确认一下分组时没有额外的括号? 【参考方案1】:

Todate() 函数将只接受“字符串”(chararray 或 bytearray)或“Long millis”作为输入

看到这个https://pig.apache.org/docs/r0.11.0/api/org/apache/pig/builtin/ToDate.html

看起来您的输入 audit_time:datetime 是 Datetime 格式

【讨论】:

当我使用 chararray 时,我得到了我之前尝试过的错误 6017。 [main] 错误 org.apache.pig.tools.grunt.Grunt - 错误 6017:作业 ID:job_1447970573826_0481 原因:作业失败!

以上是关于猪拉丁语:错误 org.apache.pig.tools.grunt.Grunt - 错误 1045的主要内容,如果未能解决你的问题,请参考以下文章

如何从 grunt shell 以猪拉丁语运行宏?

我的猪拉丁文脚本中的错误

用猪拉丁语解析 XML

两个表之间的猪拉丁计数差异

如何创建用于猪拉丁语和 izzle 翻译的代码以及同时应用它们的代码?

ruby 原猪拉丁语翻译