このエントリはQiita Advent Calendar 2017 Microsoft Azureサービスいちから紹介 の18日目です。
ナレッジコミュニケーションの大柳です(@oyngtmhr)。
18日目はAzure HDInsightです。Hadoopなど大規模データ分散処理基盤をマネージドサービスとして利用することができ、大量のデータを高速に分析、処理できます。アドベントカレンダーも残りあと1週間、がんばってお届けしていきます。
概要
Azure HDInsightはHadoopを始めとした大規模データ分散処理基盤をマネージドサービスとして利用することができます。分散処理基盤をAzureの仮想マシン上に構築し、関連ソフトウェアもインストール・設定されるので、導入の手間なく、簡単にデータ分析基盤を使い始めることができます。同様のクラウドサービスはAWSだとEMR
があります。
機能
・提供されるクラスター
Apache Hadoop、Apache Spark、Apache HBase、Microsoft R Server、Apache Storm、Apache Interactive Query(Live Long and Process)、Apache Kafkaがサポートされています。
https://docs.microsoft.com/ja-jp/azure/hdinsight/hadoop/apache-hadoop-introduction から引用
・提供されるコンポーネント・ユーティリティ
Mahout、Pig、ZooKeeperなどのコンポーネント、ユーティリティが提供されます
https://docs.microsoft.com/ja-jp/azure/hdinsight/hadoop/apache-hadoop-introduction から引用
提供されるコンポーネントやユーティリティの詳しい情報は以下に載っています。
HDInsight での Hadoop のコンポーネントとバージョン
・サポートするプログラミング言語
標準では、Java(Clojure、Jython、Scala)とPythonが利用可能です。後述するスクリプトアクションを使用して、他の言語をインストールすることもできます。
・スクリプトアクション
Bashスクリプトを使用して、クラスターの作成時または作成後に、HDInsightをカスタマイズすることができます。
スクリプトはAzure Data Lake Store、Azure Storage BLOB、ファイル共有サービス(GitHub、OneDrive、Dropboxなど)に置いてURIをHDInsightに設定します。設定や実行は、Azure Portal、Azure PowerShell、Azure CLI、HDInsight .NET SDKからできます。
・仮想マシンタイプ
クラスターのノードには、Aシリーズ(エントリレベル)とD3 v2(高速なCPU、CPU対比最適なメモリ構成、SSD)の仮想マシンが利用されます。既定の仮想マシンサイズは以下のようになります。
その他
・設定から利用開始までは20分ほど。
・Azure HDInsightはStandardとPremium(プレビュー)が提供される。Premiumでは、HDInsightクラスターをAzure Active Directory(Azure AD)のドメインに参加させて、セキュリティを強化することができる
・仮想マシンのA シリーズはデータノードとワーカーノードでは使用できない。
料金
・HDInsightクラスターを構成するノードの台数、利用時間に課金されます(分単位)。クラスターが作られると課金が開始され、クラスターが削除されると課金が終了します。
・R Serverクラスターの使用には追加料金が発生する(コア時間に対して課金)。
まとめ
Hadoopを始めとしたデータ分散処理基盤はオープンソースのものが普及して、多くの企業でデータ分析に使われています。ソフトウェア自体はオープンですが、ハードウェアの構築、関連ソフトウェアのインストール、設定は作業量が多く、設定の組み合わせも多くなり、大変です。HDInsightを使うことでこのような導入作業の手間が不要で、その後の運用も省力化することができ、とても魅力的なサービスです。