0

在每月增量加载的 DWH 中,我的任务是创建能够在 DWH 中重新加载随机月份的进程。

假设在现有 DWH 中重新加载 2021 年 2 月的数据。

如果我在 2021 年 8 月 15 日重新加载 2021 年 2 月的数据,我的 SCD2 维度客户最终将如下所示:

昏暗的顾客

在下一次加载之前,我可能有错误的维度属性。DateFrom/DateTo 中的日期会被弄乱。

问题:

  1. 这是重新加载单月的好方法吗?
  2. 如果是,任何建议如何处理它?
  3. 在这种情况下,我更喜欢完全重新加载 DWH。这是个好主意吗?

使用 SSIS ETL 工具在 sql server 上工作。

谢谢

4

1 回答 1

1

如果您只是在运行现有流程,那么为了重新加载数据,您需要将 DWH 回滚到不正确数据之前的位置,再次应用更新的数据集,然后重新应用所有后续数据集。显然,这是一项重要的工作,所以不是一个好主意,除非你别无选择,而且绝对不是你想要定期运行的东西。

如果您确实希望能够重新应用过去的单个数据集,那么您需要编写一个流程来执行此操作,例如

  • 识别与更新数据集对应的现有记录并将其删除
  • 插入更新后的数据集,同时考虑之前和之后的记录
于 2021-08-26T11:54:24.027 回答