确定 Power BI 数据集的类型

已完成

使用“针对客户”方案强制实施 RLS 时,应用必须设置有效标识。 设置有效标识的方式取决于应用所需的 Power BI 数据集的类型。

可以考虑四种不同类型的数据集。 这些类型由托管模型的位置和模型框架确定。 本单元的其余部分将介绍四种不同类型的数据集。

根据定义,Power BI 数据集是表示 Power BI 中可视化的数据源的项目。 通常,数据集表示数据模型,这些模型是针对分析报告进行了优化的可查询数据资源。

模型体系结构

大多数 Microsoft 数据模型都是表格模型。 表格模型包含一个或多个表。 其他 Microsoft 数据模型是多维的。 多维模型依赖于较旧的(但仍相关的)技术(包括维度和度量值组)。 多维模型通常称为多维数据集。

注意

与表格模型一样,多维模型使用角色强制实施数据权限。 但是,它们不使用规则来定义筛选器,它们依赖于多维表达式 (MDX) 而不是 DAX。 虽然多维模型不强制使用 RLS(因为多维模型不存储数据行),但它们强制实施等效要求,以生成(静态和动态)表格模型规则相同的结果。

模型托管

数据模型可以是内部托管模型,也可以是外部托管模型。 内部托管模型驻留在 Power BI 内,而外部托管模型则托管在 Power BI 外部。

内部托管模型驻留在 Power BI 工作区中。 Microsoft 外部托管模型驻留在 Azure Analysis ServicesSQL Server Analysis Services 中。 SQL Server Analysis Services 可以托管表格模型和多维模型,Power BI 需要使用网关才能连接到它们。

注意

Power BI 与外部托管模型的连接称为实时连接。

模型框架

表格模型中的每个表(计算表除外)具有存储模式设置(“导入”、“双”或“DirectQuery”)。

设置为使用“导入”存储模式的模型表将以物理方式加载和存储源数据。 它依赖于常规数据刷新来使数据保持最新状态。 导入存储提供最快的查询性能,但在有大量数据的情况下,可能效率低下(或成本高)。 此外,如果用户需要最新数据,可能无法以足够的频率刷新数据集(因为每日限制)。

相反,使用 DirectQuery 存储模式的模型永远不会存储源数据。 查询模型表时,模型会改为查询源数据。 这称为传递查询。 如果有大量数据,或者需要报告最新数据,则 DirectQuery 存储模式可能是一个不错的选择。

将表设置为使用“双”存储模式时,它可以充当导入表或 DirectQuery 表。 对于每个查询,模型查询引擎确定要使用的最高效(最快)模式。

摘要

若要正确设置有效标识,必须确定你拥有的数据集类型:

  • 使用导入表进行内部托管

  • 使用 DirectQuery 表进行内部托管

  • Azure Analysis Services,它是外部托管模型

  • SQL Server Analysis Services,它是外部托管模型