0

我的项目开始于 2 个月前,我已经将运行的每个进程的 100 多个表传输到数据仓库。

我可能很快就会达到 200-300 张桌子,并且不相信我目前的开发方法会扩展。

我仍然有 3 周的版本(产品开发冲刺),并且表仍在更改其结构(数据类型、列名、新列等),这让我非常头疼,所以我在最初的几周内忽略了它。

我怎么忽略了它?

  1. 在我将它们带到 ODS(操作数据存储)/MRR 层之前截断所有表
  2. 将所有数据从源系统完全带到 MRR 层
  3. 仅创建维度“增量”表(每周仍会随着新列和更改的数据类型而变化)
  4. 动态创建和填充临时表和仓库表。

现在我的模型已经开始形成,所以我必须处理增量负载

  1. 这似乎很容易,因为我对每条记录都有更新时间,但我的源系统中也有删除,我该如何处理?
  2. 我考虑过 CDC,但这会很耗时,因为我必须逐个表格地放置它
  3. 对于从 100-200 张桌子开始的人有什么解决方案吗?
4

1 回答 1

0

我尽可能长时间地遵循类似于您的“忽略它”设计的风格。完全刷新使您的设计保持敏捷,并且可以达到每分钟 100 万行的速度。

当这最终用完并且源系统中存在删除时,我按照与数据专家的约定在某个日期范围(例如 3 个月)内删除我的所有数据。您可能必须每天将删除分成几块。我还尝试完全刷新这些数据,例如每个周末(因为数据专家经常被误导)。

于 2013-02-11T01:47:08.093 回答