oracle编程入门笔记2015-01-17--一个例子告诉你共享池和数据缓存对效率的影响
2015-01-17 16:44
393 查看
为了证明共享池和数据缓存对效率的影响我来举个例子。
先清空共享池
alter system flush shared_pool;
根据前面的知识,这样之前执行过的sql和执行计划就会被清空,接下来的所有sql都要硬解析了。
清空数据缓存
alter system set events 'immediate trace name flush_cache'
这样,接下来都要从磁盘上读取数据了。
下面从客户表里面取出10000客户为了方便我接下来都在PLSQLDEVELOPER下执行。
耗时15.413s
这是,数据和sql执行计划应该已经存在了,那么我们在清空共享池,让sql硬解析。
按理说数据已经在数据缓存中应该更快啊。为什么还慢了?先不说,待会儿看执行计划
最后一次,直接执行。
看着稍微快了点。但是上面三种情况其实和理论结果是不完全一致的。
接下来看不同情况下的执行计划
打开执行计划,只看统计结果。set autotrace traceonly statistics;
场景一:清空共享池,数据缓存
主要还是CR,不应该啊。但是RC是567
场景2: 再次清空数据缓存不清空共享池
RC完全被消灭,但是还是存在一致性读。
和上面情况基本没有变换。
所以理论上共享池和数据缓存对效率存在影响,实际上影响是存在的,但是不是绝对的。原因如下。
1.执行因为涉及到数据的fetch,而这个过程是通过网络,所以网络质量对时间也是有影响的。
2.清空共享池立竿见影,但是数据缓存,清空只是将那些缓存块标记为空闲。数据依然存在。会不会影响CR就不知道了,希望高人指点。
先清空共享池
alter system flush shared_pool;
根据前面的知识,这样之前执行过的sql和执行计划就会被清空,接下来的所有sql都要硬解析了。
清空数据缓存
alter system set events 'immediate trace name flush_cache'
这样,接下来都要从磁盘上读取数据了。
下面从客户表里面取出10000客户为了方便我接下来都在PLSQLDEVELOPER下执行。
耗时15.413s
这是,数据和sql执行计划应该已经存在了,那么我们在清空共享池,让sql硬解析。
按理说数据已经在数据缓存中应该更快啊。为什么还慢了?先不说,待会儿看执行计划
最后一次,直接执行。
看着稍微快了点。但是上面三种情况其实和理论结果是不完全一致的。
接下来看不同情况下的执行计划
打开执行计划,只看统计结果。set autotrace traceonly statistics;
场景一:清空共享池,数据缓存
主要还是CR,不应该啊。但是RC是567
场景2: 再次清空数据缓存不清空共享池
RC完全被消灭,但是还是存在一致性读。
和上面情况基本没有变换。
所以理论上共享池和数据缓存对效率存在影响,实际上影响是存在的,但是不是绝对的。原因如下。
1.执行因为涉及到数据的fetch,而这个过程是通过网络,所以网络质量对时间也是有影响的。
2.清空共享池立竿见影,但是数据缓存,清空只是将那些缓存块标记为空闲。数据依然存在。会不会影响CR就不知道了,希望高人指点。
相关文章推荐
- oracle编程入门笔记2015-01-12--数据合并
- SQL Server 2008编程入门经典笔记(第五章:创建和修改数据表)
- 设计一个例子,演示PCTUSED和PCTFREE对数据操作的影响
- oracle编程入门笔记2015-01-12--数据库原理1
- oracle编程入门笔记2015-01-27--分析函数性能
- oracle编程入门笔记2015-01-22--解释计划
- oracle编程入门笔记2015-01-25--浅说cube
- Oracle进行模拟测试数据的一个例子
- oracle编程入门笔记2015-01-19--表连接
- OpenGL编程轻松入门之一个简单的例子
- oracle编程入门笔记2015-01-09--插入
- oracle编程入门笔记2015-01-06--基本概念
- oracle编程入门笔记2015-01-18--执行计划中的索引扫描方式说明
- OpenGL编程轻松入门之一个简单的例子
- 一个 Oracle 存储过程编写的入门级例子
- oracle编程入门笔记2015-01-06--sqlplus
- Oracle进行模拟测试数据的一个例子
- oracle编程入门笔记2015-01-19--index fast full scan
- oracle编程入门笔记2015-01-19--四种表连接
- oracle编程入门笔记2015-01-18--常用oracle查询语句