Register now to learn Fabric in free live sessions led by the best Microsoft experts. From Apr 16 to May 9, in English and Spanish.
Don't use OData Connector!
Don't retrieve your data with OData.Feed()!
WHY ?
Because until it's fixed the OData connector is not at all doing what you are expecting.
Data retrieval is slow like hell and even worst the size of retrieved data is too huge.
This is because many many HTTP requests are executed instead of a single one.
Even if your use the ODataVersion Parameter or request JSON format; OData.Feed() is just a no go.
OData.Feed("URL",[],[Odataversion=4]) is maybe improving the problem but not solving it.
WHAT ELSE ?
The best alternative when trying to retrieve OData feed is the following
Json.Document(Web.Contents("your REST call",[Headers=[accept="application/json"]])
Example when retrieving data from a SharePoint space
Json.Document(Web.Contents("https://XXXX/BI_Demo/_vti_bin/listdata.svc/GreenWinerySalesBudget?$select=WineType,Year,Budget,ModifiedBy/Name&$expand=ModifiedBy",[Headers=[accept="application/json"]]))
This is what Power BI desktop is doing when using OData.Feed()
Result | Protocol | URL | Body | Caching | Content-Type | Process |
200 | HTTPS | /BI_Demo/_vti_bin/listdata.svc/$metadata | 113,170 | no-cache | application/xml;charset=utf-8 | microsoft.mashup.container.netfx40:9188 |
200 | HTTPS | /BI_Demo/_vti_bin/listdata.svc/GreenWinerySalesBudget?$select=Budget,Id,WineType,Year | 23,969 | no-cache | application/atom+xml;charset=utf-8 | microsoft.mashup.container.netfx40:6636 |
200 | HTTPS | /BI_Demo/_vti_bin/listdata.svc/GreenWinerySalesBudget?$select=WineType,Year,Budget | 813 | no-cache | application/json;charset=utf-8 | microsoft.mashup.container.netfx40:9188 |
200 | HTTPS | /BI_Demo/_vti_bin/listdata.svc/GreenWinerySalesBudget?$select=WineType,Year,Budget | 813 | no-cache | application/json;charset=utf-8 | microsoft.mashup.container.netfx40:9188 |
200 | HTTPS | /BI_Demo/_vti_bin/listdata.svc/GreenWinerySalesBudget?$select=WineType,Year,Budget | 22,700 | no-cache | application/atom+xml;charset=utf-8 | microsoft.mashup.container.netfx40:9188 |
200 | HTTPS | /BI_Demo/_vti_bin/listdata.svc/GreenWinerySalesBudget?$select=WineType,Year,Budget | 813 | no-cache | application/json;charset=utf-8 | microsoft.mashup.container.netfx40:6636 |
200 | HTTPS | /BI_Demo/_vti_bin/listdata.svc/GreenWinerySalesBudget?$select=WineType,Year,Budget | 813 | no-cache | application/json;charset=utf-8 | microsoft.mashup.container.netfx40:6636 |
200 | HTTPS | /BI_Demo/_vti_bin/listdata.svc/GreenWinerySalesBudget?$select=WineType,Year,Budget | 22,700 | no-cache | application/atom+xml;charset=utf-8 | microsoft.mashup.container.netfx40:6636 |
Hi Grumelo,
Can you please send us a frown with the Fiddler traces?
Thanks
I've done it already several days ago, email was send to: pbidesfb@microsoft.com sender was Fred Lorrain from fred.lorrain@atos.net
Thanks, we'll take a look at it and will let you know 🙂
By the way, this issue of calling many time the data source is not limited to OData.feed(); same kind of problem with XML.Document(); I've noticed at least two calls instead of one.
And in Query edit mode it's even worst.
Covering the world! 9:00-10:30 AM Sydney, 4:00-5:30 PM CET (Paris/Berlin), 7:00-8:30 PM Mexico City
Check out the April 2024 Power BI update to learn about new features.
User | Count |
---|---|
113 | |
99 | |
82 | |
70 | |
60 |
User | Count |
---|---|
149 | |
114 | |
107 | |
89 | |
67 |