Power BI 微课堂 | 第17课:创建和管理数据关系

published: 2023-10-20

今天,我们开始学习“数据建模”相关课程:创建和管理数据关系,了解 Power BI 中数据建模的基础概念,并学习如何创建和管理数据的关系。


》数据建模简介

通常,我们需要连接到多个数据源以创建报表,这些数据需要协同工作才能创建一致的报表。而数据建模是指准备好连接的数据以供使用,通常会涉及以下操作:

  • 创建数据源之间的关系

  • 使用计算列创建新字段

  • 通过隐藏字段和对可视化数据排序来优化数据

  • 创建度量值以对数据执行计算

  • 使用计算表创建两个表之间的关系

  • 格式化时间数据,以便可以向下钻取更多详细信息

值得一提的是,Power BI 的优势之一是无需将数据合并为一个表, 而是可以使用来自多个数据源的多个表并定义它们之间的关系。关系使 Power BI 能够将表彼此连接,这样就可以创建视觉对象和报表。此外,还可以创建自定义计算,并分配新指标以查看数据的特定部分。

下面,我们将首先了解数据建模和管理的第一部分:如何创建和管理数据关系。


》如何管理数据关系

借助 Power BI Desktop 中的“模型视图”,我们可以直观地设置表或元素之间的关系。

如果有关系,两个或多个表会链接在一起,因为它们包含相关的数据。这样,用户就能跨多个表运行对相关数据的查询。使用“模型”视图查看数据的关系图视图。

请注意,在“模型视图”中,块表示每个表,它们之间的线表示关系。

添加和删除关系的操作非常简单。

要删除关系,请右键单击该关系(线),然后选择“删除”。

若要创建关系,请从一个表(块)中将字段拖放到要链接的另一个表(块)的字段上。

要在报表中隐藏表或单个列,请右键单击“模型”视图中的表或列,然后在下拉菜单中选择“在报表视图中隐藏”。

如需查看数据关系的详细视图,可以在“主页”选项卡上,选择“管理关系”。“管理关系”对话框会将关系显示为列表而非直观图表。

在对话框中,可以选择“自动检测”,以查找新数据或更新数据中的关系。或者选择“编辑”,可以手动编辑关系。

在 “编辑关系”窗格中提供了高级选项,可用于设置关系的基数和交叉筛选方向。

默认情况下,Power BI Desktop 会根据最佳推测自动配置更多选项,但每个关系的配置可能会根据列中数据有所不同。

》基数选项

  • 多对一(*:1):多对一是最常见的默认关系类型。这意味着一个给定表中的列可具有一个值的多个实例,而另一个相关表(通常称为查找表)仅具有一个值的一个实例。

  • 一对一(1:1):在一对一关系中,一个表中的列仅具有特定值的一个实例,而另一个相关表也是如此。

  • 一对多(1:*):在一对多关系中,一个表中的列仅具有特定值的一个实例,而另一个相关表可具有一个值的多个实例。

  • 多对多 (*:*):借助复合模型,可以在表之间建立多对多关系,从而消除了表中对唯一值的要求。它还删除了旧解决办法,如为建立关系而仅引入新表。

》交叉筛选器方向

  • 两个(双向):出于筛选目的,两个表被视为如同一个表。“双向”设置非常适用于其周围具有多个查找表的单个表。例如,具有部门查找表的实际销售额表。此配置通常称为星型架构配置(如下图所示,表示一个具有多个查找表的中心表)。但是,如果你拥有两个或多个具有查找表(部分查找表共有)的表,则“双向”设置不适合。

  • 单个(单向):最常用的默认方向,这意味着连接表中的筛选选项适用于将求值总和的表。如果你在 Excel 2013 或更早的数据模型中导入了 Power Pivot,则所有关系都将具有单个方向。

需要强调的是,一般情况下,建议尽量减少使用双向关系。它们可能会对模型查询性能产生负面影响,且可能会为报表用户提供混乱的体验。

如此,通过在数据之间设置准确的关系,你可以跨多个数据元素创建复杂的计算。