最佳实践问题:使用 DAX 与在数据库中执行所有操作

Good Practice Question: Using DAX vs Doing Everything in the Database

在 SQL 服务器(或您正在使用的任何数据库)而不是 DAX 中进行所有计算等,并且不惜一切代价避免 DAX 或仅将其用于次要事情是否更好?

我对 DAX 没有经验。

我们在使用 DAX 时遇到了一些性能问题,所以我想知道最佳做法是什么。

数据转换和计算应该在它们有意义的最低级别执行,并且在您舒适且高效的环境中执行。

因此,如果您的所有数据都来自您控制的 SQL 服务器,并且您可以轻松地使用 TSQL 执行数据转换和计算任务,那么您应该做很多准备工作,在那里进行建模和基本计算。

请注意,TSQL 无法表达可应用于任意“筛选器上下文”的复杂业务计算,因此您仍将使用 DAX 进行某些度量计算。

另一方面,如果您没有自己控制的 SQL 服务器,或者您直接在 Power BI 中混合数据,或者您没有 TSQL skillset,那么你应该在 Power Query/DAX 中进行数据转换,在 DAX 中进行业务计算。