0

在为我们的 DWH 负载设计 SSIS 包时,我需要帮助。

我有两个带有以下详细信息的星型模式模型

1st Model --> 5 dimension and 5 fact tables respectively
2nd Model --> 5 dimension and 1 fact tables respectively

我有五个不同的源系统,我需要将数据填充到这些表中。

基于上述要求,我想到了这样设计包:

将有三个包,它们将执行以下操作:

  1. 第一个包将通过所有必要的转换将数据从源系统提取到临时表(SQL Server 表)。
  2. 第二个包会将数据加载到所有维度表中。
  3. 第三个包将数据加载到所有事实表中。

请让我知道上述设计/架构是否适用于此 DWH 负载,或者我是否需要进行一些修改。

4

1 回答 1

2

这很难回答,因为最终如果它有效,那么它就是正确的。根据您的观点,只有不同程度的“正确性”(这是一个词吗?)或更多(或更少)优雅的答案。

但是,作为一般规则并就我自己而言,我总是发现将数据加载到暂存区域然后通过过程分发维度和事实更优雅。然后在目标数据库的上下文中执行该工作,而不是由包执行。包的作用是控制流量。

另外,我会避免不必要地将任务分成多个包。当然,可能还有其他考虑因素可能会影响此决定。例如,多个数据更新在不同时间从不同来源到达,但即便如此,我也倾向于一次分阶段更新。

于 2013-02-12T16:16:58.077 回答