如果oracle日志文件组有多个成员,那么lgwr必须写redo到每个活动member。如果,non-blocking(非阻塞) writes(即异步写)可用(即操作系统asynchronous I/O可用并且启用了disk_asynch_io)那么,lgwr并行执行这些写操作。
但是,如果non-blocking writes不可用,那么lgwr必串行写每个active log file member。这加倍了redo writes的response time。即使配置了LGWR I/O slaves(setting dbwr_io_slaves (or directly using _lgwr_io_slaves)),lgwr也不能并行的写多个log file members。连续的redo writes可以由不同的I/O slaves并行的执行,但是每个单个的redo write由一个I/O slave (or LGWR)执行,单独得串行写到each log file member 。这样log file parallel write等待事件的parallel容易让人误解。
如果non-blocking writes可用,那么elapsed time for this wait event也容易让人误解。它不记录elapsed time for the entire redo write。相反,它measures the delta (时间间隔)between the elapsed times of the first and last component parallel writes to finish.
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/9599/viewspace-472954/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/9599/viewspace-472954/