Azure HDInsight および Apache Hadoop テクノロジ スタックとはWhat is Azure HDInsight and the Apache Hadoop technology stack

この記事では、Azure HDInsight 上の Apache Hadoop の概要について説明します。This article provides an introduction to Apache Hadoop on Azure HDInsight. Azure HDInsight は、フル マネージドの、全範囲に対応した、オープンソースのエンタープライズ向け分析サービスです。Azure HDInsight is a fully managed, full-spectrum, open-source analytics service for enterprises. Hadoop、Apache Spark、Apache Hive、LLAP、Apache Kafka、Apache Storm、R などのオープンソース フレームワークを使用できます。You can use open-source frameworks such as Hadoop, Apache Spark, Apache Hive, LLAP, Apache Kafka, Apache Storm, R, and more.

HDInsight および Hadoop テクノロジ スタックとはWhat is HDInsight and the Hadoop technology stack?

Apache Hadoop は本来、クラスターでのビッグ データ セットの分散処理および分析のためのオープンソース フレームワークでした。Apache Hadoop was the original open-source framework for distributed processing and analysis of big data sets on clusters. Hadoop テクノロジ スタックには、Apache Hive、Azure HBase、Spark、Kafka、その他の多くの関連するソフトウェアおよびユーティリティが含まれます。The Hadoop technology stack includes related software and utilities, including Apache Hive, Apache HBase, Spark, Kafka, and many others.

Azure HDInsight は、Hortonworks Data Platform (HDP) の Hadoop コンポーネントのクラウド ディストリビューションです。Azure HDInsight is a cloud distribution of the Hadoop components from the Hortonworks Data Platform (HDP). Azure HDInsight によって大量のデータを簡単かつ迅速に高いコスト効率で処理できるようになります。Azure HDInsight makes it easy, fast, and cost-effective to process massive amounts of data. Hadoop、Spark、Hive、LLAP、Kafka、Storm、R など、最もよく使用されているオープンソースのフレームワークを使用することができます。You can use the most popular open-source frameworks such as Hadoop, Spark, Hive, LLAP, Kafka, Storm, R, and more. これらのフレームワークにより、抽出/変換/読み込み (ETL)、データ ウェアハウス、機械学習、IoT など、幅広いシナリオに対応できます。With these frameworks, you can enable a broad range of scenarios such as extract, transform, and load (ETL), data warehousing, machine learning, and IoT.

HDInsight で利用可能な Hadoop テクノロジ スタック コンポーネントを確認するには、HDInsight で利用可能なコンポーネントとバージョンに関する記事を参照してください。To see available Hadoop technology stack components on HDInsight, see Components and versions available with HDInsight. HDInsight の Hadoop については、HDInsight 向けの Azure の機能に関するページを参照してください。To read more about Hadoop in HDInsight, see the Azure features page for HDInsight.

ビッグ データとはWhat is big data?

収集されるビッグ データの量は膨れ上がっています。その勢いはしだいに増し、以前よりも形式も多様化しています。Big data is collected in escalating volumes, at higher velocities, and in a greater variety of formats than ever before. ビッグ データの種類には、履歴データ (つまり、保存されたデータ) とリアルタイム データ (つまり、ソースからストリーミングされるデータ) があります。It can be historical (meaning stored) or real time (meaning streamed from the source). ビッグ データの最も一般的な使用例については、「HDInsight を使用するシナリオ」をご覧ください。See Scenarios for using HDInsight to learn about the most common use cases for big data.

HDInsight 上の Hadoop を使用する理由Why should I use Hadoop on HDInsight?

このセクションでは、Azure HDInsight の一連の機能を紹介します。This section lists the capabilities of Azure HDInsight.

