Cloudera Enterprise 5.10の新機能: HueのSQLエディタとセキュリティの強化

原文: http://blog.cloudera.com/blog/2017/02/new-in-cloudera-enterprise-5-10-hue-sql-editor-and-security-improvements/

Cloudera Enterprise 5.10には、SQLの開発者と分析者のためのインテリジェントなエディタであるHueの最新アップデートが含まれています。

Clouderaの継続的なユーザーエクスペリエンスと生産性への投資の一環として、Cloudera Enterprise 5.10にはHueのアップデート版が含まれています。 このブログ記事では、主な機能拡張についての概要を説明します( demo.gethue.comをクリックするだけでC5.10のHueを簡単に試すこともできます)

SQLの改善

Hueのエディタは下記のような大きな改善点があります:

行数

返ってきた行数が表示されるので、データセットのサイズがすばやく確認できます。データベースエンジンが行数を提供していない場合、Hueは行数を推定してプラス記号(100+など)を付け加えます。

サンプルのポップアップ

このポップアップを使用して、データのサンプル、およびデータベース、テーブル、列に関するその他の統計情報をすばやく表示できます。SQLアシストから、あるいは任意のSQLオブジェクト(テーブル、列、関数…)を右クリックし、ポップアップを開くことができます。このバージョンのリリースでは、ポップアップがより早く開くようになり、データはキャッシュされます。

フッターは、メタストアのページまたはテーブルアシスト内のテーブルへの直接リンクを提供します。

SQLアシスト

アイテムのレンダリング処理が書き直され最適化されました。何千もの列を持つデータベースでは、遅延するのは望ましくありません。

SQLフォーマッタ

SQLフォーマッタには、ワンクリックできれいに見える新しいスマートなアルゴリズムが用意されています!

タイムラインとピボットグラフ

これらのビジュアライゼーションは、時系列データをプロットする場合、あるいは行のサブセットが同じ属性を持ち、それらを一緒に積み重ねる場合に便利です。

タイムライン
ピボット

外部テーブルの作成

S3用に改善した対応により、HDFSまたはS3に外部テーブルを直接作成する機会を導入しました。

SQLの改善についての詳細はこちらをご覧ください

自動化されたS3の設定

Cloudera Managerを使用してS3を設定している場合、HueはS3の資格情報を自動的に継承します。

通常のユーザーがS3ブラウザとオートコンプリートに自動的にアクセスすることはありません。グループの1つに追加されているHueのユーザー管理で「ファイルブラウザのS3権限 (File Browser S3 permission)」を持っている必要があります。

S3の設定についての詳細はこちらをご覧ください

新しいセキュリティの改善

Hueの管理者が、Hueを安全にインストールするのを強制して管理できるように、多くのセキュリティオプションが追加されました。

HttpOnlyフラグでの固定セッションIDとcsrftoken

HTTPレスポンスヘッダにHttpOnlyフラグが含まれている場合、クライアント側のスクリプトを使用してCookieにアクセスすることはできません。従って、ブラウザはCookieを第三者に公開しません。クロスサイトスクリプティングのリスクを軽減するため、この属性を持ったCookieはHTTP専用Cookieと呼ばれます。 HTTP専用Cookieに含まれる情報は、ハッカーや悪意のあるWebサイトに漏洩する可能性が低くなります。

hive.server2.thrift.sasl.qop=”auth-conf”のためのSASLのサポート

SASLの機構は、認証が成功した後、通信チャネルの完全性とプライバシー保護をサポートしています。

既にThrift SASLライブラリには sasl_max_buffer のサポートが実装されています。hue.inisasl_max_buffer はより大きく設定可能なバッファサイズを提供します。これで hive.server2.thrift.sasl.qop="auth-conf"のサポートを可能になります。

HueのRequest HTTPプールの紹介

Request Sessionオブジェクトは、要求間での特定のパラメータの永続性を可能にします。また、セッションインスタンスから作成されたすべてのリクエストにCookieを永続化し、urllib3の接続プールを使用します。同じ host:port に対して複数のリクエストを行いますが、この変更により基本的なTCP接続が再利用されるため、パフォーマンスが大幅に向上します。

CACHE_SESSION = requests.Session()
CACHE_SESSION.mount('http://', requests.adapters.HTTPAdapter(pool_connections=conf.CHERRYPY_SERVER_THREADS.get(), pool_maxsize=conf.CHERRYPY_SERVER_THREADS.get()))
CACHE_SESSION.mount('https://', requests.adapters.HTTPAdapter(pool_connections=conf.CHERRYPY_SERVER_THREADS.get(), pool_maxsize=conf.CHERRYPY_SERVER_THREADS.get()))

Oozieの改善

電子メール通知

ワークフローの実行が完了した後に電子メール通知を受け取るのが簡単になります。ワークフロー投入のポップアップに「完了メールを送信 (Send completion email」というチェックボックスが表示されます。

拡張ダッシュボードのフィルタリング

テキストフィールドに入力を開始すると、テキストに一致する名前または投稿者の一部があるジョブの一覧が取得できます。下記の画像では、テキストの sh が 4つのジョブ名と部分的に一致 していることがわかるでしょう 。このフィルタは現在のページだけでなく全てのジョブに適用されることに注意してください。

サブミットされた何千ものジョブのうちの1つを見つけるためには、以下のように完全なIDを入力する必要があります。

Oozieの改善点の詳細はこちらをご覧ください。

不明な点があればhue-user メーリングリスト、コミュニティフォーラムまたは@gethueに気軽にコメントしてください!