我正在SQL 2008/SSIS中构建我的第一个数据仓库,我正在寻找一些加载事实表的最佳实践。SQL/SSIS DataWareHouse事实表加载,最佳实践?
目前在我的DW中,我有大约20个尺寸(办公室,员工,产品,客户等)属于1型SCD。在我的DW结构,还有我已经应用了几件事情:
- 没有空值填充每个维度(SK ID 0
- 未知的主要成员(空白的文本或0分期中的数字代替) )
- UPSERT为SCD 1型加载从舞台到生产表
- SELECT DISTINCT为我的尺寸
在我的事实加载SSIS项目,目前的方法我有装载尺寸是装载对每个DIM有多个查找(20+),然后用数据填充FACT表。
对于我查找我设置:
- 完全缓存
- 忽略了 “不匹配的条目” 失败
- 派生转型与 “ISNULL(surrogate_idkey)?0:surrogate_idkey” 每个SK使如果查找失败,他们将默认为SK ID 0(未知成员)。
- 我的一些维度查找的有一个以上的业务重点更多
这是最好的方法?附上的图片可以帮助我完成上面的描述。
感谢Banton,目前我们正在加载(全部转储)4m记录,其中包含大约200列;每天约有2千行新纪录;装载阶段相当快。感谢您的反馈。 – exxoid
[请关注,使用和分享关于专用BI站点的倡议。](http://area51.stackexchange.com/proposals/70503/business-intelligence?referrer=EPHSm8-3avvaMxLjdRIeNg2)。我首先提出这个问题[元当没有商业智能网站的建议。](http://meta.stackexchange.com/q/232414/201662) – bonCodigo