通話データを分析して結果を Power BI ダッシュボードで視覚化する Stream Analytics ジョブの作成Create a Stream Analytics job to analyze phone call data and visualize results in a Power BI dashboard

このチュートリアルでは、Azure Stream Analytics を使用して、クライアント アプリケーションが生成するサンプル通話を分析する方法を紹介します。This tutorial shows how to use Azure Stream Analytics to analyze a sample phone call that is generated by a client application. クライアント アプリケーションが生成する通話データには不正な呼び出しが含まれているため、そのような呼び出しをフィルター処理するよう Stream Analytics ジョブを定義します。The phone call data generated by the client application contains some fraudulent calls and we will define a Stream Analytics job to filter such calls.

このチュートリアルで学習する内容は次のとおりです。In this tutorial, you learn how to:

  • サンプル通話データを生成して Azure Event Hubs に送信するGenerate sample phone call data and send phone it to Azure Event Hubs
  • Stream Analytics のジョブの作成Create a Stream Analytics job
  • ジョブへの入力と出力を構成するConfigure input and output to the job
  • 不正な呼び出しをフィルター処理するようクエリを定義するDefine a query to filter fraudulent calls
  • ジョブをテストして開始するTest and start the job
  • Power BI で結果を視覚化するVisualize results in Power BI

前提条件Prerequisites

始める前に、以下のものを用意してください。Before you start, make sure you have the following:

  • Azure サブスクリプションをお持ちでない場合は、無料アカウントを作成してください。If you don't have an Azure subscription, create a free account.
  • Azure Portal にログインします。Log in to the Azure portal.
  • Microsoft ダウンロード センターから通話イベント ジェネレーター アプリ TelcoGenerator.zip をダウンロードします。または、GitHub からソース コードを入手することもできます。Download the phone call event generator app TelcoGenerator.zip from the Microsoft Download Center or you can get the source code from GitHub.

Azure Event Hub を作成しますCreate an Azure Event Hub

Stream Analytics でデータ ストリームにおける不正な呼び出しを分析できるようにするには、データを Azure に送信する必要があります。Before Stream Analytics can analyze the fraudulent calls data stream, you should send the data to Azure. このチュートリアルでは、Azure Event Hubs を使用して Azure にデータを送信します。In this tutorial, you will send data to Azure by using Azure Event Hubs. このチュートリアルでは、イベント ハブを作成し、イベント ジェネレーター アプリからそのイベント ハブに通話データを送信します。For this tutorial, you create an event hub and make the event generator app send call data to that event hub. イベント ハブを作成するには、次の手順を実行します。Run the following steps to create an event hub:

  1. Azure ポータルにログインします。Log in to the Azure portal.
  2. [リソースの作成] > [モノのインターネット (IoT)] > [Event Hubs] の順に選択します。Select Create a resource > Internet of Things > Event Hubs.

    イベント ハブの検索

  3. [名前空間の作成] ウィンドウに次の値を入力します。Fill out the Create namespace pane with the following values:

    設定Setting 推奨値Suggested value 説明Description
    NameName myEventHubNSmyEventHubNS イベント ハブの名前空間を識別する一意の名前。A unique name to identify the event hub namespace.
    サブスクリプションSubscription <該当するサブスクリプション><Your subscription> イベント ハブを作成する Azure サブスクリプションを選択します。Select an Azure subscription where you want to create the event hub.
    リソース グループResource group MyASADemoRGMyASADemoRG [新規作成] を選択し、アカウントの新しいリソース グループ名を入力します。Select Create New and enter a new resource-group name for your account.
    リージョンLocation 米国西部 2West US2 イベント ハブの名前空間をデプロイできる場所です。Location where the event hub namespace can be deployed.
  4. 残りの設定では既定のオプションを使用し、[作成] を選択します。Use default options on the remaining settings and select Create.

    イベント ハブの名前空間の作成

  5. 名前空間のデプロイが完了したら、[すべてのリソース] に移動し、Azure リソースの一覧で "myEventHubNS" を探して、それを選択して開きます。When the namespace has finished deploying, go to All resources > find "myEventHubNS" in the list of Azure resources > select to open it.

  6. 次に、[+ イベント ハブ] > を選択し、[名前] に「MyEventHub」と入力します。Next select +Event Hub > Name the event hub “MyEventHub”. 別の名前を使用してもかまいません。You can use a different name. 残りの設定では既定のオプションを使用し、[作成] を選択して、デプロイが正常に完了するまで待ちます。Use default options on remaining settings, select Create and wait for the deployment to succeed.

    イベント ハブの作成

