HueのメタストアアプリでHiveのパーティションをフィルタ、ソート、ブラウズする

Published on 21 August 2015 in File Browser / Hive / Hue 3.9 / Metastore / Tutorial / Video - 3 minutes read - Last modified on 04 February 2020

最新のHueのリリースでは、メタストアはパーティション化されたHiveテーブルの優れたコントロールを提供しています。Hiveテーブルのパーティション化はフルテーブルスキャンを回避することにより、Hiveが管理しているテーブルのクエリのパフォーマンス向上のための優れた戦略です。

しかし、パーティション化は、データが既にHDFSに存在していたり、またはHive以外のサービスによって管理される外部テーブルに便利です。これらのケースでは、パーティションの場所は(テーブルのベース位置を取り、各パーティションの名前=値のパストークンを付加する)デフォルトの動的Hiveパーティションの場所に適合しない場合があり、パーティションの場所として有効な任意のデータパスを取ることができます。

例えば、次のパーティションで作成された”blog”と呼ばれる外部テーブルを取り上げてみましょう:

CREATE TABLE blog (title STRING, body STRING, pubdate DATE) PARTITIONED BY (dy STRING, dm STRING, dd STRING, dh STRING);

私たちは、必要に応じて特定のパーティションの場所にデータを追加するためにテーブルを変更し続けることができます:

ALTER TABLE blog ADD PARTITION (dy='2015', dm='2015-01', dd='2015-01-01', dh='2015-01-01 00') LOCATION '/user/jennykim/2015/01/01/00';
ALTER TABLE blog ADD PARTITION (dy='2015', dm='2015-01', dd='2015-01-01', dh='2015-01-01 12') LOCATION '/user/jennykim/2015/01/01/12';
ALTER TABLE blog ADD PARTITION (dy='2015', dm='2015-01', dd='2015-01-02', dh='2015-01-02 00') LOCATION '/user/jennykim/2015/01/02/00';
ALTER TABLE blog ADD PARTITION (dy='2015', dm='2015-01', dd='2015-01-02', dh='2015-01-02 12') LOCATION '/user/jennykim/2015/01/02/12';
ALTER TABLE blog ADD PARTITION (dy='2015', dm='2015-01', dd='2015-01-03', dh='2015-01-03 00') LOCATION '/user/jennykim/2015/01/03/00';
ALTER TABLE blog ADD PARTITION (dy='2015', dm='2015-01', dd='2015-01-03', dh='2015-01-03 12') LOCATION '/user/jennykim/2015/01/03/12';
ALTER TABLE blog ADD PARTITION (dy='2015', dm='2015-01', dd='2015-01-04', dh='2015-01-04 00') LOCATION '/user/jennykim/2015/01/04/00';
ALTER TABLE blog ADD PARTITION (dy='2015', dm='2015-01', dd='2015-01-04', dh='2015-01-04 12') LOCATION '/user/jennykim/2015/01/04/12';

テーブルのパーティションの場所に関係なく、現在Hueのメタストアは、テーブルビューから「パーティションを表示する」リンクをクリックして、テーブル内のすべてのパーティションを閲覧することができます。デフォルトでは、パーティションのビューは名前で(あるいは新しい順で、日付でパーティション化されている場合)逆順にパーティションをソートし、最初の250のパーティションを表示します。

しかし、パーティションの特定のセットを探しているなら、「フィルタを追加」のリンクをクリックしてフィルタパラメータを選択して、それから「フィルタ」ボタンをクリックしてパーティションの値をフィルタリングすることができます!クエリを絞り込むために必要に応じて複数のパーティションのフィルタが追加されることに注意してください、また、アルファベットの昇順でパーティション結果を取得するためのデフォルトのソート順を無効にすることができます。

HueチームによるHueのメタストアアプリでHiveのパーティションをフィルタ、ソート、ブラウズ

最後に、パーティションの場所をファイルブラウザで表示させる「View Parttion Files」のリンクをクリックして任意のパーティションのデータファイルを表示することができます。

Metastore Partition View

Partition File Browser

HueはそのままシームレスにHiveのデータを操作するための柔軟性を提供しています。いつものように、コメントとフィードバックは hue-user メーリングリストや@gethueまでお気軽に!


comments powered by Disqus

More recent stories

10 June 2021
Hue4.10(新しいSQLエディタコンポーネント、REST API、小さなファイルのインポート、Slackアプリなど)がリリースされました!
Read More
29 May 2021
Sqlスクラッチパッドコンポーネントとパブリック REST API を使用して、5 分で独自の SQL エディター (BYOE) を構築する
Read More
26 May 2021
改善されたHueのImporter -- ファイルの選択、方言の選択、テーブルの作成
Read More