2012-12-05 184 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%確定爲什麼,這個標題是正確的。我認爲這個問題可能是由於這麼多聯接而產生的大量數據流。