クイック スタート: Azure portal を使用して Azure Databricks 上で Spark ジョブを実行するQuickstart: Run a Spark job on Azure Databricks using the Azure portal

このクイック スタートでは、Azure portal を使って Azure Databricks ワークスペースと Apache Spark クラスターを作成します。In this quickstart, you use the Azure portal to create an Azure Databricks workspace with an Apache Spark cluster. クラスターでジョブを実行し、カスタム グラフを使用して、ボストンの安全データからリアルタイムのレポートを作成します。You run a job on the cluster and use custom charts to produce real-time reports from Boston safety data.

前提条件Prerequisites

Azure portal にサインインしますSign in to the Azure portal

Azure Portal にサインインします。Sign in to the Azure portal.

注意

Azure 無料試用版サブスクリプションを使用してこのチュートリアルを実行することはできません。This tutorial cannot be carried out using Azure Free Trial Subscription. 無料アカウントをお持ちの場合は、お使いのプロファイルにアクセスし、サブスクリプションを [従量課金制] に変更します。If you have a free account, go to your profile and change your subscription to pay-as-you-go. 詳細については、Azure 無料アカウントに関するページをご覧ください。For more information, see Azure free account. 次に、リージョン内の vCPU について使用制限を削除しクォータの増加を依頼します。Then, remove the spending limit, and request a quota increase for vCPUs in your region. Azure Databricks ワークスペースを作成するときに、 [Trial (Premium - 14-Days Free DBUs)](試用版 (Premium - 14 日間の無料 DBU)) の価格レベルを選択し、ワークスペースから 14 日間無料の Premium Azure Databricks DBU にアクセスできるようにします。When you create your Azure Databricks workspace, you can select the Trial (Premium - 14-Days Free DBUs) pricing tier to give the workspace access to free Premium Azure Databricks DBUs for 14 days.

Azure Databricks ワークスペースを作成するCreate an Azure Databricks workspace

このセクションでは、Azure Portal を使って Azure Databricks ワークスペースを作成します。In this section, you create an Azure Databricks workspace using the Azure portal.

  1. Azure portal で、 [リソースの作成] > [分析] > [Azure Databricks] の順に選択します。In the Azure portal, select Create a resource > Analytics > Azure Databricks.

    Azure Portal の DatabricksDatabricks on Azure portal

  2. [Azure Databricks サービス] で値を指定して、Databricks ワークスペースを作成します。Under Azure Databricks Service, provide the values to create a Databricks workspace.

    Azure Databricks ワークスペースを作成するCreate an Azure Databricks workspace

    次の値を指定します。Provide the following values:

    プロパティProperty 説明Description
    ワークスペース名Workspace name Databricks ワークスペースの名前を指定しますProvide a name for your Databricks workspace
    サブスクリプションSubscription ドロップダウンから Azure サブスクリプションを選択します。From the drop-down, select your Azure subscription.
    リソース グループResource group 新しいリソース グループを作成するか、既存のリソース グループを使用するかを指定します。Specify whether you want to create a new resource group or use an existing one. リソース グループは、Azure ソリューションの関連するリソースを保持するコンテナーです。A resource group is a container that holds related resources for an Azure solution. 詳しくは、Azure リソース グループの概要に関するページをご覧ください。For more information, see Azure Resource Group overview.
    LocationLocation [米国西部 2] を選択します。Select West US 2. 使用可能な他のリージョンについては、「リージョン別の利用可能な製品」をご覧ください。For other available regions, see Azure services available by region.
    価格レベルPricing Tier StandardPremiumTrial のいずれかを選択します。Choose between Standard, Premium, or Trial. これらのレベルの詳細については、Databricks の価格に関するページを参照してください。For more information on these tiers, see Databricks pricing page.

    [ダッシュボードにピン留めする] チェック ボックスをオンにし、 [作成] をクリックします。Select Pin to dashboard and then click Create.

  3. ワークスペースの作成には数分かかります。The workspace creation takes a few minutes. ワークスペースの作成中に、 [通知] でデプロイの状態を表示できます。During workspace creation, you can view the deployment status in Notifications.

    Databricks のデプロイのタイルDatabricks deployment tile

Databricks に Spark クラスターを作成するCreate a Spark cluster in Databricks

注意

