Oracle 等待事件 control file parallel write 官方解释,作用,如何使用及优化方法
本站中文解释
Oracle事件control file parallel write指的是当控制文件(control file)的修改被迫使Oracle跳过其他系统资源并且并行性地写入时所产生的事件。当所需的改变比其它系统资源紧迫时,可能会发生这种情况。
控制文件(control file)是用于跟踪数据库状态的特殊存储文件,它用来保存用于恢复和重建数据库的重要信息,如数据文件列表、redo日志文件状态、表空间列表以及其他系统信息。 因此,为了避免它被破坏,保持控制文件的一致性是至关重要的,只能一次顺序的写入,否则,数据库的一致性将受到潜在威胁。
当控制文件的信息有修改需求时,Oracle会首先检查是否可以允许在其他资源上做这种修改,比如说读写通知(read/write notice),预取请求(prefetch request),等等。如果无法允许,控制文件就会被写入,这称为“control file parallel write”。
control file parallel write 这种事件经常发生,主要是由于控制文件写入很慢,而且在事务处理过程中也很耗时。因此,在最糟糕的情况下,如果控制文件的修改需要的时间大于相关资源的请求时间,就会产生control file parallel write事件。同时,如果有大量的控制文件修改,数据库会要求控制文件并行写,以避免等待时间过长。
总之,control file parallel write事件指的是Oracle将控制文件的紧迫写入需求优先级高,独自排列而非一起写入到队列中,以提高写入效率而产生的事件。
官方英文解释
-
The session starts a control file transaction (to ensure the control files are up to date in case the session crashes before committing the control file transaction)
-
The session commits a transaction to a control file
-
Changing a generic entry in the control file, the new value is being written to all control files
Wait Time: The wait time is the time it takes to finish all writes to all control files
Parameter | Description |
---|---|
files |
The number of control files to which the session is writing |
blocks |
The number of blocks that the session is writing to the control file |
requests |
The number of I/O requests which the session wants to write |