2

我有一个需要连接到维度表的事实表,但是从源数据中获取这种关系并不容易。事实表是从具有大约一百万行的源表中加载的,因此根据最佳实践,我使用上一次运行日期来仅选择自上一次运行以来添加的源行。在获得我希望加载的行之后,我需要通过 3 个其他表才能对维度表进行查找。3 个表中的每一个也有大约一百万行。

我读过最佳实践说不要提取您知道不需要的源数据。最佳实践还说在源系统上尽可能轻触,因此避免 sql 连接。但就我而言,这两个最佳实践变得相互排斥。如果我只提取中间表中更改的行,那么我需要在源查询中进行连接。如果我从源系统中提取所有行,那么我提取的数据比我需要的多得多,这可能会导致 SSIS 内存/性能问题。

我倾向于加入源数据的提取,但我一直无法找到任何关于这种方法的优缺点的讨论。这是正确的还是不正确的?(源表和 DW 表在 Oracle 中)。

4

1 回答 1

3

您可以暂存您引用的 3 个源表吗?您可能在 DW 中不需要它们,但您可以将它们放在临时数据库中,纯粹是为了这个目的。但是,您仍然需要保持这些是最新的,但假设您可以拉回更改,这可能还不错。

于 2012-05-04T15:09:01.033 回答