Oracle的逻辑读和物理读
在我们优化oracle的时候,经常会用到各种各样的技术手段,其中使用statspack和explain plan是最常见的了。
当我们使用这两个常见的工具来进行优化调整的时候,经常会看到physical reads和logical reads。 那么这两者
是什么东东, 他们分别表示什么意思,他们有什么样的区别叻。
让我们先做一下这样的实验,一起来看看
SQL>set autotr traceonly;
SQL> select * from test1.t_1;
已选择6行。
引用:
执行计划
----------------------------------------------------------
Plan hash value: 1376489960-------------------------------------------------------------------------
| Id | Operation | Name | Rows | Bytes | Cost (%CPU)| Time
-------------------------------------------------------------------------
| 0 | SELECT STATEMENT | | 6 | 234 | 3 (0)| 00:00:01
| 1 | TABLE ACCESS FULL| T_1 | 6 | 234 | 3 (0)| 00:00:01
-------------------------------------------------------------------------
统计信息
----------------------------------------------------------
199 recursive calls
0 db block gets
38 consistent gets
7 physical reads
0 redo size
961 bytes sent via SQL*Net to client
385 bytes received via SQL*Net from client
2 SQL*Net roundtrips to/from client
2 sorts (memory)
0 sorts (disk)
6 rows processed
这里有个很明显的
7 physical reads
我们再来执行以下相同的语句
SQL> select * from test1.t_1;
已选择6行。
引用:
执行计划
----------------------------------------------------------
Plan hash value: 1376489960------------------------------------------------------------------
| Id | Operation | Name | Rows | Bytes | Cost (%CPU)| Ti
------------------------------------------------------------------
| 0 | SELECT STATEMENT | | 6 | 234 | 3 (0)| 00
| 1 | TABLE ACCESS FULL| T_1 | 6 | 234 | 3 (0)| 00
------------------------------------------------------------------统计信息
----------------------------------------------------------
0 recursive calls
0 db block gets
8 consistent gets
0 physical reads
0 redo size
961 bytes sent via SQL*Net to client
385 bytes received via SQL*Net from client
2 SQL*Net roundtrips to/from client
0 sorts (memory)
0 sorts (disk)
6 rows processed
这里的physical reads已经变化了0 physical reads
冲这里的实例来看,当我们第一次读取t_1表时,表的数据块是第一次被读取到,读取以后被oracle的加载到buffer中,也就是缓存到SGA的buffer cache中,这个过程是从数据库的物理地址进行读取,读取后加载到内存中,从而这个过程就是我理解的物理读,这里为什么会有7次物理读,而不是6次,不是16次,这个可以在其他的文章中进行研究,
当第二次我们执行语句的时候,不需要去进行物理山的读了,在buffer中已经缓存了这块数据,我们当然就没有必要去读物理磁盘了,从性能上来说,这是很耗时的。 所以直接从buffer里读就可以了, 既然是从buffer里读,我们就不是一个真实的读了,所以叫做逻辑读。这里就有要引入一个其他的概念,cr(consistent gets),buffer又可能被修改了,或者是因为事务的原因,需要保证读的一致性,这样就需要cr了。cr详细在其他的文章介绍。
写到这里,带小孩去玩去了,回来接着写。
Oracle的逻辑读和物理读相关推荐
- 在Oracle中,什么是物理读和逻辑读?
在Oracle中,什么是物理读和逻辑读? 当会话所需要的数据在内存的 Buffer Cache 中找不到,此时就要去磁盘上的数据文件中读取,这样就产生了物理读( Physical Reads ),即物 ...
- Oracle逻辑读,物理读
逻辑读和物理读 当执行计划创建成功后,就可以执行类似于update这样的语句.第一步是要在缓存高速缓冲区中查找数据快,数据快包含了要更新的行片段信息.通过内存中一个叫做最近最小使用列表的结构去进行查找 ...
- KingbaseES 逻辑读与物理读
oracle数据库中逻辑读,物理读 数据访问方式:数据库少不了和操作系统进行数据交互,表数据最好的方式是从数据库共享池中访问到,避免发生磁盘IO,当然如果共享池中没有访问到数据就难免发生磁盘IO. 物 ...
- 初谈SQL Server逻辑读、物理读、预读
前言 本文涉及的内容均不是原创,是记录自己在学习IO.执行计划的过程中学习其他大牛的博客和心得并记录下来,之所以想写下来是为了记录自己在追溯的过程遇到的几个问题,并把这些问题弄清楚. 本章最后已贴出原 ...
- 理解SQL SERVER中的逻辑读,预读和物理读
在我的上一篇关于SQL SERVER索引的博文,有圆友问道关于逻辑读,预读和物理读的概念.我觉的还是写一篇博文能把这个问题解释清楚. SQL SERVER数据存储的形式 在谈到几种不同的读取方式之前, ...
- 初谈逻辑读、物理读、预读
前言: 该文并不全是本人原创,里面的某些原理来自于CareySon. SQL SERVER数据存储的形式 要理解逻辑读.物理读.预读这三个概念,先要搞懂SQL Server的数据存储方式. SQL S ...
- 浅谈SQL Server逻辑读、物理读、预读
目录 (一)前言 (二)正文 1. SQL Server的数据存储方式 2. 剖析IO统计信息 (1)初识三读 (2)逻辑读.物理读.预读的关系 (3)看图理解[逻辑读].[物理读].[预读] (三) ...
- SQL --理解SQL SERVER中的逻辑读,预读和物理读
本文转载自:https://www.cnblogs.com/CareySon/archive/2011/12/23/2299127.html 理解SQL SERVER中的逻辑读,预读和物理读 SQL ...
- SQL Server 预读和物理读 的区别
今天在网上看到有人在讨论预读和物理读的区别,个人觉得物理读和预读都是IO操作,都是需要从磁盘中读取数据到内存,只是读取的时间有所不同,之后查了一下MSDN确认了这种想法. 预读是在生成执行的同时去做的 ...
最新文章
- 滴滴联合比亚迪:首款定制网约车D1发布
- SAP WM 2-Step Picking流程里创建的Group的分析
- SpringCloud教程-分布式配置中心Config (SpringCloud版本Greenwich.SR4)
- 【学习笔记】juc并发学习+关于锁的面试题
- Delphi中的时间操作技术(1)
- jquery控制css的display(控制元素的显示与隐藏)
- 熟悉html css,编写HTML和CSS的前端开发中不一定熟悉JavaScript
- java中j 和 j啥区别_从字节码层次分析++j和j++的区别
- 常量中有换行符 是怎么回事?
- 【数论学习笔记】同余
- mysql集群系统_轻松构建Mysql高可用集群系统
- 掘金小册8折优惠:掌握这些技术,轻松拿offer
- C# Xamarin移动开发基础进修篇
- 小程序获取用户的openid(详解)
- 两阶段最小二乘法原理_什么是两阶段最小二乘法(2sls)?
- 第十九届泳联水中运动世锦赛
- linux mariadb 升级,Mariadb数据库更新
- 3个酷到没同学的冷门专业,开始逆袭了?
- 工商银行转账出现java_工行企业网银转账提示信息代码4506是什么意思?
- leetCode最短补全词
热门文章
- 知乎好物推荐怎么做赚钱?该如何做?
- 快消品图像识别丨无人店背后的商品识别技术
- 生成模型的2022年——人工智能AIGC顶级论文回顾
- Python OpenCV 图像缩放 cv2.resize 方法
- 为不喝的朋友准备的!如何委婉地拒绝劝酒
- Matterport3D:室内环境RGB-D数据的深度学习
- 一日精通python编程_爱上Python 一日精通Python编程 [Learn Python in One Day and Learn it Well ]...
- Java游戏培训机构哪家专业
- 梦幻西游代理途径有哪些?需要注意什么
- 图深度学习——复杂图嵌入:异质图,二分图,多维图,超图,符号图,动态图