Hive バージョン: 1.2.1、以下でテーブルを作成します。
CREATE TABLE ORC_NONE(
millisec bigint,
...
)
stored as orc tblproperties ("orc.create.index"="false");
insert into table ORC_NONE select * from ex_test_convert;
ただし、クエリを実行すると、常にNULLが返されます。例えば:
Select * from ORC_NONE limit 10; // return blank
Select min(millisec), max(millisec) from ORC_NONE; // return NULL, NULL
ORC_NONE, 2G のサイズを確認したので、空のテーブルではなく、「orc.create.index」="true" を設定してテーブルを作成すると、クエリが機能します。
行インデックスの有無にかかわらず、ORC で Hive のパフォーマンスをテストすること、より正確には、行インデックスのスキップ能力をテストすることを意図していました。ただし、行インデックスが使用できない場合、Hive はデータを読み取れないようでした。
これはバグですか?それとも私の読み込みに問題がありますか?