gpt4 book ai didi

sql-server - 维度建模 : should a fact table have a foreign key?

转载 作者:行者123 更新时间:2023-12-03 09:33:32 26 4
gpt4 key购买 nike

可以fact table根本没有 key ?或者如果可以,这是一个好的设计吗?如果事实表没有任何维度,它是根据什么分析的?

如果事实表只有主键而没有外键怎么办?

最佳答案

不准确地说,外键将您链接到将您的事实表分成类别和子类别的表。

所以如果事实表是

create table stores (id, kindOfStore, sales)

然后 kindOfStore 将是您的维度 - 如果是这样,那么您可能会争辩说 kindOfStore 的单独表是过大的(除了浪费空间说 kindOfStore =“Food”而不是“Kind_id=8”)。如果你有子类别,链接到像

这样的维度表是有意义的
create table kindOfStore (id, Variety, Specialization, Subspecialization) 

在事实表中存储 Variety、Specialization 和 Subspecialization 的空间效率会很低。

生成的模式是星型模式,数据仓库经过优化以处理这些模式,尽管更新和更快的数据仓库引擎似乎非常快,即使是非星型模式也相当快。

与 OLTP 数据库相比,数据仓库对事实表进行非规范化(使用更少的表),但这绝不意味着您应该争取单表解决方案。

关于sql-server - 维度建模 : should a fact table have a foreign key?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1045780/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com