3

我们对每个公司、国家和产品采取不同的措施:

A公司, 澳大利亚, ​​啤酒, 10, 22, 3, 9

常见用例是计算特定国家/地区啤酒的措施 1 的总和。

我有两个选择:

选项 A:

尺寸表:

ID
Company
Country
Product

测量表:

Dimension.ID (FK)
DateTime
Measure1
Measure2
Measure3
Measure4

选项 B:

多合一表:

ID
Company
Country
Product
DateTime
Measure1
Measure2
Measure3
Measure4

维度表中有 10,000 条唯一记录,而度量表中有近 30,000,000 条记录。

目前我们对产品、公司和国家使用字母数字键。

我的问题

哪个表现更好?

对列索引有什么建议吗?

4

1 回答 1

1

如果您假设“维度”表中一行的平均大小为 50 个字节(只是猜测),并且在“度量表”中也是 50 个字节,那么在选项 A 中,您将拥有大小不小于 1.5 GB 的数据库,并且在选项中B 不少于 3 GB。这是一个显着的差异。

所以我会说选项 A 更好,因为数据库大小更小。

索引取决于您要使用的查询。但我认为,当使用选项 A 时,不需要索引(除了由主键和外键创建的索引),因为“维度”表很小。

于 2013-08-02T21:30:43.677 回答