8288分类目录 8288分类目录 8288分类目录
  当前位置:海洋目录网 » 站长资讯 » 站长资讯 » 文章详细 订阅RssFeed

【等待事件】User I/O类 等待事件(2.6)--direct path write(直接路径写、DRW)

来源:本站原创 浏览:126次 时间:2021-11-27

想关注我吗?请点击图片上方蓝字小麦苗关注即可,关注后您将可以每日获得最实用的数据库技术。请将小麦苗公众号置顶,小麦苗不喜欢被压着,~O(∩_∩)O~


小麦苗的今日寄语


     曾经拥有的,不要忘记;已经得到的,更加珍惜;属于自己的,不要放弃;已经失去的,留作回忆;想要得到的,一定要努力。累了,把心靠岸;选择了,就不要后悔;苦了,才懂得满足;痛了,才享受生活;伤了,才明白坚强。

       

    各位粉丝朋友,从8月13日开始,小麦苗打算花很长很长的一段时间来给大家分享有关自己整理的等待事件的学习笔记,有的内容来自于网络,大家有什么问题可以留言,欢迎交流。

    今天给大家分享的是等待事件中的User I/O类 等待事件(2.6)--direct path write(直接路径写、DRW),还是很重要的一个等待事件。

等待事件历史文章

【等待事件】等待事件概述(1)--等待事件的源起和分类

●【等待事件】User I/O类 等待事件(2.1)--db file sequential read(数据文件顺序读)

●【等待事件】User I/O类 等待事件(2.2)--db file scattered read(数据文件离散读)

●【等待事件】User I/O类 等待事件(2.3)--db file parallel read

● 【等待事件】User I/O类 等待事件(2.4)--db file single write

● 【等待事件】User I/O类 等待事件(2.5)--direct path read(直接路径读、DPR)





User I/O类 等待事件(2.6)--direct path write(直接路径写、DRW)


SELECT * FROM V$EVENT_NAME A WHERE A.NAME = 'direct path write';这个等待事件有三个参数:

  • file number: 要写入的绝对文件号file number,可发现所进行的操作性质(如:排序/并行操作)

  • first dba: 起始块号first dba

  • block cnt: 块数block cnt,可发现直接写入IO的大小

由参数P1与P2推得访问的数据对象:

select s.segment_name, s.partition_name

  from dba_extents s

 where  between s.block_id and (s.block_id + s.blocks -1) and s.file_id =

这个等待事件和direct path read 正好相反,是会话将一些数据从PGA中直接写入到磁盘文件(数据文件或临时文件)上,而不经过SGA。这类读取通常在以下情况被使用:

1. 直接路径加载(使用append方式加载数据、CREATE TABLE AS SELECT)

2. 并行DML操作 

3. 磁盘排序使用临时表空间排序(内存不足) 

最常见的直接路径写,多数因为磁盘排序导致。对于这一写入等待,应该找到I/O操作最为频繁的数据文件(如果有过多的排序操作,很有可能就是临时文件),分散负载,加快其写入操作。

如果系统存在过多的磁盘排序,会导致临时表空间操作频繁,对于这种情况,可以考虑为不同用户分配不同的临时表空间,使用多个临时文件,写入不同磁盘或者裸设备,从而降低竞争提高性能。

direct path write是允许一个会话让一个I/O写请求入队列的同时处理操作系统的I/O。如果会话想确认明显的写是否已经完成就会出现这个等待事件。因为会话需要空的缓存和空的槽位(等待之前的I/O释放),或者是会话需要确认所有的写操作都已经完成。如果没有使用异步I/O,I/O请求会被阻塞直到之前的I/O请求完成后,但是此时不会出现I/O等待,会话稍后重新恢复并加速I/O请求的完成,此时就会出现direct path write等待。因此,对于这个等待事件容易产生两方面的误解:一是认为等待的总的数量不能反映出I/O请求的数量,二是消耗在这个等待事件上的总的时间不能反映出实际的等待时间。这类型的写请求主要是用于直接装载数据的操作(create table as select)、并行的DML操作、不在内存中排序的I/O以及写入没有cache的LOB段操作。

关于该等待事件,以下的几点需要注意:

1. 从PGA写入数据文件,一个会话可以发布多个写入请求和连续的处理。

2. 直接写入可以按同步或异步方式执行,取决于平台和DISK_ASYNC_IO参数的值。

3. 通常用于在数据加载(APPEND提示、CTAS-CREATE TABLE AS SELECT)、并行DML操作时写入到临时段。

4. 在使用异步IO时,direct path write事件产生的等待时间不准确,所以通过v$sesstat视图来获得直接写入次数来评估该事件的影响情况:

