【发布时间】:2014-05-13 18:10:03
【问题描述】:
Oracle 默认缓存查询结果和函数结果。
我在 AutoTrace 实用程序中注意到了这一点,第一次执行时物理读取量很大,但从下一次执行开始,它会急剧减少。
比查询结果缓存、函数结果缓存重要吗?
有人可以帮助更好地理解这一点。
【问题讨论】:
-
物理读减少与缓冲区缓存有关;你在混淆术语吗?
-
@AlexPoole 我真的不知道怎么做,你能简单介绍一下吗?
-
您最好从文档开始; buffer cache 和 query and function result caches。这些来自性能调整指南,应该有助于解释它们的重要性。
-
@AlexPoole,缓冲区缓存如何失效,我尝试重新启动服务器,更新物理表。但我仍然注意到物理读取为 0。
-
Oracle 不“默认”缓存查询结果或函数结果。它会自动缓存从磁盘读取的块,这就是提高性能的原因。这通常就足够了,但在某些情况下,您可能还希望缓存整个查询或函数调用。
标签: sql performance oracle oracle11g