我們正在嘗試從HIVE(1.2.1)的'ORC'表中讀取數據,並使用'TextInputFormat'將該數據放入表中。有些項目是在原有的數據過大,操作過程中出現以下錯誤:記錄內存緩衝區記錄過大。通過TEZ處理Hive的ORC表時出錯
org.apache.hadoop.hive.ql.metadata.HiveException: org.apache.tez.runtime.library.common.sort。 impl.ExternalSorter $ MapBufferTooSmallException: 記錄內存緩衝區的記錄太大。超出緩衝區溢出極限, bufferOverflowRecursion = 2,bufferList.size = 1,塊大小= 1610612736
任何想法如何解決這個問題?
我們使用TEZ引擎執行查詢,並且使用簡單的MR引擎沒有錯誤。從複製到ORC ORC存儲時同樣的錯誤:
查詢執行:
insert overwrite table visits_text_test_1m select * from visits where dt='2016-01-19' limit 1000000;
UPD。
更新2:從ORC簡單的'選擇'工作相當不錯,任何引擎。
看起來像一個TEZ錯誤 - 使標題和標籤明確。 –
Thx請注意,參孫! – Samriang