首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用SCD1和SCD2属性+ SSIS加载混合维表

使用SCD1和SCD2属性+ SSIS加载混合维表
EN

Stack Overflow用户
提问于 2010-04-18 16:15:20
回答 1查看 1.8K关注 0票数 1

我正在开始一项新的任务,其中我需要使用SCD1和SCD2加载混合维度表。这需要作为SSIS包来实现。有人能指导我在SSIS中处理这个问题的最好方法是什么吗?我应该使用SCD组件还是有其他方法?这方面的最佳实践是什么?

对于SCD2类型,我使用Merge语句。

谢谢

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2010-04-19 01:52:16

这是一个蠕虫罐头:)

在SSIS中处理SCD基本上有四种方法: 1.使用内置的SCD组件2.使用查找、条件拆分、派生列和各种目标来“滚动自己的”。3.使用T-SQL MERGE 4.使用第三方Kimball SCD组件

我会提醒你我对#4的偏见--我写的。但这是我对这一群人的分析。

对于“小”和“易”维度,1是一个很好的解决方案。为什么它是好的?它是可以理解的,可以处理SCD 1和SCD 2,并且易于设置。但是为什么只有“小”和“容易”维度呢?因为它使用了无法改进的内部未缓存查找(RBAR)。因为如果您更改了其中的任何内容(重新运行向导),它将销毁您对数据流所做的任何更改。因为它不会处理大小写不重要的行,或者尾随空格不重要的行。

对于更大的维度,2是一个很好的解决方案。它很好,因为它的性能相当好,而且“有很好的文档”,因为你可以从你使用的组件的名称和它们是如何组合在一起的,确切地看到它在做什么。它也很容易操作和改变它的操作方式。缺点是设置和测试需要时间。

对于巨大的维度,3是一个很好的解决方案。它的性能通常优于所有其他替代方案。但这就是它所能做的一切。它的代码非常复杂,如果没有大量的注释,就不太容易理解。

对于任何尺寸来说,4都是一个很好的解决方案,也许除了“巨大”维度。它像普通的SCD组件一样“容易”使用,性能与2一样好或更好,并且可配置为2。

More info on 4 here

票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2661574

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档