Power BI typically uses datasets that refresh on a schedule. Streaming datasets work differently by pushing new data directly to reports and dashboards as soon as it becomes available. This allows users to see updates almost immediately without waiting for a refresh cycle. Streaming datasets are best suited for real-time monitoring scenarios, such as:
- Displaying shipping activity on a warehouse floor
- Monitoring website visitor activity
- Tracking active orders in progress
- Viewing operational metrics in real time
For analytical reporting and long-term historical analysis, traditional datasets are generally the better option.
Licensing requirements
Streaming datasets require a Power BI Premium license, either through a Premium capacity or a Premium Per User (PPU) license.
Understanding streaming semantic models
Power BI provides different types of streaming semantic models depending on reporting needs.
Push semantic models
Push semantic models retain only the most recent data received by the dataset. These models are useful when reporting only needs to display current values, such as active website visitors or ongoing shipments.
Streaming semantic models
Streaming semantic models retain a limited amount of historical data while continuing to accept new information. This makes them useful for tracking activity and trends over a defined period. Both push and streaming semantic models can receive data through APIs, PowerShell, JSON payloads, cURL requests, and Power Automate flows.
Creating a streaming dataset
To create a streaming dataset in Power BI:
- Open a Power BI workspace.
- Select New and choose Streaming dataset.
- Select API as the data source.
- Enter a dataset name.
- Define the fields expected from the data source.
- Assign the appropriate data types.
- Enable historical data analysis if historical reporting is required.
- Select Create.
Once created, the dataset can be edited later to modify fields or access the push URL.
Sending data to Power BI with Power Automate
Power Automate can be used to send information directly into a streaming dataset. In the demonstrated example:
- A Microsoft Forms submission triggers the flow.
- The response details are retrieved.
- A Power BI action adds rows to the streaming dataset.
- Form fields are mapped to the corresponding dataset columns.
This allows submitted information to appear in Power BI almost immediately after it is captured.
Building reports from streaming data
To use the data in a report:
- Open Power BI Desktop.
- Select Get Data.
- Choose Power BI semantic models.
- Connect to the streaming dataset.
- Create visualizations using the available fields.
- Publish the report to the Power BI Service.
Once published, the report updates automatically as new data arrives.
Viewing real-time updates
After the flow and report are configured, incoming data appears automatically in connected reports. Users can create cards, charts, and other visualizations that reflect changes as they happen. When historical analysis is enabled, reports can also display trends and historical activity alongside real-time information.
Key takeaways
- Streaming datasets provide near real-time updates in Power BI.
- A Power BI Premium license is required for streaming datasets.
- Push semantic models focus on current data, while streaming semantic models retain limited historical information.
- Power Automate can send data directly into streaming datasets using built-in Power BI actions.
- Microsoft Forms can serve as an easy source of streaming data.
- Reports connected to streaming datasets update automatically as new information is received.