ETL 系统中维度与事实表处理技术详解
1. 缓慢变化维度管理器
在 ETL 架构里,实现缓慢变化维度(SCD)逻辑的能力是极为重要的元素。当数据仓库收到维度中现有行发生变化的通知时,通常有三种基本响应方式:类型 1 覆盖、类型 2 添加新行、类型 3 添加新列。SCD 管理器需系统地运用这些技术处理维度中的时间差异,并为类型 2 变化维护适当的内务列。
以下是 SCD 代理键管理的处理流程:
graph LR
classDef process fill:#E5F6FF,stroke:#73A6FF,stroke-width:2px
A(源中的新记录<br>(不在交叉引用中)):::process -->|插入| B(更新):::process
C(更新字段):::process -->|类型 1 或 3| D(更新):::process
C -->|字段是类型 2| E(插入):::process
F(CRC 选项):::process -->|CRC 不同| G(最近代理键映射):::process
F -->|CRC 匹配| H(忽略):::process
I(分配代理键并设置日期/指示器):::process --> J(更新维度属性):::process
I --> K(更新先前最近的行):::process
L(查找特定更改的字段):::process --> C
M(源提取 CRC):::process --> N(比较主维度交叉引用):::process
超级会员免费看
订阅专栏 解锁全文
600

被折叠的 条评论
为什么被折叠?



