什么时候数据库被认为是“大型数据库”?

时间:2012-10-31 13:10:02

标签: sql-server-2008 tsql database-performance

我有一个SQL Server 2008数据库,其中包含一个包含apprx 50列的表。主键是日期时间。没有进一步规范化,它只是一个表,每隔几秒就存储来自不同传感器的值,所以整数和小数。 所以现在,在过去的一个月里,我已经插入了近560k行。 我的问题是,由于数据太多,我何时会开始看到性能问题?

更具体一点: 到目前为止,我的要求是显示(在图表中)上个月(这个问题不是问题)。如果我总是在上个月从数据库中获取,那么由PK过滤的查询(如此索引),表格的大小是否重要?

Ups,长吼:)感谢输入!

3 个答案:

答案 0 :(得分:1)

只需确保针对您的表运行的任何查询都在进行索引搜索,而不是扫描或表扫描。您可以让SSMS生成一个可以告诉您的查询计划。只要正在进行搜索,您就可能拥有数亿行并且仍然具有出色的性能。

答案 1 :(得分:1)

如果您的桌子每月增长500k +,这将很快变成一张大桌子:一年内你将有6M +行。即使您需要的查询看起来很简单并使用索引PK过滤数据,我认为您可能会遇到性能问题。

例如,您可能需要对数据(计数,总和)运行汇总查询,提供与前几个月的比较,或显示过去x个月的趋势演变。

您可以考虑:

  • 清除策略,删除旧数据;
  • 构建一个指标表,总结图表所需的汇总信息。

答案 2 :(得分:1)

除了上面的一些建议,为了帮助缓解IO流失,我建议确保日期字段(PK)是群集索引。这样,上个月的所有记录都应该是连续的并且易于访问。