You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: articles/stream-analytics/no-code-power-bi-tutorial.md
+39-36Lines changed: 39 additions & 36 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,39 +1,41 @@
1
1
---
2
-
title: Build real-time dashboard with Azure Stream Analytics no-code editor, Synapse Analytics, and Power BI
2
+
title: Build Real-Time Power BI Dashboards With Stream Analytics
3
3
description: Use no code editor to compute aggregations and write to Azure Synapse Analytics and build real-time dashboards using Power BI.
4
+
#customer intent: As a data analyst, I want to build a real-time dashboard using Power BI so that I can visualize streaming data from Azure services.
4
5
author: xujxu
5
6
ms.author: xujiang1
7
+
ms.reviewer: spelluru
6
8
ms.service: azure-stream-analytics
7
9
ms.topic: how-to
8
-
ms.date: 03/29/2024
10
+
ms.date: 03/25/2026
9
11
ms.custom: sfi-image-nochange
10
12
---
11
13
12
14
# Build real-time Power BI dashboards with Stream Analytics no code editor
13
-
This tutorial shows how you can use the Stream Analytics no code editor to compute aggregates on realtime data streams and store it in Azure Synapse Analytics.
15
+
This tutorial shows how to use the Stream Analytics no code editor to compute aggregates on real-time data streams and store them in Azure Synapse Analytics.
14
16
15
17
In this tutorial, you learn how to:
16
18
17
19
> [!div class="checklist"]
18
20
> * Deploy an event generator that sends data to your event hub
19
-
> * Create a Stream Analytics job using the no code editor
21
+
> * Create a Stream Analytics job by using the no code editor
20
22
> * Review input data and schema
21
23
> * Select fields to group by and define aggregations like count
22
-
> * Configure Azure Synapse Analytics to which results will be written
24
+
> * Configure Azure Synapse Analytics to which results are written
23
25
> * Run the Stream Analytics job
24
26
> * Visualize data in Power BI
25
27
26
28
## Prerequisites
27
29
28
-
Before you start, make sure you've completed the following steps:
30
+
Before you start, make sure you complete the following steps:
29
31
30
32
1. If you don't have an Azure subscription, create a [free account](https://azure.microsoft.com/pricing/purchase-options/azure-account?cid=msft_learn).
31
-
2. Deploy the TollApp event generator to Azure, use this link to [Deploy TollApp Azure Template](https://portal.azure.com/#create/Microsoft.Template/uri/https%3A%2F%2Fraw.githubusercontent.com%2FAzure%2Fazure-stream-analytics%2Fmaster%2FSamples%2FTollApp%2FVSProjects%2FTollAppDeployment%2Fazuredeploy.json). Set the 'interval' parameter to 1. And use a new resource group for this step.
32
-
3. Create an [Azure Synapse Analytics workspace](../synapse-analytics/get-started-create-workspace.md) with a [Dedicated SQL pool](../synapse-analytics/get-started-analyze-sql-pool.md#create-a-dedicated-sql-pool).
33
+
1. Deploy the TollApp event generator to Azure. Use this link to [Deploy TollApp Azure Template](https://portal.azure.com/#create/Microsoft.Template/uri/https%3A%2F%2Fraw.githubusercontent.com%2FAzure%2Fazure-stream-analytics%2Fmaster%2FSamples%2FTollApp%2FVSProjects%2FTollAppDeployment%2Fazuredeploy.json). Set the `interval` parameter to 1. Use a new resource group for this step.
34
+
1. Create an [Azure Synapse Analytics workspace](../synapse-analytics/get-started-create-workspace.md) with a [Dedicated SQL pool](../synapse-analytics/get-started-analyze-sql-pool.md#create-a-dedicated-sql-pool).
33
35
> [!NOTE]
34
-
> If you'd like to build the real-time Power BI dashboard directly without capturing the data into database, you can skip step#3 and 4, then go to this guide to [<u>build real-time dashboard with Power BI dataset produced by Stream Analytics job</u>](./no-code-build-power-bi-dashboard.md).
36
+
> If you want to build the real-time Power BI dashboard directly without capturing the data into a database, you can skip steps 3 and 4. Then, go to this guide to [<u>build real-time dashboard with Power BI dataset produced by Stream Analytics job</u>](./no-code-build-power-bi-dashboard.md).
35
37
36
-
4.[Create a table](../synapse-analytics/sql/get-started-visual-studio.md) named `carsummary` using your Dedicated SQL pool. You can do it by running the following SQL script:
38
+
1.[Create a table](../synapse-analytics/sql/get-started-visual-studio.md) named `carsummary`by using your Dedicated SQL pool. Run the following SQL script:
37
39
```SQL
38
40
CREATETABLEcarsummary
39
41
(
@@ -46,13 +48,13 @@ Before you start, make sure you've completed the following steps:
46
48
47
49
48
50
## Use no code editor to create a Stream Analytics job
49
-
1. Locate the Resource Group in which the TollApp event generator was deployed.
50
-
2. Select the Azure Event Hubs **namespace**.
51
-
1. On the **Event Hubs Namespace** page, select**Event Hubs** under **Entities**on the left menu.
52
-
1. Select`entrystream` instance.
51
+
1. Locate the resource group where you deployed the TollApp event generator.
52
+
1. Select the Azure Event Hubs **namespace**.
53
+
1. On the **Event Hubs namespace** page, select**Event Hubs** under **Entities**in the left menu.
54
+
1. Selectthe `entrystream` instance.
53
55
54
56
:::image type="content" source="./media/stream-analytics-no-code/select-event-hub.png" alt-text="Screenshot showing the selection of the event hub." lightbox="./media/stream-analytics-no-code/select-event-hub.png":::
55
-
1. Go to **Process data** under Features sectionand then select**start**on the **Start with blank canvas** template.
57
+
1. Under the **Features** section, go to **Process data**and then select**start**on the **Start with blank canvas** template.
56
58
57
59
:::image type="content" source="./media/stream-analytics-no-code/start-blank-canvas.png" alt-text="Screenshot showing the selection of the Start button on the Start with a blank canvas tile." lightbox="./media/stream-analytics-no-code/start-blank-canvas.png":::
58
60
1. Name your job `carsummary`andselect**Create**.
@@ -64,25 +66,25 @@ Before you start, make sure you've completed the following steps:
64
66
1. For **Authentication mode**, confirm that **Connection String** is used to connect to your event hub: Connection string.
65
67
66
68
:::image type="content" source="./media/stream-analytics-no-code/event-hub-configuration.png" alt-text="Screenshot of the configuration page for your event hub." lightbox="./media/stream-analytics-no-code/event-hub-configuration.png":::
67
-
1. Within few seconds, you see sample input data and the schema. You can choose to drop fields, rename fields or change data type if you want.
69
+
1. Within a few seconds, you see sample input data and the schema. You can choose to drop fields, rename fields,or change data types.
68
70
69
71
:::image type="content" source="./media/stream-analytics-no-code/data-preview-fields.png" alt-text="Screenshot showing the preview of data in the event hub and the fields." lightbox="./media/stream-analytics-no-code/data-preview-fields.png":::
70
72
1. Select**Operations**on the command bar and then select**Group by**.
71
73
72
-
:::image type="content" source="./media/stream-analytics-no-code/select-operations-group-by.png" alt-text="Screenshot showing the Operations menu with Group by selected on the command bar.":::
74
+
:::image type="content" source="./media/stream-analytics-no-code/select-operations-group-by-selection.png" alt-text="Screenshot showing the Operations menu with Group by selected option on the command bar." lightbox="./media/stream-analytics-no-code/select-operations-group-by-selection.png":::
73
75
1. Select the **Group by** tile on the canvas and connect it to the event hub tile.
74
76
75
77
:::image type="content" source="./media/stream-analytics-no-code/connect-group.png" alt-text="Screenshot showing the Group tile connected to the Event Hubs tile." lightbox="./media/stream-analytics-no-code/connect-group.png":::
76
78
1. Configure the **Group by** tile by specifying:
77
79
1. Aggregation as**Count**.
78
-
1. Field as**Make** which is a nested field inside **CarModel**.
80
+
1. Field as**Make**, which is a nested field inside **CarModel**.
79
81
1. Select**Add**.
80
82
81
83
:::image type="content" source="./media/stream-analytics-no-code/group-by-aggregations.png" alt-text="Screenshot of the Aggregations setting in the Group by configuration page." :::
82
84
1. In the **Settings** section:
83
85
1. For **Group aggregations by**, select**Make**.
84
86
1. For **Time window**, confirm that the value is set to **Tumbling**.
85
-
1. For **Duration**, enter **3 minutes**
87
+
1. For **Duration**, enter **3 minutes**.
86
88
1. Select**Done** at the bottom of the page.
87
89
88
90
:::image type="content" source="./media/stream-analytics-no-code/group-settings.png" alt-text="Screenshot of the Group by configuration page." lightbox="./media/stream-analytics-no-code/group-settings.png":::
@@ -95,7 +97,7 @@ Before you start, make sure you've completed the following steps:
95
97
1. Add the **Make** field as shown in the following image, and then select**Add**.
96
98
97
99
:::image type="content" source="./media/stream-analytics-no-code/add-make-field.png" alt-text="Screenshot showing the addition of the Make field." lightbox="./media/stream-analytics-no-code/add-make-field.png":::
98
-
2. Select**Add** button.
100
+
1. Select**Add**.
99
101
100
102
:::image type="content" source="./media/stream-analytics-no-code/add-make-field-button.png" alt-text="Screenshot showing the Add button on the Manage fields page.":::
101
103
1. Select**Add all fields**on the **Manage fields** configuration page.
@@ -124,27 +126,27 @@ Before you start, make sure you've completed the following steps:
124
126
1. Select the database of the Dedicated SQL pool that you used to create the `carsummary` table in the previous section.
125
127
1. Enter username and password to authenticate.
126
128
1. Enter table name as`carsummary`.
127
-
1. Select**Connect**. You see sample results that will be written to your Synapse SQL table.
129
+
1. Select**Connect**. You see sample results that are written to your Synapse SQL table.
128
130
129
131
:::image type="content" source="./media/stream-analytics-no-code/synapse-settings.png" alt-text="Screenshot of the Synapse tile settings." lightbox="./media/stream-analytics-no-code/synapse-settings.png":::
130
132
1. Select**Synapse** tile and see the **Data preview** tab at the bottom of the page. You see the data flowing into the dedicated SQL pool.
131
133
132
134
:::image type="content" source="./media/stream-analytics-no-code/synapse-data-preview.png" alt-text="Screenshot that shows Data Preview for the Synapse tile." lightbox="./media/stream-analytics-no-code/synapse-data-preview.png":::
133
135
1. Select**Save**in the top ribbon to save your job and then select**Start**.
134
-
:::image type="content" source="./media/stream-analytics-no-code/start-job-button.png" alt-text="Screenshot that shows the Start button selected on the command bar." lightbox="./media/stream-analytics-no-code/start-job-button.png":::
136
+
:::image type="content" source="./media/stream-analytics-no-code/start-job-button.png" alt-text="Screenshot that shows the Start button on the command bar." lightbox="./media/stream-analytics-no-code/start-job-button.png":::
135
137
1. On the **Start Stream Analytics Job** page, select**Start** to run your job.
136
138
137
139
:::image type="content" source="./media/stream-analytics-no-code/start-analytics-job.png" alt-text="Screenshot of the Start Stream Analytics Job page." lightbox="./media/stream-analytics-no-code/start-analytics-job.png":::
138
-
1. You then see a list of all Stream Analytics jobs created using the no code editor. And within two minutes, your job goes to a **Running** state. Select the **Refresh** button on the page to see the status changingfrom Created -> Starting -> Running.
140
+
1. You then see a list of all Stream Analytics jobs created using the no code editor. And within two minutes, your job goes to a **Running** state. Select the **Refresh** button on the page to see the status changefrom Created -> Starting -> Running.
139
141
140
142
:::image type="content" source="./media/stream-analytics-no-code/job-list.png" alt-text="Screenshot showing the list of jobs." lightbox="./media/stream-analytics-no-code/job-list.png":::
141
143
142
144
## Create a Power BI visualization
143
-
1. Download the latest version of [Power BI desktop](https://powerbi.microsoft.com/desktop).
144
-
2. Use the Power BI connector for Azure Synapse SQL.
145
+
1. Download the latest version of [Power BI Desktop](https://powerbi.microsoft.com/desktop).
146
+
1. Use the Power BI connector for Azure Synapse SQL.
145
147
146
148
:::image type="content" source="./media/stream-analytics-no-code/power-bi-get-data-azure-synapse.png" alt-text="Screenshot that shows the Power BI Desktop with Azure and Synapse Analytics SQL selected." lightbox="./media/stream-analytics-no-code/power-bi-get-data-azure-synapse.png":::
147
-
1. Connect to your database with**DirectQuery**, and use this query to fetch data from your database
149
+
1. Connect to your database by using**DirectQuery**, and use this query to fetch data from your database
148
150
149
151
```SQL
150
152
SELECT [Make],[CarCount],[times]
@@ -154,29 +156,30 @@ Before you start, make sure you've completed the following steps:
154
156
155
157
:::image type="content" source="./media/stream-analytics-no-code/power-bi-direct-query.png" alt-text="Screenshot that shows the configuration of Power BI Desktop to connect to Azure Synapse SQL Database." lightbox="./media/stream-analytics-no-code/power-bi-direct-query.png":::
156
158
157
-
Switch to **Database** tab, and enter your credentials (user name and password) to connect to the database and run the query.
158
-
1. Select**Load** to load data into the Power BI.
159
+
Switch to the **Database** tab, and enter your credentials (user name and password) to connect to the database and run the query.
160
+
1. Select**Load** to load data into Power BI.
159
161
1. You can then create a line chart with
160
162
* X-axis astimes
161
163
* Y-axis as CarCount
162
164
* Legend as Make
163
-
You'll then see a chart that can be published. You can configure [automatic page refresh](/power-bi/create-reports/desktop-automatic-page-refresh#authoring-reports-with-automatic-page-refresh-in-power-bi-desktop) and set it to 3 minutes to get a real-time view.
164
-
[](./media/stream-analytics-no-code/no-code-power-bi-real-time-dashboard.png#lightbox)
165
+
You see a chart that you can publish. You can configure [automatic page refresh](/power-bi/create-reports/desktop-automatic-page-refresh#authoring-reports-with-automatic-page-refresh-in-power-bi-desktop) and set it to 3 minutes to get a real-time view.
166
+
[:::image type="content" source="./media/stream-analytics-no-code/no-code-power-bi-real-time-dashboard.png" alt-text="Screenshot of Power BI dashboard showing car summary data.":::](./media/stream-analytics-no-code/no-code-power-bi-real-time-dashboard.png#lightbox)
167
+
165
168
166
-
## More option
169
+
## More options
167
170
168
-
Except the Azure Synapse SQL, you can also use the SQL Database as the no-code editor output to receive the streaming data. And then use Power BI connector to connect the SQL Database with your database with **DirectQuery** as well to build the real-time dashboard.
171
+
Besides Azure Synapse SQL, you can also use SQL Database as the no-code editor output to receive the streaming data. Then use the Power BI connector to connect to the SQL Database with your database by using **DirectQuery** to build the real-time dashboard.
169
172
170
173
It's also a good option to build the real-time dashboard with your streaming data. For more information about the SQL Database output, see [Transform and ingest to SQL Database](./no-code-transform-filter-ingest-sql.md).
171
174
172
175
173
176
## Clean up resources
174
-
1. Locate your Event Hubs instance and see the list of Stream Analytics jobs under **Process Data** section. Stop any jobs that are running.
175
-
2. Go to the resource group you used while deploying the TollApp event generator.
176
-
3. Select**Delete resource group**. Type the name of the resource group to confirm deletion.
177
+
1. Locate your Event Hubs instance and see the list of Stream Analytics jobs under the **Process Data** section. Stop any running jobs.
178
+
1. Go to the resource group you used while deploying the TollApp event generator.
179
+
1. Select **Delete resource group**. To confirm deletion, type the name of the resource group.
177
180
178
181
## Next steps
179
-
In this tutorial, you created a Stream Analytics job using the no code editor to define aggregations and write results to Azure Synapse Analytics. You then used the Power BI to build a real-time dashboard to see the results produced by the job.
182
+
In this tutorial, you created a Stream Analytics job by using the no code editor to define aggregations and write results to Azure Synapse Analytics. You then used Power BI to build a real-time dashboard to see the results produced by the job.
180
183
181
184
> [!div class="nextstepaction"]
182
185
> [No code stream processing with Azure Stream Analytics](https://aka.ms/asanocodeux)
0 commit comments