Apache Pig join错误2087“在多个LocalRearrange运算符中找到索引:0”

时间:2013-05-22 19:07:03

标签: apache-pig

所以我有两个关系:

  • 网页浏览按GUID和网址pv_counts
  • 计算
  • 相同GUID和网址ev_counts
  • 的事件

我正在尝试使用joined_counts = JOIN ev_counts BY ev_site_guid, pv_counts BY pv_site_guid;加入他们,但我一直收到此错误:

  

ERROR 2087:优化期间出现意外问题。在多个LocalRearrange运算符中找到索引:0。

我尝试过使用Pig 10和Pig 11,但两者都返回相同的错误。

我用谷歌搜索过它,但我主要是想出猪源代码,但不解释它是什么或意味着什么。我已经尝试确保键中没有任何空值或空字符串

任何人都知道我做错了什么?

这是架构和一些示例数据:

pv_counts

describe pv_counts;
{group :: pv_site_guid:chararray,group :: pv_hostname:chararray,pv_count:long}

dump pv_counts;

(bSAw-MF-0r4Q-4acwqm_6r,example-url.com,10)
(bSAw-MF-0r4Q-4acwqm_6r,sports.example-url.com,10)
(bSAw-MF-0r4Q-4acwqm_6r,opinion.example-url.com,10)
(bSAw-MF-0r4Q-4acwqm_6r,newsinfo.example-url.com,10)
(bSAw-MF-0r4Q-4acwqm_6r,lifestyle.example-url.com,10)
....比事件更多的综合浏览量.... (dZiLDGjsGr3O3zacn9QLBk,example-url2.com.com,10)
(dZiLDGjsGr3O3zacn9QLBk,example-url3.com,10)

ev_counts

describe ev_counts;
{group :: ev_site_guid:chararray,group :: ee_hostname:chararray,ev1count:long,ev2count:long,ev3count:long,ev4count:long,ev5count:long}

dump ev_counts;

(bSAw-MF-0r4Q-4acwqm_6r,example-url.com,29,0,0,0,0)
(bSAw-MF-0r4Q-4acwqm_6r,sports.example-url.com,7,0,0,0,0)
(bSAw-MF-0r4Q-4acwqm_6r,lifestyle.example-url.com,2,0,0,0,0)
....没有浏览量那么多的事件.... (dZiLDGjsGr3O3zacn9QLBk,example-url2.com.com,0,0,37,0,0)
(dZiLDGjsGr3O3zacn9QLBk,example-url3.com,0,0,1,0,0)

我可以在Pig和Grunt中妥善处理关系。

当我添加以下连接语句时,它会到达最后并死掉:

joined_counts = JOIN ev_counts BY ev_site_guid, pv_counts BY pv_site_guid; dump joined_counts;

它会抛出“ERROR 2087:优化期间出现意外问题。在多个LocalRearrange运算符中找到索引:0。”错误和丑陋的堆栈跟踪。我对猪比较新,所以我从来没有挖过它的内部。

如果有人有任何提示或事情要尝试,我很乐意尝试。我们正在运行Cloudera的CDH3U3(0.20.2)。

0 个答案:

没有答案