機能Capability 説明Description
クラウド ネイティブCloud native Azure HDInsight を使用すると、Hadoop、 Spark、 Interactive query (LLAP)、 Kafka、 Storm、 HBase、 ML サービス向けに最適化されたクラスターを Azure 上に作成することができます。Azure HDInsight enables you to create optimized clusters for Hadoop, Spark, Interactive query (LLAP), Kafka, Storm, HBase, and ML Services on Azure. また、HDInsight は、あらゆる運用環境のワークロードについてエンド ツー エンドの SLA を提供します。HDInsight also provides an end-to-end SLA on all your production workloads.
低コストでスケーラブルLow-cost and scalable ワークロードをスケールアップまたはスケールダウン することができます。HDInsight enables you to scale workloads up or down.  クラスターをオンデマンドで作成 し、実際に使用する分にのみ支払うことでコストを削減できます。 You can reduce costs by creating clusters on demand and paying only for what you use. データ パイプラインを作成して、必要なジョブを運用化することもできます。You can also build data pipelines to operationalize your jobs. コンピューティングとストレージが分離され、より高いパフォーマンスと柔軟性が実現されています。Decoupled compute and storage provide better performance and flexibility.
セキュリティとコンプライアンスSecure and compliant HDInsight を使用すると、Azure Virtual Network暗号化Azure Active Directory との統合によって、企業のデータ資産を保護することができます。HDInsight enables you to protect your enterprise data assets with Azure Virtual Network, encryption, and integration with Azure Active Directory. また HDInsight は、業界や行政上の最も一般的なコンプライアンス基準を満たしています。HDInsight also meets the most popular industry and government compliance standards.
監視Monitoring Azure HDInsight と Azure Log Analytics の統合によって、すべてのクラスターを監視できる一元化されたインターフェイスが得られます。Azure HDInsight integrates with Azure Log Analytics to provide a single interface with which you can monitor all your clusters.
グローバル対応Global availability HDInsight は、他のあらゆるビッグ データ分析サービスより多くの リージョン で提供されています。HDInsight is available in more regions than any other big data analytics offering. Azure HDInsight は、Azure Government、Azure China、Azure Germany でも提供されており、独自の法令が施行されている地域における企業のニーズに応えます。Azure HDInsight is also available in Azure Government, China, and Germany, which allows you to meet your enterprise needs in key sovereign areas.
生産性Productivity Azure HDInsight を使用すると、お好みの開発環境で Hadoop および Spark 向けの豊富な生産性ツールを利用できます。Azure HDInsight enables you to use rich productive tools for Hadoop and Spark with your preferred development environments. これらの開発環境には、Scala、Python、R、Java、.NET に対応した Visual StudioVS CodeEclipse、および IntelliJ が含まれます。These development environments include Visual Studio, VSCode, Eclipse, and IntelliJ for Scala, Python, R, Java, and .NET support. データ サイエンティストが、JupyterZeppelin など、広く使われている Notebook を使って共同作業を行うこともできます。Data scientists can also collaborate using popular notebooks such as Jupyter and Zeppelin.
機能拡張Extensibility スクリプト アクションを使ってコンポーネント (Hue、Presto など) をインストールしたり、エッジ ノードを追加したり、定評のある他のビッグ データ アプリケーションと連携したりすることで、HDInsight のクラスターを拡張することができます。You can extend the HDInsight clusters with installed components (Hue, Presto, and so on) by using script actions, by adding edge nodes, or by integrating with other big data certified applications. HDInsight は、特に普及率の高いビッグ データ ソリューションとワンクリック デプロイでシームレスに連携します。HDInsight enables seamless integration with the most popular big data solutions with a one-click deployment.

HDInsight を使用するシナリオScenarios for using HDInsight

Azure HDInsight は、ビッグ データ処理のさまざまなシナリオに対応します。Azure HDInsight can be used for a variety of scenarios in big data processing. ビッグ データは履歴データ (既に収集されて保存されているデータ) である場合もあれば、リアルタイム データ (ソースから直接ストリーミングされるデータ) である場合もあります。It can be historical data (data that's already collected and stored) or real-time data (data that's directly streamed from the source). そのようなデータの処理に関するシナリオは、次のカテゴリに集約することができます。The scenarios for processing such data can be summarized in the following categories:

バッチ処理 (ETL)Batch processing (ETL)

ETL (抽出、変換、読み込み) は、異種データ ソースから非構造化データまたは構造化データを抽出する処理です。Extract, transform, and load (ETL) is a process where unstructured or structured data is extracted from heterogeneous data sources. その後、構造化された形式に変換して、データ ストアに読み込みます。It's then transformed into a structured format and loaded into a data store. 変換後のデータは、データ サイエンスやデータ ウェアハウジングに使用することができます。You can use the transformed data for data science or data warehousing.

データ ウェアハウスData warehousing

HDInsight を使用して、あらゆる形式の構造化データや非構造化データに対話型クエリをペタバイト規模で実行することができます。You can use HDInsight to perform interactive queries at petabyte scales over structured or unstructured data in any format. それらを BI ツールに接続するモデルを作成することもできます。You can also build models connecting them to BI tools. 詳しくは、こちらの顧客事例をご覧ください。For more information, read this customer story.

HDInsight のアーキテクチャ:データ ウェアハウスHDInsight architecture: Data warehousing

モノのインターネット(IoT)Internet of Things (IoT)

さまざまなデバイスからリアルタイムで受信したストリーミング データを HDInsight で処理することができます。You can use HDInsight to process streaming data that's received in real time from a variety of devices. 詳細については、Azure マネージド ディスクを使用した HDInsight での Apache Kafka のパブリック プレビューを知らせる Azure のブログ記事を参照してくださいFor more information, read this blog post from Azure that announces the public preview of Apache Kafka on HDInsight with Azure Managed disks.

HDInsight のアーキテクチャ:モノのインターネットHDInsight architecture: Internet of Things

データ サイエンスData science

データから重要な洞察を得るアプリケーションを HDInsight で作成することができます。You can use HDInsight to build applications that extract critical insights from data. また、その基盤の上に Azure Machine Learning を使用して、ビジネスの将来の傾向を予測することもできます。You can also use Azure Machine Learning on top of that to predict future trends for your business. 詳しくは、こちらの顧客事例をご覧ください。For more information, read this customer story.

HDInsight のアーキテクチャ:データ サイエンスHDInsight architecture: Data science


