【发布时间】:2012-09-26 09:03:05
【问题描述】:
我正在做一个项目,其中一个表可能有数百万行。 但是,目前,根据行的使用,它被分成具有相同设置的多个表。每个表都有近 50 万行。
这可以通过再添加一个具有特定状态的列,并向该列添加索引来完成。
我的问题是——什么是经验法则?我应该始终坚持使用带有索引的“用例”列的单个表的设计,还是基于偏好、基于性能或无关紧要的决策类型?
【问题讨论】:
标签: mysql
我正在做一个项目,其中一个表可能有数百万行。 但是,目前,根据行的使用,它被分成具有相同设置的多个表。每个表都有近 50 万行。
这可以通过再添加一个具有特定状态的列,并向该列添加索引来完成。
我的问题是——什么是经验法则?我应该始终坚持使用带有索引的“用例”列的单个表的设计,还是基于偏好、基于性能或无关紧要的决策类型?
【问题讨论】:
标签: mysql
使用关系数据库的关键在于使用它的关系能力。
传统上,ER 模型将根据问题的限制创建,然后转换为适当的模式。 根据我的经验,最好有一个规范化的数据库,因为它提供了健壮性,就像在一个软件中使用按合同编程的设计一样,但是在不锁定数据库的情况下引入更改变得更加困难。
如果您需要性能,那么您必须不惜一切代价来获得它,而且您有很多选择。可能是 NoSQL 数据库或像 MonetDB 这样的列式存储数据库。
【讨论】: