チュートリアル:HDInsight での Power BI を使用した Apache Spark データの分析Tutorial: Analyze Apache Spark data using Power BI in HDInsight

このチュートリアルでは、Microsoft Power BI を使用して Azure HDInsight で Apache Spark クラスター内のデータを視覚化する方法を学習します。In this tutorial, you learn how to use Microsoft Power BI to visualize data in an Apache Spark cluster in Azure HDInsight.

このチュートリアルでは、以下の内容を学習します。In this tutorial, you learn how to:

  • Power BI を使用して Spark データを視覚化するVisualize Spark data using Power BI

Azure サブスクリプションをお持ちでない場合は、開始する前に 無料アカウント を作成してください。If you don't have an Azure subscription, create a free account before you begin.

前提条件Prerequisites

データの検証Verify the data

前のチュートリアルで作成した Jupyter Notebook には、hvac テーブルを作成するためのコードが含まれています。The Jupyter Notebook that you created in the previous tutorial includes code to create an hvac table. この表は、\HdiSamples\HdiSamples\SensorSampleData\hvac\hvac.csv にあるすべての HDInsight Spark クラスターで使用可能な CSV ファイルに基づいています。This table is based on the CSV file available on all HDInsight Spark clusters at \HdiSamples\HdiSamples\SensorSampleData\hvac\hvac.csv. データの検証に使用する手順は、以下のとおりです。Use the following procedure to verify the data.

  1. Jupyter Notebook から次のコードを貼り付けて、Shift + Enter キーを押します。From the Jupyter notebook, paste the following code, and then press SHIFT + ENTER. このコードによってテーブルの存在が検証されます。The code verifies the existence of the tables.

    %%sql
    SHOW TABLES
    

    出力は次のようになります。The output looks like:

    Spark でのテーブルの表示

    このチュートリアルを開始する前に Notebook を閉じると、hvactemptable はクリーンアップされるため、出力に含まれません。If you closed the notebook before starting this tutorial, hvactemptable is cleaned up, so it's not included in the output. BI ツールからアクセスできるのは、metastore に保存された Hive テーブル (isTemporary 列に False と表示される) のみです。Only Hive tables that are stored in the metastore (indicated by False under the isTemporary column) can be accessed from the BI tools. このチュートリアルでは、作成した hvac テーブルに接続します。In this tutorial, you connect to the hvac table that you created.

  2. 次のコードを空のセルに貼り付け、Shift + Enter キーを押します。Paste the following code in an empty cell, and then press SHIFT + ENTER. このコードによってテーブル内のデータが検証されます。The code verifies the data in the table.

    %%sql
    SELECT * FROM hvac LIMIT 10
    

    出力は次のようになります。The output looks like:

    Spark での hvac テーブルの行の表示

  3. ノートブックの [File](ファイル) メニューの [Close and Halt](閉じて停止) を選びます。From the File menu on the notebook, select Close and Halt. Notebook をシャットダウンしてリソースを解放します。Shut down the notebook to release the resources.

データの視覚化Visualize the data

このセクションでは、Power BI を使用して Spark クラスター データから視覚エフェクト、レポート、およびダッシュボードを作成します。In this section, you use Power BI to create visualizations, reports, and dashboards from the Spark cluster data.

Power BI Desktop でレポートを作成するCreate a report in Power BI Desktop

Spark を操作する最初のステップでは、Power BI Desktop のクラスターに接続し、クラスターからデータを読み込み、そのデータを基に基本的な視覚エフェクトを作成します。The first steps in working with Spark are to connect to the cluster in Power BI Desktop, load data from the cluster, and create a basic visualization based on that data.

注意

