HIVE (1.2.1) の「ORC」テーブルからデータを読み取り、そのデータを「TextInputFormat」でテーブルに入れようとしています。一部のエントリが元のデータでは大きすぎるため、操作中に次のエラーが発生します:
org.apache.hadoop.hive.ql.metadata.HiveException: org.apache.tez.runtime.library.common.sort.impl.ExternalSorter$MapBufferTooSmallException: メモリ内バッファーに対してレコードが大きすぎます。バッファ オーバーフロー制限を超えました。bufferOverflowRecursion=2、bufferList.size=1、blockSize=1610612736
問題を解決する方法はありますか?
クエリの実行には TEZ エンジンを使用していますが、単純な MR エンジンではエラーは発生しません。
実行するクエリ:
insert overwrite table visits_text_test_1m select * from visits where dt='2016-01-19' limit 1000000;
Upd: ORC から ORC ストレージにコピーするときの同じエラー。
Upd 2: ORC からの単純な「選択」は、どのエンジンでもうまく機能します。