無料アカウントを使用して Azure Databricks クラスターを作成するには、クラスターを作成する前に、プロファイルにアクセスし、サブスクリプションを従量課金制に変更します。To use a free account to create the Azure Databricks cluster, before creating the cluster, go to your profile and change your subscription to pay-as-you-go. 詳細については、Azure 無料アカウントに関するページをご覧ください。For more information, see Azure free account.

  1. Azure Portal で、作成した Databricks ワークスペースに移動して、 [Launch Workspace](ワークスペースの起動) をクリックします。In the Azure portal, go to the Databricks workspace that you created, and then click Launch Workspace.

  2. Azure Databricks ポータルにリダイレクトされます。You are redirected to the Azure Databricks portal. ポータルから、 [新しいクラスター] をクリックします。From the portal, click New Cluster.

    Azure の DatabricksDatabricks on Azure

  3. [New cluster](新しいクラスター) ページで、クラスターを作成するための値を指定します。In the New cluster page, provide the values to create a cluster.

    Azure で Databricks Spark クラスターを作成するCreate Databricks Spark cluster on Azure

    以下を除くすべての値は、既定値のままにします。Accept all other default values other than the following:

    • クラスターの名前を入力します。Enter a name for the cluster.

    • この記事では、5.2 ランタイムを使用してクラスターを作成します。For this article, create a cluster with 5.2 runtime.

    • [Terminate after __ minutes of inactivity] (アクティビティが __ 分ない場合は終了する) チェック ボックスをオンにします。Make sure you select the Terminate after __ minutes of inactivity checkbox. クラスターが使われていない場合にクラスターを終了するまでの時間 (分単位) を指定します。Provide a duration (in minutes) to terminate the cluster, if the cluster is not being used.

      [クラスターの作成] を選択します。Select Create cluster. クラスターが実行されたら、ノートブックをクラスターにアタッチして、Spark ジョブを実行できます。Once the cluster is running, you can attach notebooks to the cluster and run Spark jobs.

クラスターの作成について詳しくは、Azure Databricks での Spark クラスターの作成に関するページをご覧ください。For more information on creating clusters, see Create a Spark cluster in Azure Databricks.

Spark SQL ジョブを実行するRun a Spark SQL job

