2016-04-07 8 views
2

私たちは多くのインパラテーブルを定義しており、スナッピー圧縮を使用していると仮定しています。 (寄木細工のファイル)寄木張り圧縮タイプ(インパラ経由)

しかし、私たちが実際にどのような圧縮タイプを実際に使用しているのかは分かりません。

impala docsは、既存のテーブルから圧縮タイプを取得する方法を指定していないようです。

インパラを介して使用されている圧縮タイプを見つける方法はありますか?

+0

仮にDESCRIBE FORMATTED $ table_name'を使用することはできますが、その結果の[圧縮:]フィールドは信頼できません: "圧縮設定はデータをロードするセッション中にのみ適用されるためテーブルメタデータで永続的に保存されません。」](http://www.cloudera.com/documentation/enterprise/latest/topics/impala_describe.html) – jbapple

+0

寄木張りテーブルでは、 – Jared

答えて

2

今のところ、寄木張りとして格納されているテーブルで使用されている圧縮の種類を示すコマンドはありませんが、回避策があります。あなたができることは、テーブル内のパーケットファイルの1つを見てから、使用されている圧縮を見るためにparquet-tools metaコマンドを使用することです。

-- step1) run hdfs dfs -ls to determine the location and name for a parquet file 
hdfs dfs -ls /yourTableLocationPath 
-- step2) parquet-tools really only works locally right now so you will need to copy the file to a local directory 
hdfs dfs -get /yourTableLocationPath/yourFileName /yourLocalPath 
-- step3) run parquet-tools meta command 
parquet-tools meta /yourLocalPath/yourFileName 

寄木細工-ツールのメタコマンドの出力は、あなたの行グループの出力の下で使用されている圧縮の種類が表示されます。