【发布时间】:2010-10-26 05:15:30
【问题描述】:
我有一个很大的疑问。
让我们以任何公司订单的数据库为例。
假设这家公司每月大约有 2000 个订单,因此,每年大约有 24,000 个订单,他们不想删除任何订单,即使它已经 5 年了(嘿,这是一个例子,数字不要'没有任何意义)。
就数据库查询速度而言,最好只有一张表,还是每年一张表会更快?
我的想法是每年为订单创建一个新表,调用此类 orders_2008、orders_2009 等。
加快数据库查询是个好主意吗?
通常使用的是当年的数据,所以行越少越好。 显然,当我同时在所有订单表中搜索时,这会出现问题,因为我应该运行一些复杂的 UNION .. 但这种情况在正常活动中非常罕见。
我认为最好有一个应用程序 95% 的查询是快速的,而其余的则有点慢,而不是一个总是很慢的应用程序。
我的实际数据库有 130 个表,我的应用程序的新版本应该有大约 200-220 个表。其中大约 40% 将每年复制一次。
有什么建议吗?
编辑:RDBMS 可能是 Postgresql,可能(希望不是)Mysql
【问题讨论】:
标签: performance postgresql database-design