2012-12-05 187 views
2

我一直在研究一个包含配置单元查询的项目。Hive断开管道错误

INSERT INTO OVERWRITE .... TRANSFORM(....)USING '蟒script.py' FROM ....左外连接。 。 。左外连接。 。 。 LEFT OUTER JOIN

开始时一切正常,直到我们加载了大量的虚拟数据。我们只是在一些字段上写下相同的记录,而且变化很小。之后,我们再次运行这个程序,我们得到一个断开的管道错误,没有太多的信息。没有关于错误的日志,只是IOException:断开的管道错误。 。 。 。

为了简化脚本和隔离错误,我们修改脚本以

for line in sys.stdin.readlines(): 
    print line 

,以避免任何错误在该水平。我们仍然有同样的错误。

回答

1

这个问题似乎可以通过在许多不同的查询中使用中间表来分解这么多的连接来解决。然后,您只需添加一个最后一个查询,其中包含汇总所有先前结果的最后一个查询据我所知,这意味着在脚本级别没有任何错误,但太多的数据由蜂巢

0

各地办理的另一件作品上,这是去除变换和产生新的查询插入另一个表只是运行变换的数据。我不是100%确定为什么,这个标题是正确的。我认为这个问题可能是由于这么多联接而产生的大量数据流。