HDInsight を使用して、既にあるオンプレミスのビッグ データ インフラストラクチャを Azure にまで拡張し、そのクラウドの高度な分析機能を活用することができます。You can use HDInsight to extend your existing on-premises big data infrastructure to Azure to leverage the advanced analytics capabilities of the cloud.

HDInsight のアーキテクチャ:ハイブリッドHDInsight architecture: Hybrid

HDInsight でのクラスターの種類Cluster types in HDInsight

HDInsight には、特定のクラスターの種類のほか、コンポーネント、ユーティリティ、および言語を追加する機能などのクラスター カスタマイズ機能が含まれています。HDInsight includes specific cluster types and cluster customization capabilities, such as the capability to add components, utilities, and languages. HDInsight は、次のクラスターの種類を提供します。HDInsight offers the following cluster types:

HDInsight のオープンソース コンポーネントOpen-source components in HDInsight

Azure HDInsight では、Hadoop、Spark、Hive、LLAP、Kafka、Storm、HBase、R をはじめとするオープンソースのフレームワークを使ってクラスターを作成できます。これらのクラスターには、Apache AmbariAvroApache HiveHCatalogApache MahoutApache Hadoop MapReduceApache Hadoop YARNApache PhoenixApache PigApache SqoopApache TezApache OozieApache ZooKeeper など、各クラスターに備わっている他のオープンソース コンポーネントが最初から付属しています。Azure HDInsight enables you to create clusters with open-source frameworks such as Hadoop, Spark, Hive, LLAP, Kafka, Storm, HBase, and R. These clusters, by default, come with other open-source components that are included on the cluster such as Apache Ambari, Avro, Apache Hive, HCatalog, Apache Mahout, Apache Hadoop MapReduce, Apache Hadoop YARN, Apache Phoenix, Apache Pig, Apache Sqoop, Apache Tez, Apache Oozie, Apache ZooKeeper.

HDInsight のプログラミング言語Programming languages in HDInsight

HDInsight クラスター (Spark、HBase、Kafka、Hadoopなど) は多数のプログラミング言語をサポートします。HDInsight clusters, including Spark, HBase, Kafka, Hadoop, and others, support many programming languages. 既定でインストールされないプログラミング言語があります。Some programming languages aren't installed by default. 既定でインストールされないライブラリ、モジュール、またはパッケージは、スクリプト アクションを使用してコンポーネントをインストールします。For libraries, modules, or packages that are not installed by default, use a script action to install the component.

プログラミング言語Programming language 情報Information
既定のプログラミング言語のサポートDefault programming language support 既定では、HDInsight クラスターは以下をサポートします。By default, HDInsight clusters support:
  • JavaJava
  • PythonPython
スクリプト アクションを使用して他の言語をインストールできます。You can install additional languages by using script actions.
Java 仮想マシン (JVM) 言語Java virtual machine (JVM) languages Java 以外の多くの言語を Java 仮想マシン (JVM) で実行できます。Many languages other than Java can run on a Java virtual machine (JVM). ただし、これらの言語の一部を実行する場合は、クラスターへの追加コンポーネントのインストールが必要な場合があります。However, if you run some of these languages, you might have to install additional components on the cluster. 次の JVM ベースの言語が HDInsight クラスターでサポートされます。The following JVM-based languages are supported on HDInsight clusters:
  • ClojureClojure
  • Jython (Java 用の Python)Jython (Python for Java)
  • ScalaScala
Hadoop 固有言語Hadoop-specific languages HDInsight クラスターでは、Hadoop テクノロジ スタックに固有の次の言語をサポートしています。HDInsight clusters support the following languages that are specific to the Hadoop technology stack:
  • Pig ジョブ用の Pig LatinPig Latin for Pig jobs
  • Hive ジョブ用の HiveQL と SparkSQLHiveQL for Hive jobs and SparkSQL

HDInsight 用の開発ツールDevelopment tools for HDInsight

HDInsight のデータ クエリやジョブは、Azure とシームレスに統合された HDInsight の開発ツール (IntelliJ、Eclipse、Visual Studio Code、Visual Studio) を使用して作成、送信することができます。You can use HDInsight development tools, including IntelliJ, Eclipse, Visual Studio Code, and Visual Studio, to author and submit HDInsight data query and job with seamless integration with Azure.

HDInsight のビジネス インテリジェンスBusiness intelligence on HDInsight

Power Query アドインまたは Microsoft Hive ODBC ドライバーを使用すれば、使い慣れたビジネス インテリジェンス (BI) ツールを HDInsight と連携して、データの取得、分析、レポート生成を行うことができます。Familiar business intelligence (BI) tools retrieve, analyze, and report data that is integrated with HDInsight by using either the Power Query add-in or the Microsoft Hive ODBC Driver:

次の手順Next steps

この記事では、Azure HDInsight とは何か、および Azure で Hadoop とその他のクラスターの種類を提供する方法を説明しました。In this article, you learned what is Azure HDInsight and how it provides Hadoop and other cluster types on Azure. 次の記事に進み、HDInsight で Apache Hadoop クラスターを作成する方法について学習してください。Proceed to the next article to learn how to create an Apache Hadoop cluster in HDInsight.