Hi Silentsquirrel,
For reporting with PowerBI there are 4 different options available:
1. Directly via OData using the data entities marked as public
Although this option is the easiest, it is also the most limited. It is not recommended to use this option for big data sets (transactional data in general) and only for aggregate functions, OData is not meant as a tool for transfering big amounts of data.
2. Bring your Own Database (= external database, in general an Azure SQL Database)
This uses your own Azure SQL database to which you can export data, the data in this database is yours to control and use. So, whether you export it to a database or a data warehouse or whatever you want to call it, it does not matter as long as you can export to it. After exporting you can off course use this data with PowerBI, or do some ETL processes first in the DB. This method uses the data management framework and allows you to export data entities via planned jobs.
More information --> https://docs.microsoft.com/en-us/dynamics365/fin-ops-core/dev-itpro/analytics/export-entities-to-your-own-database
3. Create embedded reports based on the entity store
This can be best described as the "internal" entity store reporting. The result here would be embedded reports you can use in workspaces.
More information --> https://docs.microsoft.com/en-us/dynamics365/fin-ops-core/dev-itpro/analytics/power-bi-integration-entity-store
4. Create BI reports based on the entity store in the data lake
A new feature is to push the entity store to an Azure Data Lake, in this data lake you can report on whatever method you want.
https://docs.microsoft.com/en-us/dynamics365/fin-ops-core/dev-itpro/data-entities/entity-store-data-lake
Hope this helps.
Best regards,
Ties Philippi