Oracle 等待事件 read by other session 官方解释,作用,如何使用及优化方法

本站中文解释

Oracle的Read by Other Session 事件是Oracle中数据库中的一种活动,该活动描述了一个完成查询的会话(session)从另一个会话中获取查询数据副本的过程,这通常是因为需要获取从另一个表中获取相同的行。

因此,Read by Other Session 事件涉及两个会话之间的互动。第一个会话开始一项查询操作,它从表中获取数据,另一个会话则从表中获取相同的行。两个会话之间的互动涉及的行的同步,这意味着第一个会话必须等到第二个会话完成获取数据之后才能继续执行操作。

除了通过交互,Oracle还可以通过内部机制从另一个会话中读取数据。具体来说,它会从另一个会话中获取查询数据并将其缓存到数据库中,以便第一个会话可以更快地访问查询数据,而无需再次读取。这种方法是Read by Other Session事件的一种细节。

另一方面,当查询不是跨组查询时,则不会触发 Read by Other Session 事件。这是因为在不同组之间的数据交互需要经过更大的握手,而在同一集群中的会话之间的数据交互则更为平稳。

因此,Read by Other Session 事件是指在两个会话之间进行交互时,第一个会话从另一个会话中获取同样的查询数据的活动。结合上面那个语句,一句话就可以来描述该事件:当第一个会话对表执行查询时,它可能需要从另一个会话获取同样的查询数据,而这也正是Read by Other Session事件所描述的。

官方英文解释

This event occurs when a session requests a buffer that is currently being read into the buffer cache by another session. Prior to release 10.1, waits for this event were grouped with the other reasons for waiting for buffers under the ‘buffer busy waits’ event.

Wait Time: Time waited for the buffer to be read by the other session (in microseconds)

Parameter Description

file#

See “file#”

block#

See “block#”

class#

See “class”


数据运维技术 » Oracle 等待事件 read by other session 官方解释,作用,如何使用及优化方法