WINDOWS下的程序员出身,偶尔也写一些linux平台下小程序, 后转行数据库行业,专注于ORACLE和DB2的运维和优化。 同时也是ios移动开发者。欢迎志同道合的朋友一起研究技术。 数据库技术交流群:58308065,23618606
全部博文(599)
分类: Oracle
2009-12-01 15:13:56
db file parallel write (SYSTEM I/0类)(DBWR专属等待事件)
>> 每隔三秒一次的查找。
>> 当前台提交需要清除缓冲区内容时。
>> 当满足_DB_LARGE_DIRTY_QUEUE / _DB_BLOCK_MAX_DIRTY_TARGET / FAST_START_MTTR_TARGET阈值。
SELECT s.event, s.time_waited, s.average_wait
FROM v$system_event s
WHERE s.event IN ('db file parallel write', 'free buffer waits',
'write complete waits')
相关查询:
SELECT *
FROM v$sysstat
WHERE NAME IN ('write clones created in background',
'write clones created in foreground')
>> 如果平均等待时间长,要选择使用正确的IO操作。如果数据文件在裸设备上,并且平台支持异步IO,请应该使用异步IO。如果数据文件位于文件系统上,则应该使用同步写入和直接IO。相关的初始化参数是DISK_ASYNCH_IO和FILESYSTEMIO_OPTIONS。
>> 如果重做位于祼设备上,而数据文件位于文件系统上,则可以设置DISK_ASYNCH_IO=TRUE,FILESYSTEMIO_OPTIONS=DIRECTIO。使用这种方法可以获得对于祼设备使用异步IO,而对于文件系统使用直接IO的效果。
>> 使用DB_WRITER_PROCESSES选项产生多个DBWR进程。
事件号:190
事件名:db file parallel write
参数一:requests(DBWR写入批量的大小-块数)
参数二:interrupt(中断)
参数三:timeout(超时)