前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >与IO相关的等待事件troubleshooting-系列6

与IO相关的等待事件troubleshooting-系列6

作者头像
bisal
发布2022-12-01 15:28:08
8370
发布2022-12-01 15:28:08
举报
文章被收录于专栏:bisal的个人杂货铺

'db file parallel read'

当Oracle从多个数据文件并行读到内存(PGA或Buffer Cache)的非连续缓冲时,可以看到这种等待事件。在恢复操作或为了优化而预处理缓冲(代替执行多个单块读)时也会有这种等待事件。

        如果这种等待事件的事件占据大部分,可以按照“db file sequential read”的处理方法。

Direct Path Reads and Writes

直接路径读与写

'direct path read'

Document 50415.1WAITEVENT: "direct path read" Reference Note

'direct path write'

Document 50416.1 WAITEVENT: "direct path write" Reference Note

'direct path read (lob)'

'direct path write (lob)'

        当数据库进程在磁盘与进程PGA内存之间执行一些特殊类型的多块IO操作时,会出现这种等待事件,这种操作会绕过Buffer Cache。可以同步或异步两种方式执行这样的IO操作。

       使用这种方式的一些例子:

1. 当内存排序区满了,使用临时表空间排序时,对IO的排序操作。

2. 并行执行(查询和DML)。

3. 预读操作(buffer预处理)。

4. 直接读取操作。

5. 对LOB段的IO操作(LOB段不会缓存到Buffer Cache)。

        用这种方式中等待的时间都会被记录(不会衡量用于执行IO操作的时间),但不能用Statspack的“Top 5 Wait/Timed Events”节中列表的相对位置来评估他们的真实影响。

        调优的纲领:

1. 建议使用异步IO。

2. 在Oracle 8i,通过设置DB_FILE_DIRECT_IO_COUNT实例参数最小化IO请求数量,DB_BLOCK_SIZE x DB_FILE_DIRECT_IO_COUNT = 系统的max_io_size。

        在Oracle 8i中,默认值是64个块。

        (在Oracle 9i,他被_DB_FILE_DIRECT_IO_COUNT参数取代,这个参数控制以字节(不是块)为单位的直接IO容量)。默认值是1Mb,但是如果系统的max_io_size更小,那默认值也会被缩小。

        可参考:Document 47324.1 Init.ora Parameter "DB_FILE_DIRECT_IO_COUNT" Reference Note。

3. 调整内存排序区,以使磁盘排序的磁盘IO最小化。

        在9i之前,使用自动SQL执行内存管理。(Document 147806.1 Automated SQL Execution Memory Management)

        在8i,手动调整不同的排序区。(Document 109907.1 How to Determine an Optimal SORT_AREA_SIZE)

4. 对于LOB段,可以存储到操作系统的文件系统中。

        Buffer Cache能够提供一些内存缓冲。

5. 通过查询VSESSION_EVENT(等待事件)或VSESSTAT(统计数据),明确执行直接IO操作的session。

 'physical reads direct', 'physical reads direct (lob)',

 'physical writes direct' & 'physical writes direct (lob)'

对这些SQL语句调优。

6. 根据V$FILESTAT或Statspack的“File IO Statistics”节,明确哪些数据文件是磁盘存储的瓶颈,将他们移到其他磁盘。

(未完待续)

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2013-10-08,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
数据库
云数据库为企业提供了完善的关系型数据库、非关系型数据库、分析型数据库和数据库生态工具。您可以通过产品选择和组合搭建,轻松实现高可靠、高可用性、高性能等数据库需求。云数据库服务也可大幅减少您的运维工作量,更专注于业务发展,让企业一站式享受数据上云及分布式架构的技术红利!
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档