Microsoft Power BI
Microsoft Power BI (opens in a new tab) is a popular business intelligence tool.
Cube Cloud works with both Power BI Desktop and Power BI Service (opens in a new tab). If you're using Power BI Service, you need to set up an on-premises data gateway (opens in a new tab).
Connect to the DAX API
Cube Cloud provides the DAX API for the native Power BI connectivity.
Previously, Semantic Layer Sync was recommended as a way to connect to Power BI. Since the introduction of the DAX API, it's now the preferred method.
In Power BI Desktop, choose the SQL Server Analysis Services database option when connecting to a data source. Then, enter the DAX API credentials and choose Windows authentication. It accomodates both Kerberos and NTLM methods.
To find your DAX API credentials, go to the Integrations page, click API credentials, and choose the DAX API tab.
Authentication methods
Cube Cloud supports the following authentication methods for Power BI:
Application | Authentication | Notes |
---|---|---|
Power BI Desktop | NTLM | 🟡 Works well for testing purposes |
Power BI Desktop | Kerberos | 🟢 Recommended for production |
Power BI Service | NTLM + Kerberos | 🟢 Recommended for production. Requires on-premises data gateway |
Connection methods
Power BI provides three methods (opens in a new tab) to connect to data sources: live connection, DirectQuery, and import mode.
Live connection | DirectQuery | ||
---|---|---|---|
Data location | 🟢 Data source | 🟢 Data source | 🟡 Power BI |
Data freshness | 🟢 Real-time data | 🟢 Real-time data | 🟡 Stale copy |
Semantic model | 🟡 Stale copy | 🟡 Stale copy | |
Queries |
It's recommended to use a live connection whenever possible. Use DirectQuery if you need to write your own DAX queries, but be aware that you must manually synchronize semantic models as they evolve. Import mode is not recommended, as it removes the benefits of using a semantic layer.
Connect to the SQL API
You can connect a Cube deployment to Power BI using the SQL API as if Cube is a Postgres database. It would provide much more limited functionality than the DAX API. However, this is the only option when using Cube Core.