与数据库负载相关的网站速度性能

时间:2014-05-01 18:33:15

标签: sql

我是新手,但我很好奇,数据库的大小是否会对页面加载速度产生负面影响。就像你必须从拥有20,000条记录的小型数据库中获取20个项目然后从2,000,000条记录的数据库中获取相同的20个项目一样,可以安全地假设后者在其他条件相同时会慢得多吗?并且购买更多专用服务器可以提高速度。我想对此进行自我教育,以便为未来的活动做好准备。

1 个答案:

答案 0 :(得分:0)

假设较大的数据较慢是不安全的。智能设计的数据库将通过索引进行此类页面访问。对于大多数实际问题,索引将适合内存。任何页面访问的成本是:

  • 查找数据库中相应记录的位置的成本。
  • 将包含这些记录的数据库页面加载到内存中的成本。

索引查找的成本根据索引的大小变化很小(相对)。因此,典型的最坏情况是大约20次磁盘访问以获取数据。而且,对于各种各样的整体桌子尺寸,这并没有改变。

如果表很小并且适合内存,那么您可以在内存页面缓存中完全缓存它。在这种情况下,这将加快查询速度。但是性能的上限是固定的。

如果索引不适合内存,那么情况会有点复杂。

通常会增加单个请求的性能的是拥有更多内存。如果您同时有多个请求,则需要更多处理器。

而且,如果您看到线性性能下降,那么您的数据库针对您的应用程序需求进行了优化。在这种情况下修复数据库结构通常比在问题上投入更多硬件更好。