SQL提示在执行之前将整个表加载到RAM中?

时间:2013-02-26 17:41:50

标签: sql sql-server olap ramdisk sqlperformance

我正在OLAP环境中的一些非常大的表上运行一些聚合查询。我目前受到磁盘IO的瓶颈,速度为200 MB / s。

我在具有92 GB RAM的计算机上进行这些查询。是否有任何SQL提示可以写入我的查询,基本上告诉SQL在执行之前将整个表加载到RAM中?

类似的东西:

使用(ramdisk)从myTable中选择*

我正在使用MS TSQL。

1 个答案:

答案 0 :(得分:2)

没有。如果页面缓存中有足够的空间,数据库引擎将自动执行此操作。

您可以使用SQL Server Management Studio设置正在使用的内存量。右键单击服务器,选择内存选项,然后在“最小服务器内存”框中输入一个大数字。如果你有92 GB的RAM,那么像85,000这样的数字可能是好的。您需要为计算机上的操作系统和其他服务留出额外的内存。

假设表适合内存,这应该有助于处理。如果它们不适合记忆,那么你可能不得不采取另一种方法。