首页 / ORACLE / Oracle物理读与逻辑读
Oracle物理读与逻辑读
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了Oracle物理读与逻辑读,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1807字,纯文字阅读大概需要3分钟。
内容图文
![Oracle物理读与逻辑读](/upload/InfoBanner/zyjiaocheng/551/68170feead8e4ce088c692cbd2992a8b.jpg)
Physical Reads(物理读): 逻辑读内容在内存中,不需要读硬盘。 计算公式可以如下:Physical Reads = db block gets + consist
Physical Reads(物理读):
逻辑读内容在内存中,不需要读硬盘。
计算公式可以如下:Physical Reads = db block gets + consistent gets;
Logical Reads(逻辑读):
物理读是内容不在内存中,要去硬盘中读入内存。
db block gets --从buffer cache中读取的block的数量。
consistent gets --从buffer cache中读取的undo数据的block的数量。
db block gets 是在current mode下读取的block数目。current mode下读取数据是为了保证读取到的数据是当前时间点上最新的数据,这样做的目的一般都是为了DML语句的需求,比如需要更新,自然需要知道最新的数据才行;
consistent gets 是在consistent mode下读取的block数目。consistent mode呢主要是为了保证Oracle数据一致读的特性,一般都是在select情况下发生,读到的数据可能是一个实际存在的block,也有可能需要根据scn信息以及transaction相关信息以及回滚段中数据来构造。
总结:
由于在Oracle中,取数据最后都是从Buffer中取,所以每出现一个physicalreads必然会出现一次 logicalreads,但是这里有一个需要注意的地方,就是当出现一个physicalreads后接着会有一个logicalreads这里,实际上这里只算了1 block!
所以说,如果以这样的公式(Physical Reads = db block gets + consistent gets;)来计算Physical Reads,那么逻辑读就已经包含了物理读了。
不管是db block gets还是consistent gets,都可能出现了physicalreads和logicalreads两种情况,,也即是说,db block gets与consistent gets两者已经构成了一次数据库操作中读取的所有block的总次数了。
因此,logicalreads自然也就可以通过如下公式算的:
logicalreads= (db block gets + consistent gets) - physicalreads。
由此,自然也就得出了cache命中率的公式:Hit Ratio = (db block gets + consistent gets - physicalreads) / (db block gets + consistent gets) * 100%;
内容总结
以上是互联网集市为您收集整理的Oracle物理读与逻辑读全部内容,希望文章能够帮你解决Oracle物理读与逻辑读所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。