次の方法で共有


クイック スタート: Azure portal を使用して Azure HDInsight で Apache Spark クラスターを作成する

このクイック スタートでは、Azure portal を使用して、Azure HDInsight に Apache Spark クラスターを作成します。 その後、Jupyter Notebook を作成し、それを使用して Apache Hive テーブルに対して Spark SQL クエリを実行します。 Azure HDInsight は、企業向けのマネージドで幅広いオープンソースの分析サービスです。 HDInsight の Apache Spark フレームワークにより、メモリ内処理を使用した、高速の Data Analytics とクラスター コンピューティングが可能になります。 Jupyter Notebook を使用すると、データの操作、コードとマークダウン テキストの組み合わせ、簡単な視覚化を行うことができます。

使用可能な構成の詳細については、 HDInsight でのクラスターの設定に関する記事を参照してください。 ポータルを使用してクラスターを作成する方法の詳細については、「ポータル でのクラスターの作成」を参照してください。

複数のクラスターを一緒に使用している場合は、仮想ネットワークを作成できます。Spark クラスターを使用している場合は、Hive Warehouse コネクタを使用することもできます。 詳細については、「Azure HDInsight 用の仮想ネットワークを計画する」と「Hive Warehouse Connector を使用して Apache Spark と Apache Hive を統合する」を参照してください。

Important

HDInsight クラスターの課金は、使用しているかどうかに関係なく、分単位で日割り計算されます。 クラスターの使用が完了したら、必ずクラスターを削除してください。 詳細については、この記事の「 リソースのクリーンアップ 」セクションを参照してください。

[前提条件]

アクティブなサブスクリプションを持つ Azure アカウント。 無料でアカウントを作成できます

HDInsight で Apache Spark クラスターを作成する

Azure portal を使用して、クラスター ストレージとして Azure Storage BLOB を使用する HDInsight クラスターを作成します。 Data Lake Storage Gen2 の使用方法の詳細については、「 クイック スタート: HDInsight でクラスターを設定する」を参照してください。

  1. Azure portal にサインインします。

  2. 上部のメニューで、[+ リソースの作成] を選択します。

    リソースの作成方法に関する Azure portal のスクリーンショット。

  3. [Analytics>Azure HDInsight] を選択して、[HDInsight クラスターの作成] ページに移動します。

  4. [ 基本 ] タブで、次の情報を指定します。

    プロパティ Description
    Subscription ドロップダウン リストから、クラスターに使用する Azure サブスクリプションを選択します。
    リソースグループ ドロップダウン リストから既存のリソース グループを選択するか、[新規作成] を選択します。
    クラスター名 グローバルに一意の名前を入力します。
    リージョン ドロップダウン リストから、クラスターが作成されるリージョンを選択します。
    可用性ゾーン 省略可能 - クラスターをデプロイする可用性ゾーンを指定する
    クラスターの種類 クラスターの種類を選択して一覧を開きます。 一覧から [ Spark] を選択します。
    クラスターのバージョン クラスターの種類が選択されると、このフィールドに既定のバージョンが自動的に入力されます。
    クラスター ログイン ユーザー名 クラスター ログイン ユーザー名を入力します。 既定の名前は admin です。このアカウントを使用して、クイックスタートの後半で Jupyter Notebook にログインします。
    クラスター ログイン パスワード クラスター ログイン パスワードを入力します。
    Secure Shell (SSH) ユーザー名 SSH ユーザー名を入力します。 このクイック スタートで使用する SSH ユーザー名は sshuser です。 既定では、このアカウントは クラスター ログイン ユーザー名 アカウントと同じパスワードを共有します。

    [基本] タブが選択されている HDInsight クラスターの作成を示すスクリーンショット。

  5. [ 次へ: ストレージ] >> を選択して、[ ストレージ ] ページに進みます。

  6. [ ストレージ] で、次の値を指定します。

    プロパティ Description
    プライマリ ストレージの種類 既定値の Azure Storage を使用します。
    メソッドの選択 既定値の [一覧から選択] を使用します
    プライマリ ストレージ アカウント 自動入力されている値を使用します。
    コンテナ 自動入力されている値を使用します。

    スクリーンショットは、[ストレージ] タブが選択された HDInsight クラスターの作成を示しています。

    [ 確認と作成 ] を選択して続行します。

  7. [ 確認と作成] で 、[ 作成] を選択します。 クラスターの作成には約 20 分かかります。 次のセッションに進む前に、クラスターを作成する必要があります。