SELECT A.NAME,
       B.SID,
       B.VALUE,
       ROUND((SYSDATE - C.LOGON_TIME) * 24) HOURS_CONNECTED
  FROM V$STATNAME A, V$SESSTAT B, V$SESSION C
 WHERE A.STATISTIC# = B.STATISTIC#
   AND B.SID = C.SID
   AND B.VALUE > 0
   AND A.NAME = 'PHYSICAL WRITES DIRECT';

 

这个等待事件的等待时间是指等待BLOCK直到明显的I/O请求完成的时间。通常来说,如果不是存在特殊的JOB,一般是不会出现这个等待事件,如果在等待事件中这个等待事件占的比重比较大,可以从如下几个方面来调整:

如果是等待的文件是临时表空间的文件,那么需要查看是否存在大量不合理的磁盘排序,优化相应的存在问题的SQL语句。如果是Oracle9i可以考虑使用自动SQL执行内存管理,Oracle8i的话可以手工的调整各种排序区。

确认异步I/O是否配置正确,异步I/O不会减少这个等待事件的等待时间但是却可以减少会话所消耗的时间。

检查是否存在I/O消耗很严重的SQL语句,如果存在,尝试优化SQL语句减少I/O的消耗。

最后确认一下是否达到了磁盘的I/O极限,如果是,则需要考虑更换更好的硬件设备。

大量的direct path read等待事件最可能是一个应用程序的问题。

注:

>> 1. 如果是Temp文件,则表示该会话正在写入临时表空间,查明使用临时段的类型,有助于了解会话所做的事情。

SELECT DISTINCT decode(t.ktssosegt,

                        1,'SORT',

                        2,'HASH',

                        3,��̭,��̭'DATA',

                        4,'INDEX',

                        5,'LOB_DATA',

                        6,'LOB_INDEX',

                        'UNDEFINED')

  FROM sys.x$ktsso t

 WHERE t.inst_id = userenv('instance') AND

       t.kssoses = <当前session地址> AND

       t.ktssosno =

>> 2. 如果是数据文件,则可能正在执行一项直接路径加载操作,通过P1值确定数据文件的名称:

select s.NAME from v$datafile s where s.FILE# =

union all

select a.name

from v$tempfile a, v$parameter b

where b.NAME = 'db_files'

      and a.FILE# + b.VALUE =

 

 



About Me:小麦苗●李华荣      

● 本文作者:小麦苗,只专注于数据库的技术,更注重技术的运用

● 本文在itpub(http://blog.itpub.net/26736162)、博客园(http://www.cnblogs.com/lhrbest)和个人微信公众号(xiaomaimiaolhr)上有同步更新,推荐pdf文件阅读或博客园地址阅读

● QQ群:230161599  微信群:私聊

● 小麦苗分享的其它资料:http://blog.itpub.net/26736162/viewspace-1624453/

●  联系我请加QQ好友(642808185),注明添加缘由

●【版权所有,文章允许转载,但须以链接方式注明源地址,否则追究法律责任】




长按识别二维码或微信客户端扫描下边的二维码来关注小麦苗的微信公众号:xiaomaimiaolhr,学习最实用的数据库技术。





本文分享自微信公众号 - DB宝(lhrdba)。
如有侵权,请联系 support@oschina.cn 删除。
本文参与“OSC源创计划”,欢迎正在阅读的你也加入,一起分享。

  推荐站点

  • At-lib分类目录At-lib分类目录

    At-lib网站分类目录汇集全国所有高质量网站,是中国权威的中文网站分类目录,给站长提供免费网址目录提交收录和推荐最新最全的优秀网站大全是名站导航之家

    www.at-lib.cn
  • 中国链接目录中国链接目录

    中国链接目录简称链接目录,是收录优秀网站和淘宝网店的网站分类目录,为您提供优质的网址导航服务,也是网店进行收录推广,站长免费推广网站、加快百度收录、增加友情链接和网站外链的平台。

    www.cnlink.org
  • 35目录网35目录网

    35目录免费收录各类优秀网站,全力打造互动式网站目录,提供网站分类目录检索,关键字搜索功能。欢迎您向35目录推荐、提交优秀网站。

    www.35mulu.com
  • 就要爱网站目录就要爱网站目录

    就要爱网站目录,按主题和类别列出网站。所有提交的网站都经过人工审查,确保质量和无垃圾邮件的结果。

    www.912219.com
  • 伍佰目录伍佰目录

    伍佰网站目录免费收录各类优秀网站,全力打造互动式网站目录,提供网站分类目录检索,关键字搜索功能。欢迎您向伍佰目录推荐、提交优秀网站。

    www.wbwb.net