Thank you for visiting Spatial DBA - Oracle and ArcSDE.
Please visit Oracle DBA Tips (http://www.oracledbatips.com) for more Oracle DBA Tips.
==================================================================
V$UNDOSTAT
displays a histogram of statistical data to show how well the system is working. The available statistics include undo space consumption, transaction concurrency, and length of queries executed in the instance. You can use this view to estimate the amount of undo space required for the current workload. Oracle uses this view to tune undo usage in the system. The view returns NULL values if the system is in manual undo management mode.
Each row in the view keeps statistics collected in the instance for a 10-minute interval. The rows are in descending order by the BEGIN_TIME
column value. Each row belongs to the time interval marked by (BEGIN_TIME
, END_TIME
). Each column represents the data collected for the particular statistic in that time interval. The first row of the view contains statistics for the (partial) current time period. The view contains a total of 576 rows, spanning a 4 day cycle.
Column
|
Datatype
|
Description
|
BEGIN_TIME | DATE |
Identifies the beginning of the time interval
|
END_TIME | DATE |
Identifies the end of the time interval
|
UNDOTSN | NUMBER |
Represents the last active undo tablespace in the duration of time. The tablespace ID of the active undo tablespace is returned in this column. If more than one undo tablespace was active in that period, the active undo tablespace that was active at the end of the period is reported.
|
UNDOBLKS | NUMBER |
Represents the total number of undo blocks consumed. You can use this column to obtain the consumption rate of undo blocks, and thereby estimate the size of the undo tablespace needed to handle the workload on your system.
|
TXNCOUNT | NUMBER |
Identifies the total number of transactions executed within the period
|
MAXQUERYLEN | NUMBER |
Identifies the length of the longest query (in seconds) executed in the instance during the period. You can use this statistic to estimate the proper setting of the
UNDO_RETENTION initialization parameter. The length of a query is measured from the cursor open time to the last fetch/execute time of the cursor. Only the length of those cursors that have been fetched/executed during the period are reflected in the view. |
MAXQUERYID | VARCHAR2(13) |
SQL identifier of the longest running SQL statement in the period
|
MAXCONCURRENCY | NUMBER |
Identifies the highest number of transactions executed concurrently within the period
|
UNXPSTEALCNT | NUMBER |
Number of attempts to obtain undo space by stealing unexpired extents from other transactions
|
UNXPBLKRELCNT | NUMBER |
Number of unexpired blocks removed from certain undo segments so they can be used by other transactions
|
UNXPBLKREUCNT | NUMBER |
Number of unexpired undo blocks reused by transactions
|
EXPSTEALCNT | NUMBER |
Number of attempts to steal expired undo blocks from other undo segments
|
EXPBLKRELCNT | NUMBER |
Number of expired undo blocks stolen from other undo segments
|
EXPBLKREUCNT | NUMBER |
Number of expired undo blocks reused within the same undo segments
|
SSOLDERRCNT | NUMBER |
Identifies the number of times the error ORA-01555 occurred. You can use this statistic to decide whether or not the
UNDO_RETENTION initialization parameter is set properly given the size of the undo tablespace. Increasing the value of UNDO_RETENTION can reduce the occurrence of this error. |
NOSPACEERRCNT | NUMBER |
Identifies the number of times space was requested in the undo tablespace and there was no free space available. That is, all of the space in the undo tablespace was in use by active transactions. The corrective action is to add more space to the undo tablespace.
|
ACTIVEBLKS | NUMBER |
Total number of blocks in the active extents of the undo tablespace for the instance at the sampled time in the period
|
UNEXPIREDBLKS | NUMBER |
Total number of blocks in the unexpired extents of the undo tablespace for the instance at the sampled time in the period
|
EXPIREDBLKS | NUMBER |
Total number of blocks in the expired extents of the undo tablespace for the instance at the sampled time in the period
|
TUNED_UNDORETENTION | NUMBER |
Amount of time (in seconds) for which undo will not be recycled from the time it was committed. At any point in time, the latest value of
TUNED_UNDORETENTION is used to determine whether data committed at a particular time in the past can be recycled. |
V$UNDOSTAT
view contains statistics for monitoring and tuning undo space. Use this view to help estimate the amount of undo space required for the current workload. The database also uses this information to help tune undo usage in the system. This view is meaningful only in automatic undo management (ASM) mode. The
V$UNDOSTAT
view is useful for monitoring the effects of transaction execution on undo space in the current instance. Statistics are available for UNDO space consumption, transaction concurrency, the tuning of undo retention, and the length and SQL ID of long-running queries in the instance.
When the columns
UNXPSTEALCNT through EXPBLKREUCNT hold non-zero values, it is an indication of space pressure. |
If the column SSOLDERRCNT is non-zero, then UNDO_RETENTION is not properly set. |
If the column NOSPACEERRCNT is non-zero, then there is a serious space problem. |
UNDO_RETENTION
specifies (in seconds) the low threshold value of undo retention. The parameter can only be honoured if the current undo tablespace has enough space. TUNED_UNDORETENTION
column of the V$UNDOSTAT
dynamic performance view.-- See how much undo information has been written in the past hour.
select begin_time, end_time, undoblks, txncount, maxconcurrency, nospaceerrcnt from V$UNDOSTAT where begin_time > sysdate-(1/24); BEGIN_TI END_TIME UNDOBLKS TXNCOUNT MAXCONCURRENCY NOSPACEERRCNT -------- -------- ---------- ---------- -------------- ------------- 10:11:49 10:19:56 155 228 3 0 10:01:49 10:11:49 177 763 3 0 09:51:49 10:01:49 150 593 3 0 09:41:49 09:51:49 398 1797 5 0 09:31:49 09:41:49 1340 7060 5 0 09:21:49 09:31:49 163 2124 4 0 Note: This query shows how much redo has been used over the last hour. Here we can see that there have been 7060 transactions from 09:31 – 09:41 using 1340 undo blocks and none of them received any errors due to space management.
|
-- To find the time of the longest query in the instance:
BEGIN_TI MAXQUERYLEN UNDOBLKS
-------- ----------- ----------
10:21:49 0 2
10:11:49 0 223
10:01:49 0 177
09:51:49 0 150
09:41:49 0 398
09:31:49 36 1340 <--- 36 seconds
09:21:49 0 163
09:11:49 0 82
09:01:49 0 326
08:51:49 0 253
08:41:49 0 186
Note: This shows that the longest query that has been run was 36 seconds long. To ensure this query never gets ORA-01555 set
UNDO_RETENTION to at least 36 seconds. If UNDO_RETENTION is set too high the UNDO tablespace will need to be very large. If to low ORA-01555 may occur to often. |
Oracle data dictionary views
Last updated: 2009-10-29 Thursday
|