HDInsight クラスターの作成で問題が発生した場合は、適切なアクセス許可がない可能性があります。 詳細については、「 アクセス制御の要件」を参照してください。

Jupyter Notebook を作成する

Jupyter Notebook は、さまざまなプログラミング言語をサポートする対話型ノートブック環境です。 ノートブックを使用すると、データを操作したり、コードとマークダウン テキストを組み合わせたり、簡単な視覚化を実行したりできます。

  1. Web ブラウザーから https://CLUSTERNAME.azurehdinsight.net/jupyter に移動します。ここで、 CLUSTERNAME はクラスターの名前です。 メッセージが表示されたら、クラスターのログイン資格情報を入力します。

  2. [新規>PySpark] を選択してノートブックを作成します。

    対話型の Spark SQL クエリを実行する Jupyter Notebook を作成します。

    新しいノートブックが作成され、Untitled(Untitled.pynb) という名前で開かれます。

Apache Spark SQL ステートメントを実行する

SQL (構造化クエリ言語) は、データのクエリと定義に最も一般的で広く使用されている言語です。 Spark SQL は、使い慣れた SQL 構文を使用して、構造化データを処理するための Apache Spark の拡張機能として機能します。

  1. カーネルの準備ができているかどうかを確認します。 ノートブック内のカーネル名の横に空の円が表示されたら、カーネルの準備ができました。 黒丸は、カーネルがビジー状態であることを示します。

    PySpark インジケーターを含む Jupyter ウィンドウを示すスクリーンショット。

    ノートブックを初めて起動すると、カーネルはバックグラウンドでいくつかのタスクを実行します。 カーネルの準備が整うのを待ちます。

  2. 次のコードを空のセルに貼り付け、 Shift キーを押しながら Enter キー を押してコードを実行します。 このコマンドは、クラスター上の Hive テーブルを一覧表示します。

    %%sql
    SHOW TABLES
    

    HDInsight クラスターで Jupyter Notebook を使用すると、Spark SQL を使用して Hive クエリを実行するために使用できるプリセット sqlContext が取得されます。 %%sql は、プリセット sqlContext を使用して Hive クエリを実行するように Jupyter Notebook に指示します。 このクエリは、既定ですべての HDInsight クラスターに付属する Hive テーブル (hivesampletable) から上位 10 行を取得します。 結果を取得するには約 30 秒かかります。 出力は次のようになります。

    このクイックスタートで作成したノートブックの Jupyter ウィンドウを示すスクリーンショット。 is quickstart." border="true":::

    Jupyter でクエリを実行するたびに、Web ブラウザー ウィンドウのタイトルにノートブック のタイトルと共に (ビジー) 状態が表示されます。 右上隅の PySpark テキストの横に、実線の円も表示されます。

  3. 別のクエリを実行して、 hivesampletable内のデータを確認します。

    %%sql
    SELECT * FROM hivesampletable LIMIT 10
    

    画面が更新され、クエリの出力が表示されます。

    HDInsight での Hive クエリの出力。 Insight" border="true":::

  4. ノートブックの [ ファイル ] メニューから、[ 閉じて停止] を選択します。 ノートブックをシャットダウンすると、クラスター リソースが解放されます。

リソースをクリーンアップする

HDInsight では、Azure Storage または Azure Data Lake Storage にデータが保存されるため、クラスターが使用されていない場合は安全に削除できます。 また、HDInsight クラスターは、使用していない場合でも課金されます。 クラスターの料金は Storage の料金の何倍にもなるため、クラスターを使用しない場合は削除するのが経済的にも合理的です。 「次の手順」に記載されているチュートリアルにすぐに取り組む予定がある場合は、クラスターを保持することができます。

Azure portal に戻り、[削除] を選択 します

Azure portal で HDInsight クラスターを削除します。 sight cluster" border="true":::

リソース グループ名を選択してリソース グループ ページを開き、[ リソース グループの削除] を選択することもできます。 リソース グループを削除すると、HDInsight クラスターと既定のストレージ アカウントの両方が削除されます。

次のステップ

このクイック スタートでは、HDInsight で Apache Spark クラスターを作成し、基本的な Spark SQL クエリを実行する方法について説明しました。 HDInsight クラスターを使用してサンプル データに対話型のクエリを実行する方法については、次のチュートリアルに進みます。