HDInsight:Apache Storm、クラスタスケーリング、Hadoop 2.6、ノードサイズ、Linux上のHDInsightプレビューの一般公開
今回、Azureでビッグデータワークロードを強力にするための管理HadoopサービスであるHDInsightにも主要な機能強化をいくつか行わせて頂きました。
Apache Stormサポートの一般公開
今回のリリースでは、完全管理されたサービスとしてApache Stormを提供し、それをHDInsight上で一般公開することで、Hadoopを使用したリアルタイムのストリーミング分析を簡単にできるようにしました。これにより、Stormクラスタを非常に簡単に立ち上げ、そして管理できます。HDInsight上のStormサービスの一環として、いくつかの重要な機能を有効にすることで生産性を向上させました。
- Azureイベントハブサービスとの統合により、イベントハブを通じて収集されたすべてのデータが簡単に処理できます。
- Apache Storm上でのファーストクラス.Net体験により、Javaおよび.NETのどちらでも使用できるようになります。
- SpoutやBoltライブラリにより、SQL、HBase、DocumentDBなどの他のAzureサービスを簡単に統合できます。
- Visual Studio統合により、開発者はVisual Studio環境内から完全なプロジェクト管理をを簡単に行えます。
Stormクラスタの作成とサンプルトポロジーの実行
Azure管理ポータルから新しいStormクラスタを簡単にスピンアップできます。Stormダッシュボードでは、既存のStormトポロジーをアップロードしたり、ドロップダウンからサンプルトポロジーを選択することができます。トポロジーはコードもしくはTridentのようなより高いレベルのプログラミングモデルを使用して作成します。Stormダッシュボード経由でクラスタ上に現在あるすべてのトポロジーを監視および管理することも可能です。
.NETトポロジーとVisual Studio体験
Storm上で行われた大きな改善点の1つですが、開発者は.NETでStormトポロジーが書けるようになりました。特にStormリリースで興奮してしまうのが、HDInsight上のStormにVisual Studioが使用できるようになったことです。Azure SDKの最新バージョンでは、HDInsightの配下からStormプロジェクトテンプレートが取得できます。これにより、正しい参照の設定を気にすることなく、すべてのStormトポロジーで必要になるスケルトンコードを記述することなく、簡単にStormトポロジーを書き始められます。
StormはHDInsightサービスの一部として利用可能なので、すべてのHDInsight機能もStormクラスタに適用されます。例えば、既存の実行トポロジに影響を与えることなく、Stormクラスタを簡単にスケールアップおよびスケールダウンできます。これにより、現在処理中のデータに影響を与えることなく、データの取り込みスピードや遅延の要件に応じてStormクラスタの拡大および縮小が可能になります。クラスタ作成時に、HDInsight上でStormクラスタに使用する利用可能なVMの長い一覧から選択することもできます。
HDInsight 3.2のサポート
WindowsおよびLinux用のHDInsightクラスタにおける、Hadoop次期メジャーバージョンの公開について発表させて頂きます。これには、Hadoop 2.6、Hive 0.14、およびスタック内すべてのコンポーネントに対する実質的な更新が含まれています。Hive 0.14には、Tezを通じたパフォーマンスおよびスケーラビリティの改善、強力なコストベースオプティマイザの追加、UPDATE、INSERT、DELETEなどのSQL文や開発セッション中は生き続けるテンポラリーテーブルなどの処理機能の導入などが含まれています。Hive 0.14リリースの詳細は、ここからご確認ください。Pig 0.14にはORCのサポートが追加され、PigやHiveで活用される単一の高性能フォーマットが可能になりました。さらに、PigはMap/Reduceの代わりにTezをターゲットにできるようになり、実行エンジンを変更することで、実質的なパフォーマンスの大幅な向上につながります。Pig 0.14リリースの詳細は、ここからご確認ください。これらにより、オープンソースエコシステムにおける最新の改善点がHDInsightにもたらされます。
3.2クラスタを開始するには、Azure管理ポータルまたはコマンドラインを使用してください。VSツールは更新され、Storm以外にHiveクエリオーサリングも含まれました。また、改善されたステートメントコンプリーション、ローカル検証、Visual StudioからYARNタスクログへのアクセス、Linux上でのHDInsightクラスタサポートなども追加しました。これらを取得する場合は、最新のHDInsightツーリングが含まれたAzure SDK for Visual Studioをインストールしてください。
クラスタスケーリング
多くのお客様から、その場でHDInsightのクラスタサイズが変更できる機能のご要望がありました。この機能は、Azureポータル、コマンドライン、SDKからアクセスできます。サイズ変更スライダーをドラッグすれば、ワークロードに合わせてHadoopクラスタを拡大および縮小できます。処理中にはクラスタへさらにノードを追加するので、大きなジョブが完了したらクラスタサイズを小さくできます。サブスクリプションにもっとコアが必要な場合、課金サポートチケットを開いてより大きなクォータを要求できます。
ノードサイズの選択
最後に、HDInsightクラスタ内のノードに対してVMサイズを指定することも可能になりました。これにより、ワークロードに合わせてクラスタリソースを最適化できます。VMサイズのAおよびDシリーズをすべて利用できるようにしました。クラスタ内の各異なるタイプのロールに対して、マシンタイプを指定できます。これにより、ジョブで利用可能なCPU、RAM、SSDの容量が調整できます。
Linux上のHDInsight
今回、Ubuntu Linuxコンテナを使用してHDInsightクラスタが展開できるHDInsightサービスのプレビュー版もリリースします。これにより、Azure上で実行中の管理Hadoopワークロードに使用できるオペレーティングシステムオプションが拡張されます(以前はHDInsightがサポートしているのはWindows Serverコンテナのみでした)。
新しいLinuxサポートにより、SSHやAmbariなどの使い慣れたツールを使用して簡単にAzure内でビッグデータのワークロードを構築できます。Linuxクラスタ上のHDInsightは、Windowsクラスタと同じHadoopディストリビューション上に構築され、完全にAzureストレージと統合されており、HDInsightが提供するSLA、管理、サポートを利用するためにHadoopを活用するお客様が簡単に行えるようになっています。開始するには、ここでプレビューにサインアップして頂ければ、Azure管理ポータルまたはコマンドラインインタフェースを通じて簡単にLinuxクラスタが作成できます。
HDInsightクラスタへのSSH接続は、Linuxクラスタ上すべてのHDInsightに対してデフォルトで有効になっています。クラスタに接続するSSHクライアントは選択したものを使用できます。さらに、ブラウザからすべてのHadoop Webアプリケーションへトラフィックを転送するために、SSHトンネリングを活用できます。
詳細について
Azure HDInsightの詳細については、以下のリソースを参照してください。