典型的SQL服务器数据库表中有多少条记录被认为是正常的?我的意思是,如果数据库中的某些表包含三四百万条记录,我应该考虑更换硬件,分区表等吗?我有一个查询只连接两个表,并在其WHERE子句中有一个带有ORDER By的四个条件。此查询通常需要3-4秒才能执行,但每执行10或20次执行一次,执行可能需要更长时间(10或20秒)(我认为这与参数嗅探无关,因为我正在重新编译每次查询)。如何在不到一秒的时间内改进查询以执行?我怎么知道它是如何实现的?我如何知道增加RAM量或增加新闻硬盘或增加CUP速度甚至改善表上的索引都会提高性能? 对此有任何建议将不胜感激:))
答案 0 :(得分:1)
400万条记录不是很多。甚至Microsoft Access也可以管理它。
对于查询,即使3-4秒也是很长时间。当您遇到类似性能问题时,有95%的时间归结为:
其中任何一项都与硬件无关。
除非记录很大或吞吐量非常高,否则硬件不太可能成为您问题的原因或解决方案。
答案 1 :(得分:0)
除非你正在做一些重量级join
,否则3-4百万行不需要任何额外的硬件。我首先调查了是否有适当的索引,如果使用得当,等等。