首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >外键是否需要在星图或雪花模式中?

外键是否需要在星图或雪花模式中?
EN

Stack Overflow用户
提问于 2014-04-07 06:12:36
回答 1查看 1.1K关注 0票数 1

我目前正在创建数据仓库,我需要知道是否需要外键来创建星型或雪花模式?

如果没有任何外键约束。我将如何区分任意星图和雪花模式?

我读过这篇文章,但我还是不明白,在数据仓库(关系)中拥有外键是很好的做法吗?

如果没有Fk约束,您将如何区分星图和雪花模式?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-04-08 20:33:39

不,数据仓库中不需要外键。

外键用于引用完整性:即“确保该列中的值存在于另一列中”。但是,大多数人在将数据放入仓库时使用ETL工具进行引用完整性检查,因为外键会降低插入性能。

表可以通过列中的值在概念上与其他表相关联,而无需外键。例如,如果TableA有一个列CustomerID,而TableB有一个列CustomerID,您可以说这些表是相关的,即使没有外键。

星型模式通常只有一个级别的规范化(事实表有一些维度表,但维度表与任何其他表没有“关联”),雪花模式具有更多的规范化级别(维度表与其他表“相关”)。这就是你如何区分的。不是用外键。

您也可能希望支持热交换尺寸,这使得外键变得毫无意义。

雪花可能也是一种反模式,所以只需使用星型模式,而不必担心它。

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

https://stackoverflow.com/questions/22904807

复制
相关文章

相似问题

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