この記事で説明するコネクタは、現在プレビューの段階です。The connector demonstrated in this article is currently in preview. お客様のフィードバックを Power BI コミュニティ サイトや Power BI Ideas を通じてお寄せください。Provide any feedback you have through the Power BI Community site or Power BI Ideas.

  1. Power BI Desktop を開きます。Open Power BI Desktop. 起動のスプラッシュ画面が開いていれば閉じます。Close the start-up splash screen if it opens.

  2. [ホーム] タブから、 [データの取得] > [その他...] に移動します。From the Home tab, navigate to Get Data > More...

    HDInsight Apache Spark から Power BI Desktop にデータを取得Get data into Power BI Desktop from HDInsight Apache Spark

  3. 検索ボックスに「Spark」と入力し、 [Azure HDInsight Spark][接続] の順に選択します。Enter Spark in the search box, select Azure HDInsight Spark, and then select Connect.

    Apache Spark BI から Power BI にデータを取得Get data into Power BI from Apache Spark BI

  4. [サーバー] テキスト ボックスにクラスター URL を (mysparkcluster.azurehdinsight.net の形式で) 入力します。Enter your cluster URL (in the form mysparkcluster.azurehdinsight.net) in the Server text box.

  5. [データ接続モード] で、 [DirectQuery] を選択します。Under Data connectivity mode, select DirectQuery. [OK] をクリックします。Then select OK.

    Spark では、いずれかのデータ接続モードをご利用いただけます。You can use either data connectivity mode with Spark. DirectQuery を使用する場合、データセット全体を更新しなくても変更がレポートに反映されます。If you use DirectQuery, changes are reflected in reports without refreshing the entire dataset. データをインポートする場合は、データセットを更新して変更内容を確認する必要があります。If you import data, you must refresh the data set to see changes. DirectQuery をいつ、どのように使用するかの詳細については、「Power BI で DirectQuery を使用する」をご覧ください。For more information on how and when to use DirectQuery, see Using DirectQuery in Power BI.

  6. HDInsight のログイン アカウント情報を入力し、 [接続] を選択します。Enter the HDInsight login account information, then select Connect. 既定のアカウント名は admin です。The default account name is admin.

  7. hvac テーブルを選択し、データのプレビューが表示されるのを待ってから、 [読み込み] を選択します。Select the hvac table, wait to see a preview of the data, and then select Load.

    Spark クラスターのユーザー名とパスワードSpark cluster user name and password

    Spark クラスターに接続し、hvac テーブルからデータを読み込むために必要な情報が Power BI Desktop に整いました。Power BI Desktop has the information it needs to connect to the Spark cluster and load data from the hvac table. [フィールド] ウィンドウにテーブルとその列が表示されます。The table and its columns are displayed in the Fields pane.

  8. 各ビルの目標温度と実際の温度の差を視覚化します。Visualize the variance between target temperature and actual temperature for each building:

    1. [視覚エフェクト] ウィンドウで [面グラフ] を選択します。In the VISUALIZATIONS pane, select Area Chart.

    2. [BuildingID] フィールドをにドラッグし、 [ActualTemp][TargetTemp] の各フィールドをにドラッグします。Drag the BuildingID field to Axis, and drag the ActualTemp and TargetTemp fields to Value.

      値の列を追加add value columns

      図は次のようになります。The diagram looks like:

      面グラフの合計area graph sum

      既定では、ActualTemp および TargetTemp の合計が表示されます。By default the visualization shows the sum for ActualTemp and TargetTemp. [視覚化] ウィンドウ内の ActualTempTragetTemp の横にある下矢印を選択すると、 [合計] が選択されていることを確認できます。Select the down arrow next to ActualTemp and TragetTemp in the Visualizations pane, you can see Sum is selected.

    3. [視覚化] ウィンドウ内の ActualTempTragetTemp の横にある下矢印を選択し、 [平均] を選択して、各ビルの実際の温度と目標温度の平均を取得します。Select the down arrows next to ActualTemp and TragetTemp in the Visualizations pane, select Average to get an average of actual and target temperatures for each building.

      値の平均average of values

      次のスクリーンショットのようにデータが視覚化されます。Your data visualization shall be similar to the one in the screenshot. グラフの上にカーソルを移動すると、関連データを含むツール ヒントが表示されます。Move your cursor over the visualization to get tool tips with relevant data.

      面グラフarea graph

  9. [ファイル] > [保存] に移動し、ファイルの名前 BuildingTemperature を入力して [保存] を選択します。Navigate to File > Save, enter the name BuildingTemperature for the file, then select Save.

Power BI サービスにレポートを発行する (省略可能)Publish the report to the Power BI Service (optional)

