Oracle 视图 V$STREAMS_APPLY_READER 官方解释,作用,如何使用详细说明

本站中文解释

Oracle视图V$STREAMS_APPLY_READER显示了Oracle流中当前正在处理消息的Apply Reader进程的信息,该视图显示了Apply Reader进程所处理的消息的详细信息,包括应用程序名称、正在处理的队列、READER_QUEUE_EQUENCE及APPLY_NAME等参数的相关信息。通过查询V$STREAMS_APPLY_READER视图能够收集Apply Reader进程当前正在处理的消息以及上一次处理的消息所包含的信息。使用V$STREAMS_APPLY_READER视图也可以发现Apply Reader进程正在处理的消息是否落后于源端,如果是,那么就知道流捕获服务正在受到影响。

V$STREAMS_APPLY_READER视图的主要用途如下:
1.监视当前的消息处理情况,并确保消息被处理。
2.查看处理队列中的消息是否已落后于应用程序的队列,以便及时调整并恢复正常的流处理。
3.查看当前被处理的消息的相关信息,如消息ID以及当前处理的数据库中的表名字等,以便可以了解到应用程序正在处理什么样的消息以及当前处理的进度。

要使用V$STREAMS_APPLY_READER视图,必须通过下面的查询语句进行操作:

SELECT *FROMV$STREAMS_APPLY_READER;

官方英文解释

V$STREAMS_APPLY_READER displays information about each apply reader. The apply reader is a process which reads (dequeues) messages from the queue, computes message dependencies, and builds transactions. It passes the transactions on to the coordinator in commit order for assignment to the apply servers. An apply reader is a subcomponent of an apply process, outbound server, or inbound server.
Column Datatype Description

SID

NUMBER

Session ID of the reader’s session

SERIAL#

NUMBER

Serial number of the reader’s session

APPLY#

NUMBER

Apply process number. An apply process is an Oracle background process, prefixed by ap.

APPLY_NAME

VARCHAR2(128)

Name of the apply process

STATE

VARCHAR2(36)

State of the reader:

  • INITIALIZING – Starting up

  • IDLE – Performing no work

  • DEQUEUE MESSAGES – Dequeuing messages from the queue

  • SCHEDULE MESSAGES – Computing dependencies between messages and assembling messages into transactions

  • SPILLING – Spilling unapplied messages from memory to hard disk

  • PAUSED - WAITING FOR DDL TO COMPLETE – Waiting for a data definition language (DDL) logical change record (LCR) to be applied

TOTAL_MESSAGES_DEQUEUED

NUMBER

Total number of messages dequeued since the apply process was last started

TOTAL_MESSAGES_SPILLED

NUMBER

Number of messages spilled by the reader since the apply process was last started

DEQUEUE_TIME

DATE

Time when the last message was received

DEQUEUED_MESSAGE_NUMBER

NUMBER

Number of the last message received

DEQUEUED_MESSAGE_CREATE_TIME

DATE

For captured messages, creation time at the source database of the last message received. For user-enqueued messages, time when the message was enqueued into the queue at the local database.

SGA_USED

NUMBER

Amount (in bytes) of SGA memory used by the apply process since it was last started

ELAPSED_DEQUEUE_TIME

NUMBER

Time elapsed (in hundredths of a second) dequeuing messages since the apply process was last started

ELAPSED_SCHEDULE_TIME

NUMBER

Time elapsed (in hundredths of a second) scheduling messages since the apply process was last started. Scheduling includes computing dependencies between messages and assembling messages into transactions.

ELAPSED_SPILL_TIME

NUMBER

Elapsed time (in hundredths of a second) spent spilling messages since the apply process was last started

LAST_BROWSE_NUM

NUMBER

Reserved for internal use

OLDEST_SCN_NUM

NUMBER

Oldest SCN

LAST_BROWSE_SEQ

NUMBER

Reserved for internal use

LAST_DEQ_SEQ

NUMBER

Last dequeue sequence number

OLDEST_XIDUSN

NUMBER

Transaction ID undo segment number of the oldest transaction that either has been applied or is being applied

OLDEST_XIDSLT

NUMBER

Transaction ID slot number of the oldest transaction that either has been applied or is being applied

OLDEST_XIDSQN

NUMBER

Transaction ID sequence number of the oldest transaction that either has been applied or is being applied

SPILL_LWM_SCN

NUMBER

Spill low-watermark SCN

PROXY_SID

NUMBER

When the apply process uses combined capture and apply, the session ID of the propagation receiver that is responsible for direct communication between capture and apply. If the apply process does not use combined capture and apply, then this column is 0.

PROXY_SERIAL

NUMBER

When the apply process uses combined capture and apply, the serial number of the propagation receiver that is responsible for direct communication between capture and apply. If the apply process does not use combined capture and apply, then this column is 0.

PROXY_SPID

VARCHAR2(12)

When the apply process uses combined capture and apply, the process identification number of the propagation receiver that is responsible for direct communication between capture and apply. If the apply process does not use combined capture and apply, then this column is 0.

CAPTURE_BYTES_RECEIVED

NUMBER

When the apply process uses combined capture and apply, the number of bytes received by the apply process from the capture process since the apply process last started. If the apply process does not use combined capture and apply, then this column is not populated.

DEQUEUED_POSITION

RAW(64)

Dequeued position. This column is populated only for an apply process that is functioning as an XStream inbound server.

LAST_BROWSE_POSITION

RAW(64)

Reserved for internal use

OLDEST_POSITION

RAW(64)

The earliest position of the transactions currently being dequeued and applied. This column is populated only for an apply process that is functioning as an XStream inbound server.

SPILL_LWM_POSITION

RAW(64)

Spill low-watermark position. This column is populated only for an apply process that is functioning as an XStream inbound server.

OLDEST_TRANSACTION_ID

VARCHAR2(128)

Oldest transaction ID

TOTAL_LCRS_WITH_DEP

NUMBER

Total number of LCRs with row-level dependencies since the apply process last started

TOTAL_LCRS_WITH_WMDEP

NUMBER

Total number of LCRs with watermark dependencies since the apply process last started.

A watermark dependency occurs when an apply process must wait until the apply process’s low watermark reaches a particular threshold.

TOTAL_IN_MEMORY_LCRS

NUMBER

Total number of LCRs currently in memory

SGA_ALLOCATED

NUMBER

The total amount of shared memory (in bytes) allocated from the Streams pool for the apply process since the apply process last started

CON_ID

NUMBER

The ID of the container to which the data pertains. Possible values include:

  • 0: This value is used for rows containing data that pertain to the entire CDB. This value is also used for rows in non-CDBs.

  • 1: This value is used for rows containing data that pertain to only the root

  • n: Where n is the applicable container ID for the rows containing data

Note:

The ELAPSED_DEQUEUE_TIME and ELAPSED_SCHEDULE_TIME columns are only populated if the TIMED_STATISTICS initialization parameter is set to true, or if the STATISTICS_LEVEL initialization parameter is set to TYPICAL or ALL.

See Also:

  • “TIMED_STATISTICS”

  • “STATISTICS_LEVEL”


数据运维技术 » Oracle 视图 V$STREAMS_APPLY_READER 官方解释,作用,如何使用详细说明