2017-01-07 4 views
0

ハイブテーブルにインポートした.gzファイルからクエリを実行したいのですが、Map-Reduceジョブが必要なクエリを使用すると、たとえば: select count(*)from test; それはエラーの下に示していますハイブのヘッダーのチェックが正しくありません

java.io.IOException: incorrect header check 
    at org.apache.hadoop.io.compress.zlib.ZlibDecompressor.inflateBytesDirect(Native Method) 
    at org.apache.hadoop.io.compress.zlib.ZlibDecompressor.decompress(ZlibDecompressor.java:228) 
    at org.apache.hadoop.io.compress.DecompressorStream.decompress(DecompressorStream.java:111) 
    at org.apache.hadoop.io.compress.DecompressorStream.read(DecompressorStream.java:105) 

私がチェックし、Z LIBは、デフォルトの圧縮コーデックであることがわかりました。 bzipファイルで試してみましたが問題ありませんでした。 .gzファイルはどのように使用できますか。 gzファイルをサポートできるデフォルトのコーデックを変更するにはどうすればよいですか?

+0

一つの他の場所で、このソリューションを投稿しました。 –

答えて

0

私は最初のいくつかのレコードを読むことができますが、同じ番号を数えることはできますが、私は同じエラーに直面しました。同じエラーで失敗したレコードの数。

普通の(圧縮されていない)ファイルの名前を.txtに変更するだけで問題は解決しました。以前は私のファイル名は;私はそれを.txtに改名しました。また、ファイルテストの圧縮を解除すると、そのファイルからデータを読み取ることができます。

上記のようにレコードの実行回数をテストする場合は、データが正しくロードされているかどうかを正確に示す完全なスキャンが実行されます。

私はreference.Itはあなたを助けるかもしれないとして、この[リンク](https://issues.apache.org/jira/browse/HADOOP-474)を使用し

関連する問題