在数据库中拥有多个表与多列的优缺点是什么?反之亦然?

时间:2016-04-23 06:57:59

标签: database optimization

TLDR: 在性能,易管理性和您可能想到的任何其他考虑因素方面,每种数据库配置的优缺点是什么?

如果只有两种类型的'loc'ations并且只有两种类型的实体,那么这三种表配置中的每一种如何比彼此更好或更差:

.stringify

Config 1

loc | allow | entity | entity_type | loc_type 2 | True | jim | user | zone 29 | False | officer| class | quadrant

Config 2

zone | allow | entity | entity_type 2 | True | jim | user & quadrant | allow | entity | entity_type 29 | False | officer| class

Config 3

第一个示例将所有数据合并到一个表中(让我们称之为“权限”),并有额外的列定义loc和entity列中的数据类型。最后一个示例将它全部分解为4个表,这些表可能被命名为“zone_user_permissions”,“zone_class_permissions”,“quadrant_user_permissions”和“quadrant_class_permissions”。

中间的是第一个和第三个之间的妥协。

明显不同的是,第一个单表配置带有额外的列,因此存储的数据比上一个配置更多。第三个分布在多个表中,在某些情况下可能更难查询。

因此,假设所有表中的行大致相等,那么每种配置的优点和缺点是什么?

0 个答案:

没有答案