Important
此功能以个人预览版提供。 若要试用,请联系 Azure Databricks 联系人。
通过仪表板关系,您可以定义一个限定在 AI/BI 仪表板范围内的语义模型。 可以指定仪表板数据集相互关联的方式,并创建跨多个数据集的可重用度量值。 无需在 SQL 中预先联接数据或跨数据集复制联接逻辑,而是对关系建模,并在仪表板中的所有可视化效果中使用它们。
仪表板关系是仪表板范围的,不创建 Unity 目录对象。 可将它们用于原型设计、针对特定仪表板的分析,或者在将逻辑迁移到 Unity Catalog 之前先进行迭代。 对于必须跨仪表板或其他工具进行治理和共享的指标,请改用 Unity 目录指标视图。 请参阅 Unity 目录指标视图。
要求
若要使用仪表板关系,工作区必须满足以下要求:
- 必须为工作区启用 仪表板关系 公共预览版。 工作区管理员可以从预览门户启用该功能。 请参阅 Manage Azure Databricks 预览版。
- 您必须拥有对仪表板的 CAN EDIT 权限。
- 必须对 SQL 仓库具有 CAN USE 权限。
- 仪表板必须至少有两个数据集。
打开“关系”窗格
若要打开“关系”窗格:
- 在编辑模式下打开 AI/BI 仪表板。
- 单击“数据”选项卡。
- 单击
ERD icon.“数据”选项卡上的。
- 如果仪表板没有语义模型,请单击开始使用关系。 Azure Databricks从仪表板中已有的数据集初始化语义模型。
定义关系
关系联接兼容字段上的两个仪表板数据集并定义基数,以便查询引擎知道如何正确组合它们。
要创建关系:
- 在“ 关系 ”窗格中,单击“ 添加关系”。
- 从该数据集中选择左侧数据集和联接字段。
- 从该数据集中选择正确的数据集和联接字段。
- 请选择基数:
-
多对一:在左侧数据集是事实表、右侧数据集是维度表时使用(例如
orders.customer_id = customers.customer_id)。 - 一对多:当左侧数据集是维度表,右侧数据集是事实数据表时使用。
-
多对一:在左侧数据集是事实表、右侧数据集是维度表时使用(例如
- 单击“ 保存”。
保存关系后,查询引擎会在运行时自动解析每个可视化效果所需的联接。 维度表上的筛选器会传递到相关的事实表,无需在每个数据集定义中手动编写相关子查询。
添加跨数据集度量值
跨数据集度量值是引用相关数据集中的字段的可重用计算。 您可以在“关系”窗格中定义这些关系,任何使用已建模数据集的小组件都可以在可视化编辑器中使用它们。
添加跨数据集度量值:
- 在“ 关系 ”窗格中,单击“ 添加度量值”。
- 输入度量值的名称。
- 定义度量值表达式,引用任何相关数据集中的字段。
- 单击“ 保存”。
只有在相关数据集之间定义了至少一个关系后,才能使用跨数据集度量值。
使用字段选取器
生成可视化效果时,字段选取器会显示由关系连接的所有数据集中的字段,并按数据集名称分组。 选择字段时,字段选取器会根据查询引擎可以解析的内容更新可用性。 将排除导致不明确或不受支持的联接路径的字段。
在 YAML 中编辑
可以在 YAML 中检查和编辑完整的关系模型定义。 单击“关系”窗格中的 YAML 以切换到 YAML 编辑器。 YAML 编辑器可用于查看完整模型、进行批量编辑或将定义复制到另一个仪表板。
注释
仪表板关系的 YAML 架构可能会在公共预览版或正式发布之前更改。
局限性
以下限制适用于此公共预览版中的仪表板关系:
- 仪表板关系仅限于该仪表板,无法在其他界面中复用。 当前公开预览版暂不支持导出到 Unity Catalog。
- 关系必须基于单个等值条件将两个数据集联接起来。 不支持多对多联接、循环图和不明确的联接路径。
- 基数关系仅限于多对一和一对多。 改用桥接表对直接多对多关系进行建模。
- 仪表板最多支持一个语义模型。
- 对于现有的仪表板,可能需要先启动语义模型,然后这些关系才能在可视化编辑器中使用。