Power BI サービスを使用すると、組織全体でレポートとダッシュボードを共有できます。The Power BI service allows you to share reports and dashboards across your organization. このセクションでは、まずデータセットとレポートを発行します。In this section, you first publish the dataset and the report. 次に、このレポートをダッシュボードにピン留めします。Then, you pin the report to a dashboard. 通常、ダッシュボードは、レポート内のデータのサブセットにフォーカスするために使用します。Dashboards are typically used to focus on a subset of data in a report. レポート内にある視覚エフェクトは 1 つのみですが、それでも手順を実行するのに役立ちます。You have only one visualization in your report, but it's still useful to go through the steps.

  1. Power BI Desktop を開きます。Open Power BI Desktop.

  2. [ホーム] タブで [発行] をクリックします。From the Home tab, click Publish.

    Power BI Desktop から発行するPublish from Power BI Desktop

  3. データセットを発行してレポートするワークスペースを選択して、 [選択] をクリックします。Select a workspace to publish your dataset and report to, then click Select. 次の図では、既定値の [マイ ワークスペース] が選択されています。In the following image, the default My Workspace is selected.

    データセットを発行してレポートするワークスペースの選択Select workspace to publish dataset and report to

  4. 発行に成功したら、 [Open 'BuildingTemperature.pbix' in Power BI]('BuildingTemperature.pbix' を Power BI で開く) をクリックします。After the publishing is succeeded, click Open 'BuildingTemperature.pbix' in Power BI.

    発行の成功、クリックして資格情報を入力Publish success, click to enter credentials

  5. Power BI サービスで、 [資格情報を入力する] をクリックします。In the Power BI service, click Enter credentials.

    Power BI サービスで資格情報を入力Enter credentials in Power BI service

  6. [資格情報を編集] をクリックします。Click Edit credentials.

    Power BI サービスで資格情報を編集Edit credentials in Power BI service

  7. HDInsight のログイン アカウント情報を入力し、 [サインイン] をクリックします。Enter the HDInsight login account information, and then click Sign in. 既定のアカウント名は admin です。The default account name is admin.

    Spark クラスターへのサインインSign in to Spark cluster

  8. 左ウィンドウ枠で [ワークスペース] > [マイ ワークスペース] > [レポート] の順に移動して、 [BuildingTemperature] をクリックします。In the left pane, go to Workspaces > My Workspace > REPORTS, then click BuildingTemperature.

    左側のペインのレポートの下に一覧表示されたレポートReport listed under reports in left pane

    左ウィンドウ枠の [データセット] にも [BuildingTemperature] が表示されます。You should also see BuildingTemperature listed under DATASETS in the left pane.

    これで、Power BI Desktop で作成したビジュアルが Power BI サービスで使用できるようになりました。The visual you created in Power BI Desktop is now available in the Power BI service.

  9. 視覚エフェクトにカーソルを合わせ、右上隅のピン アイコンをクリックします。Hover your cursor over the visualization, and then click the pin icon on the upper right corner.

    Power BI サービスのレポートReport in the Power BI service

  10. [新しいダッシュボード] を選択して、名前 Building temperature を入力し、 [ピン留め] をクリックします。Select "New dashboard", enter the name Building temperature, then click Pin.

    新しいダッシュボードにピン留めPin to new dashboard

  11. レポートで、 [ダッシュボードへ移動] をクリックします。In the report, click Go to dashboard.

ビジュアルはダッシュボードにピン留めされます。他のビジュアルをレポートに追加して、同じダッシュボードにピン留めすることもできます。Your visual is pinned to the dashboard - you can add other visuals to the report and pin them to the same dashboard. レポートとダッシュボードの詳細については、「Power BI のレポート」のほか、Power BI のダッシュボードに関する記事を参照してください。For more information about reports and dashboards, see Reports in Power BI and Dashboards in Power BI.

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

チュートリアルを完了したら、必要に応じてクラスターを削除できます。After you complete the tutorial, you may want to delete the cluster. HDInsight を使用すると、データは Azure Storage に格納されるため、クラスターは、使用されていない場合に安全に削除できます。With HDInsight, your data is stored in Azure Storage, so you can safely delete a cluster when it isn't in use. また、HDInsight クラスターは、使用していない場合でも課金されます。You're also charged for an HDInsight cluster, even when it isn't in use. クラスターの料金は Storage の料金の何倍にもなるため、クラスターを使用しない場合は削除するのが経済的にも合理的です。Since the charges for the cluster are many times more than the charges for storage, it makes economic sense to delete clusters when they aren't in use.

クラスターを削除するには、「ブラウザー、PowerShell、または Azure CLI を使用して HDInsight クラスターを削除する」を参照してください。To delete a cluster, see Delete an HDInsight cluster using your browser, PowerShell, or the Azure CLI.

次の手順Next steps

このチュートリアルでは、Microsoft Power BI を使用して Azure HDInsight で Apache Spark クラスター内のデータを視覚化する方法を学習しました。In this tutorial, you learned how to use Microsoft Power BI to visualize data in an Apache Spark cluster in Azure HDInsight. 次の記事に進み、Machine Learning アプリケーションを作成できることを確認します。Advance to the next article to see you can create a machine learning application.