实现星型模式

使用 Microsoft Fabric 进行数据转换与分析

Luis Silva

Solution Architect - Data & AI

勋章架构

勋章数据架构示意图,展示从数据源摄取到 Bronze 层、转换为 Silver 层的清洗数据,并在 Gold 层进一步转换为适用于分析的星型模式

  • 组织数据的设计模式
  • 三个层次,表示数据逐步精炼
使用 Microsoft Fabric 进行数据转换与分析

勋章架构

勋章数据架构示意图,突出显示 Bronze 层

  • Bronze 层: 从源摄取的原始格式数据。
使用 Microsoft Fabric 进行数据转换与分析

勋章架构

勋章数据架构示意图,突出显示 Silver 层

  • Silver 层: 清洗并标准化的数据。
使用 Microsoft Fabric 进行数据转换与分析

勋章架构

勋章数据架构示意图,突出显示 Gold 层

  • Gold 层: 适用于分析的数据,通常为星型模式。
使用 Microsoft Fabric 进行数据转换与分析

Fabric 中的勋章架构

Fabric 中的勋章数据架构示意图,展示用于将数据从源摄取到 Bronze 层 lakehouse 的数据管道,使用 Spark 笔记本和数据流将数据转换到 Silver 层 lakehouse,并在 Gold 层的仓库中进一步转换为星型模式。

  • Bronze 层:Lakehouse
  • Silver 层:Lakehouse
  • Gold 层:Lakehouse 或 Warehouse
使用 Microsoft Fabric 进行数据转换与分析

实施星型模式

  • 使用 T-SQL CREATE TABLE 语句定义表。
  • Fabric 支持最常用的 T-SQL 数据类型。

仓库布局截图,展开的 dw-sales 架构显示其包含一个事实表和多个维度表

星型模式示意图

使用 Microsoft Fabric 进行数据转换与分析

维度表结构

  • 描述业务实体(如产品)。
  • 通常包含以下列:

名为 Dim Product 的示例维度表,包含 Product ID、Product Key、Product Name 和 Product Brand 列

使用 Microsoft Fabric 进行数据转换与分析

维度表结构

  • 描述业务实体(如产品)。
  • 通常包含以下列:
    • 代理键(Surrogate Key): 维度项的单列唯一标识符。

名为 Dim Product 的示例维度表,包含 Product ID、Product Key、Product Name 和 Product Brand。Product ID 以代理键高亮显示

使用 Microsoft Fabric 进行数据转换与分析

维度表结构

  • 描述业务实体(如产品)。
  • 通常包含以下列:
    • 代理键(Surrogate Key): 维度项的单列唯一标识符。
    • 自然键(业务键): 来自源系统的单列唯一标识符。

名为 Dim Product 的示例维度表,包含 Product ID、Product Key、Product Name 和 Product Brand。Product Key 以自然键高亮显示

使用 Microsoft Fabric 进行数据转换与分析

维度表结构

  • 描述业务实体(如产品)。
  • 通常包含以下列:
    • 代理键(Surrogate Key): 维度项的单列唯一标识符。
    • 自然键(业务键): 来自源系统的单列唯一标识符。
    • 维度属性: 一列或多列,用于筛选数据,并为事实表中的数据提供上下文。

名为 Dim Product 的示例维度表,包含 Product ID、Product Key、Product Name 和 Product Brand。Product Name 和 Product Brand 以维度属性高亮显示

使用 Microsoft Fabric 进行数据转换与分析

构建维度表

使用 CREATE TABLE 语句创建示例维度表 dim_Product 的 T-SQL 脚本

名为 Dim Product 的示例维度表,包含 Product ID、Product Key、Product Name 和 Product Brand。Product ID 为代理键,Product Key 为自然键,Product Name 和 Product Brand 为维度属性

使用 Microsoft Fabric 进行数据转换与分析

事实表结构

  • 描述业务事件(如产品销售)。
  • 列:

名为 Fact Sales 的示例事实表,包含 Date ID、Store ID、Product ID、Customer ID、Payment ID、Packaging Notes、Sale Order Number、Sale Units 和 Sale Price 列

使用 Microsoft Fabric 进行数据转换与分析

事实表结构

  • 描述业务事件(如产品销售)。
  • 列:
    • 维度键: 引用维度表的代理键。

名为 Fact Sales 的示例事实表,包含 Date ID、Store ID、Product ID、Customer ID、Payment ID、Packaging Notes、Sale Order Number、Sale Units 和 Sale Price。Date ID、Store ID、Product ID、Customer ID 和 Payment ID 以维度键高亮显示

使用 Microsoft Fabric 进行数据转换与分析

事实表结构

  • 描述业务事件(如产品销售)。
  • 列:
    • 维度键: 引用维度表的代理键。
    • 属性: 提供关于事实的附加信息,但既不是维度也不是数值度量。

名为 Fact Sales 的示例事实表,包含 Date ID、Store ID、Product ID、Customer ID、Payment ID、Packaging Notes、Sale Order Number、Sale Units 和 Sale Price。Packaging Notes 和 Sale Order Number 以属性高亮显示

使用 Microsoft Fabric 进行数据转换与分析

事实表结构

  • 描述业务事件(如产品销售)。
  • 列:
    • 维度键: 引用维度表的代理键。
    • 属性: 提供关于事实的附加信息,但既不是维度也不是数值度量。
    • 度量: 对事实进行量化;为数值型,通常可加,总件数、金额等。

名为 Fact Sales 的示例事实表,包含 Date ID、Store ID、Product ID、Customer ID、Payment ID、Packaging Notes、Sale Order Number、Sale Units 和 Sale Price。Sale Units 和 Sale Price 以度量高亮显示

使用 Microsoft Fabric 进行数据转换与分析

构建事实表

使用 CREATE TABLE 语句创建示例事实表 fact_Sales 的 T-SQL 脚本

名为 Fact Sales 的示例事实表,包含 Date ID、Store ID、Product ID、Customer ID、Payment ID、Packaging Notes、Sale Order Number、Sale Units 和 Sale Price

使用 Microsoft Fabric 进行数据转换与分析

Let's practice!

使用 Microsoft Fabric 进行数据转换与分析

Preparing Video For Download...