イベント ハブへのアクセスを許可し、接続文字列を取得するGrant access to the event hub and get a connection string

アプリケーションから Azure Event Hubs にデータを送信できるようにするには、適切なアクセスを許可するポリシーがイベント ハブに必要です。Before an application can send data to Azure Event Hubs, the event hub must have a policy that allows appropriate access. アクセス ポリシーにより、承認情報を含む接続文字列が生成されます。The access policy produces a connection string that includes authorization information.

  1. 前の手順で作成したイベント ハブ (MyEventHub) に移動し、イベント ハブ ウィンドウから [共有アクセス ポリシー] を選択して、[+ 追加] を選択します。Navigate to the Event Hubs you created in the previous step that is “MyEventHub” > select Shared access policies from the event hub pane > select +Add.
  2. ポリシー名を「Mypolicy」に設定し、[管理][作成] の順に選択します。Set the Policy name to Mypolicy > and select Manage > select Create.

    イベント ハブの共有アクセス ポリシーの作成

  3. ポリシーのデプロイが完了したら、ポリシーを選択して開き、[接続文字列 - 主キー] を探して、接続文字列の横にある [コピー] を選択します。After the policy has been deployed, select to open the policy, find the Connection string–primary key and select the copy next to the connection string.

  4. 接続文字列をテキスト エディターに貼り付けます。Paste the connection string into a text editor. この接続文字列は、次のセクションで必要になります。You need this connection string in the next section.

    接続文字列は次のようになります。The connection string looks as follows:

    Endpoint=sb://<Your event hub namespace>.servicebus.windows.net/;SharedAccessKeyName=<Your shared access policy name>;SharedAccessKey=<generated key>;EntityPath=<Your event hub name>

    接続文字列には、Endpoint、SharedAccessKeyName、SharedAccessKey、EntityPath という複数のキーと値のペアが含まれており、セミコロンで区切られています。Notice that the connection string contains multiple key-value pairs, separated with semicolons: Endpoint, SharedAccessKeyName, SharedAccessKey, and EntityPath.

  5. 接続文字列から EntityPath のペアを削除します (その前にあるセミコロンも忘れずに削除してください)。Remove the EntityPath pair from the connection string (don't forget to remove the semicolon that precedes it).

イベント ジェネレーター アプリケーションを起動するStart the event generator application

TelcoGenerator アプリを起動する前に、以前に作成した Azure Event Hubs にデータを送信するよう構成する必要があります。Before you start the TelcoGenerator app, you should configure it to send data to the Azure Event Hubs you created earlier.

  1. TelcoGenerator.zip ファイルの内容を抽出します。Extract the contents of TelcoGenerator.zip file.
  2. 任意のテキスト エディターで TelcoGenerator\TelcoGenerator\telcodatagen.exe.config ファイルを開きます (複数の .config ファイルがあるので、正しいファイルを開くように注意してください)。Open the TelcoGenerator\TelcoGenerator\telcodatagen.exe.config file in a text editor of your choice (There is more than one .config file, so be sure that you open the right one.)

  3. 構成ファイル内の 要素を次の詳細で更新します。Update the element in the config file with the following details:

    • EventHubName キーの値を、接続文字列の EntityPath の値に設定します。Set the value of the EventHubName key to the value of the EntityPath in the connection string.
    • Microsoft.ServiceBus.ConnectionString キーの値を、EntityPath 値を除いた接続文字列 (前のセクションの手順 5 で取得した値) に設定します。Set the value of the Microsoft.ServiceBus.ConnectionString key to the connection string without the EntityPath value that is the value you got from step 5 in the previous section.
  4. ファイルを保存します。Save the file.

  5. 次に、コマンド ウィンドウを開き、TelcoGenerator アプリケーションを解凍したフォルダーに変更し、次のコマンドを入力します。Next open a command window, change to the folder where you have is unzipped the TelcoGenerator application and enter the following command:

    telcodatagen.exe 1000 .2 2
    

    このコマンドは、次のパラメーターを受け取ります。This command takes the following parameters:

    • 1 時間あたりの通話データ レコードの数Number of call data records per hour.
    • 不正の確率のパーセンテージ - アプリが不正な呼び出しをシミュレートする頻度。Percentage of fraud Probability - that is how often, the app should simulate a fraudulent call. 値 .2 は、呼び出しレコードの約 20% が不正に見えることを意味します。The value .2 means that about 20% of the call records will look fraudulent.
    • 継続時間 - アプリを実行する時間数。Duration in hours - the number of hours that the app should run. コマンド ラインでプロセスを終了する (Ctrl + C) ことで、いつでもアプリを停止できます。You can also stop the app any time by ending the process (Ctrl+C) at the command line.

    数秒後に、アプリはイベント ハブに送信する呼び出しレコードを画面に表示し始めます。After a few seconds, the app starts displaying phone call records on the screen as it sends them to the event hub. 通話データには、次のフィールドが含まれています。The phone call data contains the following fields:

    レコードRecord 定義Definition
    CallrecTimeCallrecTime 通話開始時刻のタイムスタンプ。The timestamp for the call start time.
    SwitchNumSwitchNum 通話の接続に使われた電話交換機。The telephone switch used to connect the call. この例では、交換機は発信国を表す文字列です (US、China、UK、Germany、Australia)。For this example, the switches are strings that represent the country of origin (US, China, UK, Germany, or Australia).
    CallingNumCallingNum 発信元の電話番号。The phone number of the caller.
    CallingIMSICallingIMSI IMSI (International Mobile Subscriber Identity: 国際携帯機器加入者識別番号)。The International Mobile Subscriber Identity (IMSI). 発信元の一意識別子。It's a unique identifier of the caller.
    CalledNumCalledNum 通話受信者の電話番号。The phone number of the call recipient.
    CalledIMSICalledIMSI IMSI (International Mobile Subscriber Identity: 国際携帯機器加入者識別番号)。International Mobile Subscriber Identity (IMSI). 通話受信者の一意識別子。It's a unique identifier of the call recipient.

Stream Analytics のジョブの作成Create a Stream Analytics job

通話イベントのストリームを準備できたら、イベント ハブからデータを読み取る Stream Analytics ジョブを作成できます。Now that you have a stream of call events, you can create a Stream Analytics job that reads data from the event hub.

  1. Stream Analytics ジョブを作成するには、Azure Portal に移動します。To create a Stream Analytics job, navigate to the Azure portal

  2. [リソースの作成] > [モノのインターネット (IoT)] > [Stream Analytics ジョブ] の順に選択します。Select Create a resource > Internet of Things > Stream Analytics job.

  3. [新しい Stream Analytics ジョブ] ウィンドウで、次の値を入力します。Fill out the New Stream Analytics job pane with the following values:

    設定Setting 推奨値Suggested value 説明Description
    ジョブ名Job name ASATutorialASATutorial イベント ハブの名前空間を識別する一意の名前。A unique name to identify the event hub namespace.
    サブスクリプションSubscription <該当するサブスクリプション><Your subscription> ジョブを作成する Azure サブスクリプションを選択します。Select an Azure subscription where you want to create the job.
    リソース グループResource group MyASADemoRGMyASADemoRG [既存のものを使用] を選択し、アカウントの新しいリソース グループ名を入力します。Select Use existing and enter a new resource-group name for your account.
    リージョンLocation 米国西部 2West US2 ジョブをデプロイできる場所。Location where the job can be deployed. 最適なパフォーマンスを実現し、リージョン間でのデータ転送の料金がかからないように、ジョブとイベント ハブを同じリージョンに配置することをお勧めします。It's recommended to place the job and the event hub in the same region for best performance and so that you don't pay to transfer data between regions.
    ホスティング環境Hosting environment クラウドCloud Stream Analytics ジョブは、クラウドまたはエッジにデプロイすることができます。Stream Analytics jobs can be deployed to cloud or edge. クラウドでは Azure Cloud にデプロイすることができ、エッジでは IoT エッジ デバイスにデプロイすることができます。Cloud allows you to deploy to Azure Cloud, and Edge allows you to deploy to an IoT edge device.
    [ストリーミング ユニット]Streaming units 11 ストリーミング ユニットとは、ジョブの実行に必要なコンピューティング リソースのことです。Streaming units represent the computing resources that are required to execute a job. 既定では、この値は 1 に設定されています。By default, this value is set to 1. ストリーミング ユニットのスケーリングについては、ストリーミング ユニットの理解と調整に関する記事を参照してください。To learn about scaling streaming units, see understanding and adjusting streaming units article.

    ジョブを作成する

  4. 残りの設定では既定のオプションを使用し、[作成] を選択して、デプロイが成功するまで待ちます。Use default options on the remaining settings, select Create and wait for the deployment to succeed.

ジョブの入力を構成するConfigure job input

次の手順では、データを読み取るためにジョブの入力ソースを定義します。The next step is to define an input source for the job to read data. このチュートリアルでは、前のセクションで作成したイベント ハブを入力として使用します。For this tutorial, you'll use the event hub you created in the previous section as input. ジョブへの入力を構成するには、次の手順を実行します。Run the following steps to configure input to your job:

  1. Azure Portal から [すべてのリソース] ウィンドウを開き、ASATutorial Stream Analytics ジョブを見つけます。From the Azure portal open All resources pane, and find the ASATutorial Stream Analytics job.

  2. [Stream Analytics ジョブ] ウィンドウの [ジョブ トポロジ] セクションで、[入力] オプションを選択します。In the Job Topology section of the Stream Analytics job pane, select the Inputs option.

  3. [+ ストリーム入力の追加] (参照入力は静的な参照データを指しますが、このチュートリアルでは使用しません)、[イベント ハブ] の順に選択し、そのウィンドウに次の値を入力します。Select +Add stream input (Reference input refers to static lookup data, which you won't use in this tutorial), Event hub and then fill out the pane with the following values:

    設定Setting 推奨値Suggested value 説明Description
    入力のエイリアスInput alias CallStreamCallStream 入力を識別するためのわかりやすい名前を入力します。Provide a friendly name to identify your input. 入力のエイリアスに含めることのできる文字は、英数字、ハイフン、アンダースコアのみであり、長さは 3 文字以上 63 文字以下でなければなりません。Input alias can contain alphanumeric characters, hyphens, and underscores only and must be 3-63 characters long.
    サブスクリプションSubscription <該当するサブスクリプション><Your subscription> イベント ハブを作成した Azure サブスクリプションを選択します。Select the Azure subscription where you created the event hub. イベント ハブは、Stream Analytics ジョブと同じサブスクリプションにも別のサブスクリプションにも含めることができます。The event hub can be in same or a different subscription as the Stream Analytics job.
    イベント ハブの名前空間Event hub namespace MyEventHubNSMyEventHubNS 前のセクションで作成した、イベント ハブの名前空間を選択します。Select the event hub namespace you created in the previous section. 現在のサブスクリプションで利用可能なイベント ハブの名前空間がすべて、ドロップダウンに表示されます。All the event hub namespaces available in your current subscription are listed in the dropdown.
    イベント ハブ名Event Hub name MyEventHubMyEventHub 前のセクションで作成したイベント ハブを選択します。Select the event hub you created in the previous section. 現在のサブスクリプションで利用可能なイベント ハブがすべて、ドロップダウンに表示されます。All the event hubs available in your current subscription are listed in the dropdown.
    イベント ハブ ポリシー名Event Hub policy name MypolicyMypolicy 前のセクションで作成した、イベント ハブの共有アクセス ポリシーを選択します。Select the event hub shared access policy you created in the previous section. 現在のサブスクリプションで利用可能なイベント ハブ ポリシーがすべて、ドロップダウンに表示されます。All the event hubs policies available in your current subscription are listed in the dropdown.

    入力の構成

  4. 残りの設定では既定のオプションを使用し、[保存] を選択して、デプロイが正常に完了するまで待ちます。Use default options on the remaining settings, select Save and wait for the deployment to succeed.

ジョブの出力を構成するConfigure job output

最後の手順では、変換後のデータを書き込むことができる場所として、ジョブの出力シンクを定義します。The last step is to define an output sink for the job where it can write the transformed data. このチュートリアルでは、結果を Power BI に出力し、データを視覚化します。For this tutorial, you'll output results to Power BI and visualize the date. ジョブへの出力を構成するには、次の手順を実行します。Run the following steps to configure output to your job:

  1. Azure Portal から [すべてのリソース] ウィンドウを開き、ASATutorial Stream Analytics ジョブを見つけます。From the Azure portal open All resources pane, and the ASATutorial Stream Analytics job.

  2. [Stream Analytics ジョブ] ウィンドウの [ジョブ トポロジ] セクションで、[出力] オプションを選択します。In the Job Topology section of the Stream Analytics job pane, select the Outputs option.

  3. [+ 追加] > [Power BI] の順に選択し、フォームに次の詳細を入力して (表に示されているように、出力エイリアス、データセットの名前、テーブル名を識別するためのわかりやすい名前を入力してください)、[承認] を選択します。Select +Add > Power BI and fill the form with the following details (you can provide a friendly name to identify Output alias, Dataset name and Table name as shown in the table) and select Authorize:

    設定Setting 推奨値Suggested value
    出力エイリアスOutput alias MyPBIoutputMyPBIoutput
    データセットの名前Dataset name ASAdatasetASAdataset
    テーブル名Table name ASATableASATable

    出力の構成

  4. [承認] を選択すると、ポップアップ ウィンドウが開き、Power BI アカウントに対する認証のための資格情報を入力するよう求められます。After you select on Authorize, a pop-up window opens, and you are asked to provide credentials to authenticate to your Power BI account. 認可が成功したら、設定を保存します。Once the authorization is successful, Save the settings.

入力データを分析するようクエリを定義するDefine a query to analyze input data

着信データ ストリームを読み取るように Stream Analytics ジョブを設定したら、次の手順として、データをリアルタイムで分析する変換を作成します。After you have a Stream Analytics job setup to read an incoming data stream, the next step is to create a transformation that analyzes data in real time. 変換クエリの定義には、Stream Analytics クエリ言語を使用します。You define the transformation query by using Stream Analytics Query Language. このチュートリアルでは、通話データから不正な呼び出しを検出するクエリを定義します。In this tutorial, you define a query that detects fraud calls from the phone data.

この例では、不正な呼び出しとは同一ユーザーが 5 秒おきに別々の場所から発信する呼び出しであると考えます。For this example, we consider fraudulent calls are the ones that originate from the same user but in separate locations and the duration between both calls is five seconds. たとえば、合法的に同じユーザーが米国とオーストラリアで同時に呼び出しを行うことはできません。For example, the same user can't legitimately make a call from the US and Australia at the same time. Stream Analytics ジョブの変換クエリを定義するには、次の手順を実行します。To define the transformation query for your Stream Analytics job, run the following steps:

  1. Azure Portal から [すべてのリソース] ウィンドウを開き、前に作成した ASATutorial Stream Analytics ジョブを開きます。From the Azure portal open All resources pane, and open the ASATutorial Stream Analytics job you created earlier.

  2. [Stream Analytics ジョブ] ウィンドウの [ジョブ トポロジ] セクションで、[クエリ] オプションを選択します。In the Job Topology section of the Stream Analytics job pane, select the Query option. ポップアップ ウィンドウでは、そのジョブ用に構成されている入力と出力が一覧表示されており、入力ストリームを変換するためのクエリを作成できます。The pop-up window lists the inputs and outputs that are configured for the job, and lets you create a query to transform the input stream.

  3. 次に、エディターの既存のクエリを次のデータに置き換えます。このクエリでは、5 秒間分の通話データに対して自己結合を実行します。Next, replace the existing query in the editor with the following data, this query performs a self-join on a 5-second interval worth of call data:

    SELECT System.Timestamp AS WindowEnd, COUNT(*) AS FraudulentCalls
    INTO "MyPBIoutput"
    FROM "CallStream" CS1 TIMESTAMP BY CallRecTime
    JOIN "CallStream" CS2 TIMESTAMP BY CallRecTime
    ON CS1.CallingIMSI = CS2.CallingIMSI
    AND DATEDIFF(ss, CS1, CS2) BETWEEN 1 AND 5
    WHERE CS1.SwitchNum != CS2.SwitchNum
    GROUP BY TumblingWindow(Duration(second, 1))
    

    不正な呼び出しを確認するには、CallRecTime の値に基づいてストリーミング データを自己結合する必要があります。To check for fraudulent calls, you should self-join the streaming data based on the CallRecTime value. その後、CallingIMSI の値 (発信番号) は同じなのに SwitchNum の値 (発信国) が異なる通話レコードを探すことができます。You can then look for call records where the CallingIMSI value (the originating number) is the same, but the SwitchNum value (country of origin) is different. ストリーミング データで JOIN 操作を使用する際は、一致する行と見なす最大時間差を結合で制限する必要があります。When you use a JOIN operation with streaming data, the join must provide some limits on how far the matching rows can be separated in time. ストリーミング データは無限であるため、リレーションシップの時間限界は、結合の ON 句内で DATEDIFF 関数を使用して指定します。As the streaming data is endless, the time bounds for the relationship are specified within the ON clause of the join, using the DATEDIFF function.

    このクエリは、DATEDIFF 関数を除けば、通常の SQL 結合と似ています。This query is just like a normal SQL join except for the DATEDIFF function. このクエリで使用されている DATEDIFF 関数は、Streaming Analytics 固有の関数であり、ON...BETWEEN 句内で使用する必要があります。The DATEDIFF function used in this query is specific to Streaming Analytics, and it must appear within the ON...BETWEEN clause.

  4. クエリを保存します。Save the query.

    クエリの定義

クエリをテストするTest your query

クエリは、クエリ エディターからテストできます。クエリをテストするには、サンプル データが必要です。You can test a query from the query editor and you need sample data to test a query. このチュートリアルでは、イベント ハブに送られてくる通話ストリームからサンプル データを抽出します。For this walkthrough, you'll extract sample data from the phone call stream that's coming into the event hub. クエリをテストするには、次の手順を実行します。Run the following steps to test the query:

  1. TelcoGenerator アプリが実行されていて、通話レコードを生成していることを確認します。Make sure that the TelcoGenerator app is running and producing phone call records.

  2. [クエリ] ウィンドウで、CallStream 入力の横にある点を選択し、[入力からのサンプル データ] を選択します。In the Query pane, select the dots next to the CallStream input and then select Sample data from input. これにより、入力ストリームから読み取るサンプル データの量を指定できるウィンドウが開きます。This opens a pane that lets you specify how much sample data to read from the input stream.

    サンプルの入力データ

  3. [分] を 3 に設定し、[OK] を選択します。Set Minutes to 3 and select OK. 3 分間分のデータが入力ストリームからサンプリングされ、サンプル データの準備ができると通知されます。Three minutes worth of data is sampled from the input stream and notifies you when the sample data is ready. 通知バーからサンプリングの状態を確認できます。You can view the status of sampling from the notification bar.

    サンプル データは一時的に保存され、クエリ ウィンドウを開いている間使用できます。The sample data is stored temporarily and is available while you have the query window open. クエリ ウィンドウを閉じると、サンプル データは破棄されるので、サンプル データの新しいセットを作成する必要があります。If you close the query window, the sample data is discarded, and you'll have to create a new set of sample data. 代わりの方法として、サンプル データが含まれている .json ファイルを [GitHub](https://github.com/Azure/azure-stream-analytics/blob/master/Sample Data/telco.json) から入手し、その .json ファイルをアップロードして CallStream 入力のサンプル データとして使用することもできます。As an alternative, you can get a .json file that has sample data in it from [GitHub](https://github.com/Azure/azure-stream-analytics/blob/master/Sample Data/telco.json), and then upload that .json file to use as sample data for the CallStream input.

  4. [テスト] を選択してクエリをテストすると、次のスクリーンショットに示すように出力結果が表示されます。Select Test to test the query, you should see output results as shown in this screenshot:

    テスト出力

ジョブを開始して出力を視覚化するStart the job and visualize output

  1. ジョブを開始するには、ジョブの [概要] ウィンドウに移動し、[開始] を選択します。To start the job, navigate to the Overview pane of your job, and select Start.

  2. ジョブ出力の開始時刻に [現在] を選択し、[開始] を選択します。Select Now for job output start time and select Start. ジョブは数分で開始され、通知バーで状態を確認できます。The job starts in few minutes and you can view the status in the notification bar.

  3. ジョブが成功したら、Powerbi.com に移動して、職場または学校アカウントでサインインします。After the job succeeds, navigate to Powerbi.com and sign in with your work or school account. Stream Analytics ジョブ クエリで結果が出力されると、データセットが既に作成されていることがわかります。If the Stream Analytics job query outputs results, you see that your dataset is already created. [データセット] タブに移動すると、"ASAdataset" という名前のデータセットを確認できます。Navigate to the Datasets tab, you can view a dataset named “ASAdataset”.

  4. ワークスペースから、[+ 作成] を選択します。From your workspace, select +Create. 新しいダッシュボードを作成し、「Fraudulent Calls」という名前を付けます。Create a new dashboard and name it Fraudulent Calls. このダッシュボードに 2 つのタイルを追加します。1 つのタイルは、特定のインスタンスでの不正な呼び出しの回数を表示するために使用され、もう 1 つのタイルには、折れ線グラフが表示されます。You will add two tiles to this dashboard, where one tile is used to view the count of fraudulent calls at a given instance and the other tile has a line chart visualization.

  5. ウィンドウの上部で、[タイルの追加] を選択し、[カスタム ストリーミング データ]、[次へ]、[ASAdataset] の順に選択します。[視覚化タイプ] では、[カード]fraudulentcalls フィールドを選択します。At the top of the window, select Add tile > and select Custom Streaming Data > Next > choose the ASAdataset > for Visualization type select Card > and Fields as fraudulentcalls. [次へ] を選択し、このタイルの名前を入力して、[適用] を選択します。Select Next > enter a name for the tile select Apply.

    タイルの作成

  6. 次のオプションを使用して、もう一度手順 4 を実行します。Follow the steps 4 again, with the following options:

    • [視覚化タイプ] では、[折れ線グラフ] を選択します。When you get to Visualization Type, select Line chart.
    • 軸を追加し、[windowend] を選びます。Add an axis and select windowend.
    • 値を追加し、[fraudulentcalls] を選びます。Add a value and select fraudulentcalls.
    • [表示する時間枠] で、過去 10 分間を選びます。For Time window to display, select the last 10 minutes.
  7. 2 つのタイルが追加されると、ダッシュボードは次のスクリーンショットのように表示されます。Your dashboard looks as following screenshot after both tiles are added. イベント ハブの送信側アプリケーションと Streaming Analytics アプリケーションが実行されている場合、PowerBI ダッシュボードは新しいデータが到着するときに定期的に更新されることがわかります。You'll notice that, if your event hub sender application and Streaming Analytics application are running, your PowerBI dashboard periodically updates as new data arrives.

    Power BI の結果

Web アプリケーションに PowerBI ダッシュボードを埋め込むEmbedding your PowerBI Dashboard in a Web Application

チュートリアルのこの部分では、PowerBI チームが作成したサンプルの ASP.NET Web アプリケーションを使用して、ダッシュボードを埋め込みます。For this part of the tutorial, you'll use a sample ASP.NET web application created by the PowerBI team to embed your dashboard. ダッシュボードの埋め込みの詳細については、記事「Power BI で埋め込み」を参照してください。For more information about embedding dashboards, see embedding with Power BI article.

このチュートリアルでは、ユーザーが所有するデータ アプリケーション用の手順に従います。In this tutorial, we'll follow the steps for the user owns data application. アプリケーションを設定するには、PowerBI-Developer-Samples GitHub リポジトリに移動し、User Owns Data セクションの指示に従います (integrate-dashboard-web-app サブセクションのリダイレクト URL およびホーム ページ URL を使用します)。To set up the application, go to the PowerBI-Developer-Samples Github repository and follow the instructions under the User Owns Data section (use the redirect and homepage URLs under the integrate-dashboard-web-app subsection). ダッシュボードの例を使用しているため、[GitHub リポジトリ](https://github.com/Microsoft/PowerBI-Developer-Samples/tree/master/User Owns Data/integrate-dashboard-web-app)にある integrate-dashboard-web-app サンプル コードを使用します。Since we are using the Dashboard example, use the integrate-dashboard-web-app sample code located in the [GitHub repository](https://github.com/Microsoft/PowerBI-Developer-Samples/tree/master/User Owns Data/integrate-dashboard-web-app). ブラウザーでアプリケーションが実行されるようになったら、次の手順に従って、先ほど作成したダッシュボードを Web ページに埋め込みます。Once you've got the application running in your browser, follow these steps to embed the dashboard you created earlier into the web page:

  1. [Power BI にサインイン] を選択します。これにより、PowerBI アカウントのダッシュボードへのアクセスがアプリケーションに許可されます。Select Sign in to Power BI, which grants the application access to the dashboards in your PowerBI account.

  2. [ダッシュボードの取得] ボタンを選択します。これにより、アカウントのダッシュボードがテーブルに表示されます。Select the Get Dashboards button, which displays your account's Dashboards in a table. 前に作成したダッシュボードの名前 (powerbi-embedded-dashboard) を探し、対応する EmbedUrl をコピーします。Find the name of the dashboard you created earlier (powerbi-embedded-dashboard) and copy the corresponding EmbedUrl.

  3. 最後に、その EmbedUrl を対応するテキスト フィールドに貼り付け、[Embed Dashboard](ダッシュボードの埋め込み) を選択します。Finally, paste the EmbedUrl into the corresponding text field and select Embed Dashboard. これで、Web アプリケーション内に埋め込まれた同じダッシュボードを表示できるようになりました。You can now view the same dashboard embedded within a web application.

次の手順Next steps

このチュートリアルでは、簡単な Stream Analytics ジョブを作成し、着信データを分析して、結果を Power BI ダッシュボードに表示しました。In this tutorial, you have created a simple Stream Analytics job, analyzed the incoming data and presented results in a Power BI dashboard. Stream Analytics ジョブの詳細については、次のチュートリアルに進んでください。To learn more about Stream Analytics jobs, continue to the next tutorial: