创建和管理聚合

已完成

聚合数据时,你会汇总该数据,以更高粒度(级别)呈现该数据。 例如,可以汇总所有销售数据并按日期、客户、产品等对其进行分组。 聚合过程减小了语义模型中的表大小,使你可以专注于重要数据并帮助提高查询性能。

显示聚合数据背后的理论的屏幕截图。

组织可能会由于以下原因而决定在其语义模型中使用聚合:

  • 如果要处理大量数据(大数据),则聚合将提供更好的查询性能,并帮助分析和显示此大型数据的见解。 聚合数据会进行缓存,因而使用的资源是详细数据所需资源的一小部分。

  • 如果遇到刷新速度缓慢,则聚合会帮助你加快刷新过程。 较小的缓存大小会缩短刷新时间,因此数据可更快地呈现给用户。 可改为刷新较少的数据量,而不是刷新数百万行。

  • 如果语义模型较大,则聚合可以帮助减小和维持模型的大小。

  • 如果预计语义模型的大小会在将来不断增长,则可以使用聚合减少出现性能和刷新问题以及整体查询问题的可能性,从而作为使语义模型面向未来的主动步骤。

继续讨论 Tailwind Traders 方案,你已执行了几个步骤来优化语义模型的性能,但 IT 团队通知你文件大小仍然太大。 文件大小当前为 1 GB,因此需要将它减小到大约为 50 MB。 在性能评审过程中,你确定以前的开发人员未在语义模型中使用聚合,因此现在要为销售数据创建一些聚合,以减小文件大小并进一步优化性能。

创建聚合

开始创建聚合之前,应确定要用于创建聚合的粒度(级别)。 在此示例中,你要在天级别上聚合销售数据。

确定粒度后,下一步是确定要如何创建聚合。 可以通过不同方法创建聚合,并且每种方法都会生成相同的结果,例如:

  • 如果你有权访问数据库,则可以使用聚合创建包含聚合的一个表,然后将该表导入 Power BI Desktop 中。

  • 如果你有权访问数据库,则可以创建聚合视图,然后将该视图导入 Power BI Desktop 中。

  • 在 Power BI Desktop 中,可以使用 Power Query 编辑器逐步创建聚合。

在此示例中,你会在 Power Query 编辑器中打开一个查询,注意数据尚未聚合;其行数超过 999 行,如以下屏幕截图所示。

显示聚合前总行数的屏幕截图。

你要按 OrderDate 列聚合数据,并查看 OrderQuantity 和 SalesAmount 列。 首先在“开始”选项卡上选择“选择列”。在显示的窗口中,选择要包含在聚合中的列,然后选择“确定”。

显示在聚合数据时如何选择列的屏幕截图。

所选列显示在页面上时,在“开始”选项卡上选择“分组依据”选项。在显示的窗口中,选择要按其进行分组的列 (OrderDate) 并为新列输入名称 (OnlineOrdersCount)。

选择“高级”选项,然后选择“添加聚合”按钮以显示另一个列行。 输入聚合列的名称,选择该列的操作,然后选择要将聚合链接到的列。 重复这些步骤,直到添加了所有聚合,然后选择“确定”。

显示如何使用“分组依据”按钮的屏幕截图。

聚合可能需要几分钟才能显示,但是当它进行显示时,你会看到数据是如何转换的。 数据将聚合到每个日期,你能够查看订单计数的值,以及销售金额和订单数量的相应总数。

聚合后生成的表的屏幕截图。

选择“关闭并应用”按钮以关闭 Power Query 编辑器并将更改应用于语义模型。 返回到“Power BI Desktop”页面,然后选择“刷新”按钮以查看结果。 观察屏幕,因为一个简要消息会显示语义模型现在包含的行数。 此行数应显著小于开始的数量。 再次打开 Power Query 编辑器时,也可以看到此数量,如以下屏幕截图中所示。 在此示例中,行数缩小到 30。

聚合后的总行数和列数的屏幕截图。

请记住,开始时的行数超过 999 行。 使用聚合显著减少了语义模型中的行数,这意味着 Power BI 要刷新的数据更少,模型的性能应更好。

管理聚合

创建聚合后,可以在 Power BI Desktop 中管理这些聚合,并在需要时对其行为进行更改。

可以从 Power BI Desktop 的任何视图中打开“管理聚合”窗口。 在“字段”窗格中,右键单击表,然后选择“管理聚合”。

显示“管理聚合”窗口的屏幕截图。

对于每个聚合列,可以从“汇总”下拉列表中选择一个选项,然后对所选详细信息表和列进行更改。 完成聚合管理后,选择“全部应用”。

有关如何创建和管理聚合的详细信息,请参阅在 Power BI Desktop 中使用聚合