Quickstart: Get insights from Deploy Azure IoT Operations to an Arc-enabled Kubernetes cluster


Azure IoT Operations Preview – enabled by Azure Arc is currently in PREVIEW. You shouldn't use this preview software in production environments.

See the Supplemental Terms of Use for Microsoft Azure Previews for legal terms that apply to Azure features that are in beta, preview, or otherwise not yet released into general availability.

In this quickstart, you populate a Power BI report to capture insights from your OPC UA data that you sent to a Microsoft Fabric lakehouse in the previous quickstart. You'll prepare your data to be a source for Power BI, import a report template into Power BI, and connect your data sources to Power BI so that the report displays visual graphs of your data over time.

These operations are the last steps in the sample end-to-end quickstart experience, which goes from deploying Azure IoT Operations at the edge through getting insights from that device data.


Before you begin this quickstart, you must complete the following quickstarts:

You'll also need either a Power BI Pro or Power BI Premium Per User license. If you don't have one of these licenses, you can try Power BI Pro for free at Power BI Pro.

Using this license, download and sign into Power BI Desktop, a free version of Power BI that runs on your local computer. You can download it from here: Power BI Desktop.

What problem will we solve?

Once your OPC UA data has been processed and enriched in the cloud, you'll have a lot of information available to analyze. You might want to create reports containing graphs and visualizations to help you organize and derive insights from this data. The template and steps in this quickstart illustrate how you can connect that data to Power BI to build such reports.

Create a new dataset in the lakehouse

This section prepares your lakehouse data to be a source for Power BI. You'll create a new dataset in your lakehouse that contains the contextualized telemetry table you created in the previous quickstart.

  1. In the lakehouse menu, select New semantic model.

    Screenshot of a Fabric lakehouse showing the New Semantic Model button.

  2. Select OPCUA, the contextualized telemetry table from the previous quickstart, and confirm. This action creates a new dataset and opens a new page.

  3. In this new page, create four measures. Measures in Power BI are custom calculators that perform math or summarize data from your table, to help you find answers from your data. To learn more, see Create measures for data analysis in Power BI Desktop.

    To create a measure, select New measure from the menu, enter one line of measure text from the following code block, and select Commit. Complete this process four times, once for each line of measure text:

    MinTemperature = CALCULATE(MINX(OPCUA, OPCUA[CurrentTemperature]))
    MaxTemperature = CALCULATE(MAXX(OPCUA, OPCUA[CurrentTemperature]))
    MinPressure = CALCULATE(MINX(OPCUA, OPCUA[Pressure]))
    MaxPressure = CALCULATE(MAXX(OPCUA, OPCUA[Pressure]))

    Make sure you're selecting New measure each time, so the measures are not overwriting each other.

    Screenshot of Power BI showing the creation of a new measure.

  4. Select the name of the dataset in the top left, and rename it to something memorable. You will use this dataset in the next section:

    Screenshot of Power BI showing a dataset being renamed.

Configure Power BI report

In this section, you'll import a Power BI report template and configure it to pull data from your data sources.

These steps are for Power BI Desktop, so open that application now.

Import template and load Asset Registry data

  1. Download the following Power BI template: insightsTemplate.pbit.

  2. Open a new instance of Power BI Desktop.

  3. Exit the startup screen and select File > Import > Power BI template. Select the file you downloaded to import it.

  4. A dialog box pops up asking you to input an Azure subscription and resource group. Enter the Azure subscription ID and resource group where you've created your assets and select Load. This loads your sample asset data into Power BI using a custom Power Query M script.

    You may see an error pop up for DirectQuery to AS. This is normal, and will be resolved later by configuring the data source. Close the error.

    Screenshot of Power BI showing an error labeled DirectQuery to AS - quickStartDataset.

  5. The template has now been imported, although it still needs some configuration to be able to display the data. If you see an option to Apply changes that are pending for your queries, select it and let the dashboard reload.

    Screenshot of Power BI Desktop showing a blank report.

  6. Optional: To view the script that imports the asset data, right select Asset from the Data panel on the right side of the screen, and choose Edit query.

    Screenshot of Power BI showing the Edit query button.

    You'll see a few queries in the Power Query Editor window that comes up. Go through each of them and select Advanced Editor in the top menu to view the details of the queries. The most important query is GetAssetData.

    Screenshot of Power BI showing the advanced editor.

    When you're finished, exit the Power Query Editor window.

Configure remaining report visuals

At this point, the visuals in the Power BI report still display errors. That's because you need to get the telemetry data.

  1. Select File > Options and Settings > Data source settings.

  2. Select Change Source.

    Screenshot of Power BI showing the Data source settings.

    This displays a list of data source options. Select the dataset you created in the previous section and select Create.

  3. In the Connect to your data box that opens, expand your dataset and select the OPCUA contextualized telemetry table. Select Submit.

    Screenshot of Power BI showing the Connect to your data options.

    Close the data source settings. The dashboard should now load visual data.

  4. In the left pane menu, select the icon for Model view.

    Screenshot of Power BI showing the Model View button.

  5. Drag assetName in the Asset box to AssetName in the OPCUA box, to create a relationship between the tables.

  6. In the Create relationship box, set Cardinality to One to many (1:*), and set Cross filter direction to Both. Select OK.

    Screenshot of Power BI Create relationship options.

  7. Return to the Report view using the left pane menu. All the visuals should display data now without error.

    Screenshot of Power BI showing the report view.

View insights

In this section, you'll review the report that was created and consider how such reports can be used in your business.

The report is split into two pages, each offering a different view of the asset and telemetry data. On Page 1, you can view each asset and their associated telemetry. Page 2 allows you to view multiple assets and their associated telemetry simultaneously, to compare data points at a specified time period.

Screenshot of Power BI showing page 2 of the report view.

For this quickstart, you only created one asset. However, if you experiment with adding other assets, you'll be able to select them independently on this report page by using CTRL+Select. Take some time to explore the various filters for each visual to explore and do more with your data.

With data connected from various sources at the edge being related to one another in Power BI, the visualizations and interactive features in the report allow you to gain deeper insights into asset health, utilization, and operational trends. This can empower you to enhance productivity, improve asset performance, and drive informed decision-making for better business outcomes.

How did we solve the problem?

In this quickstart, you prepared your lakehouse data to be a source for Power BI, imported a report template into Power BI, and configured the report to display your lakehouse data in report graphs that visually track their changing values over time. This represents the final step in the quickstart flow for using Azure IoT Operations to manage device data from deployment through analysis in the cloud.

Clean up resources

If you're not going to continue to use this deployment, delete the Kubernetes cluster that you deployed Azure IoT Operations to and remove the Azure resource group that contains the cluster.

You can delete your Microsoft Fabric workspace and your Power BI report.

You might also want to remove Power BI Desktop from your local machine.