Tuesday, July 5, 2022

Publish Powerbi Streaming Dataset via API

Streaming dataset can be challenging if not understand right. There are limitations when created from Powerbi workspace i.e. it will always create streaming dataset with FIFO supporting 200,000 rows.

So to enable streaming dataset to support 5 million rows, it would require API calls to create dataset.

Below example using postman posting calls.

  1. First it require Security Token to be sent as part of Post request.
  2. Then inside the Body of Post request, make the body type JSON and define your dataset (see sample dataset). 
  3. Third, we need to make sure to set defaultRetentionPolicy = None passed as request parameter. 

Here is Http post request looks like:

https://api.powerbi.com/v1.0/myorg/groups/<PUT_WORKSPACE_ID_HERE>/datasets?defaultRetentionPolicy=None

Sample dataset in the body of post request:

{
  "name": "Sample_Streaming_Dataset_5m",
  "defaultMode": "PushStreaming",
  "tables": [
    {
      "name": "RealtimeDT5m",
      "columns": [
        {
          "name": "Sales",
          "dataType": "Double"
        },
        {
          "name": "Credits",
          "dataType": "Double"
        },
        {
          "name": "StoreId",
          "dataType": "string"
        },
        {
          "name": "BusinessDay",
          "dataType": "DateTime"
        }
      ]
    }
  ]
}
Posting will create a Streaming Dataset.

HTH

No comments: