我运行长而复杂的查询,这些查询主要使用一个大表 - 8GB,40M 行。AFAIK,所有/大多数行都用于每个查询。我在活动监视器中看到很多 IO - 对于第一个查询和每个后续查询。服务器当前使用 6.5GB 内存,我想升级。问题是,需要多少内存才能避免所有这些磁盘读取?是在桌子大小的球场内还是更大?
这是 SET STATISTICS IO 输出。BigTable 是我要问的那个,SmallTable 与 BigTable 是一对多的关系。#entrance 保存查询的输出(数百行输出)。
Table 'SmallTable'. Scan count 249005, logical reads 2829948, physical reads 2605, read-ahead reads 10395, lob logical reads 0, lob physical reads 0, lob read-ahead reads 0.
Table 'BigTable'. Scan count 194004, logical reads 13482115, physical reads 33841, read-ahead reads 1181136, lob logical reads 0, lob physical reads 0, lob read-ahead reads 0.
Table 'Worktable'. Scan count 0, logical reads 0, physical …Run Code Online (Sandbox Code Playgroud)