由于不同的数据源,事实 table 未连接到 dim
Fact table is not connected to dim because of different datasources
我有一个事实 table,我正在从来源 A
获取数据。
然后,我有源 B
,它与源 A
有一个公共字段。所以,我想知道我应该如何用暗淡的 table 中的键填充事实 table?
这不仅仅是一次简单的数据拉取,因为它需要认真清理。我假设在暂存 tables 中我不应该做任何转换。这是否意味着它看起来像下面这样?
- 将数据从源
B
拉到分段 table。
- 进行清理并将结果保存在 pre_dim table(s)
- 用 (2) 中的 table 加入事实 table 公共字段?
- 创建 dim tables
- Link 用代理键 table 使 table 变暗?
每天截断 (2) 中的 table 并重新创建新的 table - 请参阅 (2)?
你的方向是正确的,但我通常将所有级别(staging、etl、dwh)分开,因为这样更容易控制数据、清理和验证。
所以我会这样做:
- 将数据从源 B 和 A 拉到分段 tables(st_A 和 st_B)。
- 创建 table etl_A 和 etl_B,PK dim_B 和 FK dim_B。
- 截断 table 并将源 B 中的数据插入 etl_B,并在 dim_B.
中创建唯一的 PK 数据
- 截断 table 并从加入 etl_B 的源 A 插入数据(您现在可以填写 FK dim_B)
- 下一步可能是分区交换?或插入,或散装。我不知道你用的是什么RDBMS以及你的目的。
我有一个事实 table,我正在从来源 A
获取数据。
然后,我有源 B
,它与源 A
有一个公共字段。所以,我想知道我应该如何用暗淡的 table 中的键填充事实 table?
这不仅仅是一次简单的数据拉取,因为它需要认真清理。我假设在暂存 tables 中我不应该做任何转换。这是否意味着它看起来像下面这样?
- 将数据从源
B
拉到分段 table。 - 进行清理并将结果保存在 pre_dim table(s)
- 用 (2) 中的 table 加入事实 table 公共字段?
- 创建 dim tables
- Link 用代理键 table 使 table 变暗?
每天截断 (2) 中的 table 并重新创建新的 table - 请参阅 (2)?
你的方向是正确的,但我通常将所有级别(staging、etl、dwh)分开,因为这样更容易控制数据、清理和验证。
所以我会这样做:
- 将数据从源 B 和 A 拉到分段 tables(st_A 和 st_B)。
- 创建 table etl_A 和 etl_B,PK dim_B 和 FK dim_B。
- 截断 table 并将源 B 中的数据插入 etl_B,并在 dim_B. 中创建唯一的 PK 数据
- 截断 table 并从加入 etl_B 的源 A 插入数据(您现在可以填写 FK dim_B)
- 下一步可能是分区交换?或插入,或散装。我不知道你用的是什么RDBMS以及你的目的。