我该如何调用日志?

时间:2013-12-11 23:20:44

标签: apache-pig

我收到了这个错误:

  

无法推断org.apache.pig.builtin.LOG的匹配函数   多个或没有一个适合。请使用明确的演员

从这段代码:

> describe A;
A: {p: long,k: chararray,count: double}
> foreach (group A by p) generate SUM(A.count * LOG(A.count));

我做错了什么?

1 个答案:

答案 0 :(得分:1)

我认为LOG适用于双人,而不是一包双打。在你的上下文中,你给它一个包,就像在SUM(A.count)中一样,但SUM应该用一个包。 尝试在包聚合之前准备好数据,例如:

computed = foreach A generate p, (count * LOG(count)) as multiplied;
summed = foreach (group computed by p) generate SUM(multiplied);