阿里云-云小站(无限量代金券发放中)
【腾讯云】云服务器、云数据库、COS、CDN、短信等热卖云产品特惠抢购

Oracle IO架构

101次阅读
没有评论

共计 1172 个字符,预计需要花费 3 分钟才能阅读完成。

等待事件从 Oracle 7.0 提出,真是一个伟大的想法,从此数据库对我们来说不是一个黑盒。

db file sequential read 数据文件单块读,指的是从数据文件中获取一个单块的信息。最能让人想到的是索引回表,当然全表扫描也可能产生单块读,因为不是所有的全表扫描都能多块读。

db file scattered read 多块读,最大块数由 db_file_multiblock_read_count 定义,此参数通常与操作系统 IO 大小一致,操作系统 IO 一般是 512K 或 1MB。

direct path read 直接路径读,是指数据不加载到数据缓冲区 (SGA 的一块区域), 直接加载到 PGA。db file sequential read 和 db file scattered read 都是先将数据加载到数据缓存区。直接路径读避免了数据缓存区管理的开销和争用(这是它存在的原因),但读取的数据不能被其他的进程使用,换言之,其他进程碰巧需要相同的块,需要从磁盘重新读取。一下场景会使用直接路径读:

执行临时段 IO 时总是使用直接路径读;并行查询时。

直接路径读可以是单块读也可以是多块读,执行有索引的单块读时,Oracle 偏好缓存 IO,因为块很可能会被重用。通常直接路径路径读更常用多块读。

direct path read/write temp, 当 PGA 没有足够的内存时,就会用到临时段。

db file parallel write, DBWR IO 被登记为此事件。DML 操作默认情况下会修改数据缓存区的数据库,等待检查点到来将脏块写入到磁盘。

direct path write, 直接路径写,数据从 PGA 直接插入到数据文件,不经过数据缓存区。用 append 或者并行。

log file parallel write,大部分重做日志会被注册为此事件。当重做日志初始化一个日志文件,会登记 log file single write 和 log file sequential read. 重做日志记录刷到磁盘时,会有 log file sync,这是一个重要指标,通常平均时间超过 20ms,应用系统就会有严重问题了。

log archive I/O 归档日志写被登记为此事件。归档进程读取非活动的重做日志并写入到归档日志,重做日志读登记为 log file sequential read.

flashback log file writes, 当恢复写进程写入闪回日志,会登记为此事件。

control file parallel write,control file sequential read, 控制文件 IO 登记的等待事件。

更多 Oracle 相关信息见 Oracle 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=12

本文永久更新链接地址 :http://www.linuxidc.com/Linux/2017-01/139743.htm

正文完
星哥说事-微信公众号
post-qrcode
 
星锅
版权声明:本站原创文章,由 星锅 2022-01-22发表,共计1172字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
【腾讯云】推广者专属福利,新客户无门槛领取总价值高达2860元代金券,每种代金券限量500张,先到先得。
阿里云-最新活动爆款每日限量供应
评论(没有评论)
验证码
【腾讯云】云服务器、云数据库、COS、CDN、短信等云产品特惠热卖中