sql2005高速缓存的困惑

ccwj 2008-05-25 10:42:49
内存为3g,sql2005中已启用awe,为便于测试,该服务器除我测试外,无任何其他工作。开始测试:
1、执行一个存储过程,耗时50秒;
2、重复执行该存储过程,耗时7秒;
3、等待5小时后;
4、重复执行该存储过程,耗时50秒;
5、此时,察看内存:1.2g.
郁闷!按照微软的说法,高速缓存是在操作表时建立的,只有在内存耗尽时才按照空闲时间长短来重新使用,请问我该如何理解?
另外:
我的应用当中该存储过程被频繁执行,如何才能利用高速缓存来提高性能呢?
...全文
128 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
being21 2008-05-27
  • 打赏
  • 举报
回复
蝎子,呵呵!
arrow_gx 2008-05-26
  • 打赏
  • 举报
回复
优化SQL Server的内存占用之执行缓存

http://blog.csdn.net/arrow_gx/archive/2008/05/26/2481032.aspx
arrow_gx 2008-05-26
  • 打赏
  • 举报
回复
[Quote=引用 9 楼 shaohuaijian 的回复:]
系统既然这样做了,必定有它的道理,人为的改变有是会惹来更多的麻烦……
[/Quote]


没有完全了解 sql 内存分配机制,人为设置不对,有可能回出现很多预料不到的问题,到时候就是得不偿失了
shaohuaijian 2008-05-26
  • 打赏
  • 举报
回复
系统既然这样做了,必定有它的道理,人为的改变有是会惹来更多的麻烦……
hery2002 2008-05-26
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 ccwj 的回复:]
“等待5小时后;
高速缓存应当已经释放掉了!”

怎么做才能不让它释放呢?
[/Quote]
不释放,这个貌似有点危险,如果下一个请求需要大缓存怎么办?
还是那句话,尽量少干预,
系统会自己处理的.
ccwj 2008-05-26
  • 打赏
  • 举报
回复
“等待5小时后;
高速缓存应当已经释放掉了!”

怎么做才能不让它释放呢?
ccwj 2008-05-26
  • 打赏
  • 举报
回复
谢谢各位!
我的问题换种说法就是:怎样保证长时间间隔条件下第二次运行查询,也是7秒
ojuju10 2008-05-25
  • 打赏
  • 举报
回复
存储过程被编译后,以后直接调用,不需要再编译
-晴天 2008-05-25
  • 打赏
  • 举报
回复
时限问题.
hery2002 2008-05-25
  • 打赏
  • 举报
回复
优化SQL Server的内存占用之执行缓存
http://www.cnblogs.com/superhasty/archive/2007/08/06/SQL2005CacheTuning01.html
SQL Server执行部分语句的内存代价
http://www.cnblogs.com/superhasty/archive/2007/07/30/836689.html
Batch Compilation, Recompilation, and Plan Caching Issues in SQL Server 2005
http://www.microsoft.com/technet/prodtechnol/sql/2005/recomp.mspx
duanzhi1984 2008-05-25
  • 打赏
  • 举报
回复
3、等待5小时后;
高速缓存应当已经释放掉了!

34,594

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