改进模型计算

已完成

计算列可能会出现问题,因为从技术上讲,可以在查询编辑器或 Power BI Desktop 上的数据分析表达式 (DAX) 中创建它们。 通常情况下,你有一个决定性因素来确定何时何地创建计算列:计算列是否涉及多个表。 如果计算列涉及多个表,则使用 DAX;否则,将优化查询编辑器以处理新的列。

在数据库中创建计算列时,便可以享受压缩的优势,这类似于任何其他列。 如果计算列是使用 DAX 创建的,则其作用更像是一种度量,且每次使用时都会进行计算和重新计算。 此过程可能会降低性能。

通常,改进计算与其说是一门科学,不如说是一门艺术,但有几种方法可以帮助你提高计算性能:变量、避免迭代器函数和 DAX Studio。

使用变量

变量有助于减少相互依赖性和计算时间。 如果计算引用变量,则它会计算一次变量,而不是每次使用计算时计算一次。 使用变量还可以减少计算之间的相互依赖。

注意

对于许多 Tableau 用户而言,使用变量将是一种背离,因为他们嵌套了自己的计算。

避免迭代器函数

迭代器函数可能很有用;但是,由于使用的是列式存储,评估数据中每行的任何计算都将影响性能。 若要优化性能,请确保在使用迭代器函数之前检查替代方案。

通过 DAX Studio 提高性能

如果想要提高性能或语法,则可以使用 DAX Studio。 DAX Studio 是一种与 Power BI 完全集成的外部工具,可帮助评估计算性能。