次のタスクを実行して Databricks でノートブックを作成し、Azure オープン データセットからデータを読み取るようにノートブックを構成してから、そのデータに対して Spark SQL ジョブを実行します。Perform the following tasks to create a notebook in Databricks, configure the notebook to read data from an Azure Open Datasets, and then run a Spark SQL job on the data.

  1. 左側のウィンドウで、 [Azure Databricks] を選択します。In the left pane, select Azure Databricks. [Common Tasks] (一般的なタスク) から、 [New Notebook] (新しいノートブック) を選択します。From the Common Tasks, select New Notebook.

    Databricks でノートブックを作成するCreate notebook in Databricks

  2. [Create Notebook] (ノートブックの作成) ダイアログ ボックスで、名前を入力し、言語として [Python] を選択してから、前に作成した Spark クラスターを選択します。In the Create Notebook dialog box, enter a name, select Python as the language, and select the Spark cluster that you created earlier.

    Databricks でノートブックを作成するCreate notebook in Databricks

    作成 を選択します。Select Create.

  3. この手順では、Azure オープン データセットからボストンの安全に関するデータを含む Spark データフレームを作成し、SQL を使用してそのデータにクエリを実行します。In this step, create a Spark DataFrame with Boston Safety Data from Azure Open Datasets, and use SQL to query the data.

    次のコマンドは、Azure Storage のアクセス情報を設定します。The following command sets the Azure storage access information. この PySpark コードを最初のセルに貼り付け、Shift + Enter キーを使用してコードを実行します。Paste this PySpark code into the first cell and use Shift+Enter to run the code.

    blob_account_name = "azureopendatastorage"
    blob_container_name = "citydatacontainer"
    blob_relative_path = "Safety/Release/city=Boston"
    blob_sas_token = r"?st=2019-02-26T02%3A34%3A32Z&se=2119-02-27T02%3A34%3A00Z&sp=rl&sv=2018-03-28&sr=c&sig=XlJVWA7fMXCSxCKqJm8psMOh0W4h7cSYO28coRqF2fs%3D"
    

    次のコマンドは、Spark がリモートで BLOB ストレージから読み取ることを許可します。The following command allows Spark to read from Blob storage remotely. この PySpark コードを次のセルに貼り付け、Shift + Enter キーを使用してコードを実行します。Paste this PySpark code into the next cell and use Shift+Enter to run the code.

    wasbs_path = 'wasbs://%s@%s.blob.core.windows.net/%s' % (blob_container_name, blob_account_name, blob_relative_path)
    spark.conf.set('fs.azure.sas.%s.%s.blob.core.windows.net' % (blob_container_name, blob_account_name), blob_sas_token)
    print('Remote blob path: ' + wasbs_path)
    

    次のコマンドは、データフレームを作成します。The following command creates a DataFrame. この PySpark コードを次のセルに貼り付け、Shift + Enter キーを使用してコードを実行します。Paste this PySpark code into the next cell and use Shift+Enter to run the code.

    df = spark.read.parquet(wasbs_path)
    print('Register the DataFrame as a SQL temporary view: source')
    df.createOrReplaceTempView('source')
    
  4. source という名前の一時ビューから上位 10 行のデータを返す SQL ステートメントを実行します。Run a SQL statement return the top 10 rows of data from the temporary view called source. この PySpark コードを次のセルに貼り付け、Shift + Enter キーを使用してコードを実行します。Paste this PySpark code into the next cell and use Shift+Enter to run the code.

    print('Displaying top 10 rows: ')
    display(spark.sql('SELECT * FROM source LIMIT 10'))
    
  5. 次のスクリーンショットのような表形式の出力が表示されます (一部の列のみ示してあります)。You see a tabular output like shown in the following screenshot (only some columns are shown):

    サンプル データSample data

  6. 次に、他のソースではなく Citizens Connect App や City Worker App を使用して安全に関するいくつのイベントが報告されているかを表示するために、このデータの視覚的な表現を作成します。You now create a visual representation of this data to show how many safety events are reported using the Citizens Connect App and City Worker App instead of other sources. 表形式の出力の一番下から [横棒グラフ] アイコンを選択し、 [Plot Options] (プロット オプション) をクリックします。From the bottom of the tabular output, select the Bar chart icon, and then click Plot Options.

    棒グラフを作成するCreate bar chart

  7. [Customize Plot](プロットのカスタマイズ) で、スクリーンショットに示すように値をドラッグ アンド ドロップします。In Customize Plot, drag-and-drop values as shown in the screenshot.

    円グラフをカスタマイズするCustomize pie chart

    • [キー][source] に設定します。Set Keys to source.

    • [値][<\id>] に設定します。Set Values to <\id>.

    • [Aggregation](集計)[COUNT](個数) に設定します。Set Aggregation to COUNT.

    • [Display type] (表示の種類)[円グラフ] に設定します。Set Display type to Pie chart.

      [Apply] をクリックします。Click Apply.

リソースのクリーンアップClean up resources

記事を完了したら、クラスターを終了できます。After you have finished the article, you can terminate the cluster. そのためには、Azure Databricks ワークスペースの左側のウィンドウで、 [クラスター] を選択します。To do so, from the Azure Databricks workspace, from the left pane, select Clusters. 終了するクラスターで、 [アクション] 列の下にある省略記号をポイントし、 [終了] アイコンを選択します。For the cluster you want to terminate, move the cursor over the ellipsis under Actions column, and select the Terminate icon.

Databricks クラスターを停止するStop a Databricks cluster

クラスター作成時に [Terminate after __ minutes of inactivity] (アクティビティが __ 分ない場合は終了する) チェック ボックスをオンにしていた場合、手動で終了しなくともクラスターは自動で停止します。If you do not manually terminate the cluster it will automatically stop, provided you selected the Terminate after __ minutes of inactivity checkbox while creating the cluster. このような場合、クラスターは、一定の時間だけ非アクティブな状態が続くと自動的に停止します。In such a case, the cluster automatically stops, if it has been inactive for the specified time.

次の手順Next steps

この記事では、Azure Databricks で Spark クラスターを作成し、Azure オープン データセットからのデータを使用して Spark ジョブを実行しました。In this article, you created a Spark cluster in Azure Databricks and ran a Spark job using data from Azure Open Datasets. Spark のデータ ソースを見て、他のデータ ソースから Azure Databricks にデータをインポートする方法を学習することもできます。You can also look at Spark data sources to learn how to import data from other data sources into Azure Databricks. 次の記事に進んで、Azure Databricks を使った ETL (データの抽出、変換、読み込み) 操作の実行方法について学びましょう。Advance to the next article to learn how to perform an ETL operation (extract, transform, and load data) using Azure Databricks.