[ 2018-11-05 ]

Monitoreando el uso de indices de otros esquemas

La vista v$object_usage permite ver información de la utilización de indices sobre los cuales se ha activado la opción de monitoreo con:

alter index index_name monitoring usage;

Esta vista nos brinda info de aquellos indices monitoreados pertenecientes al propio schema con el cual se está corriendo la consulta.

 SQL> select index_name, table_name, monitoring, used from v$object_usage;

INDEX_NAME                     TABLE_NAME                     MONITORING USED
------------------------------ ------------------------------ ---------- ----
T1_IDX1                        T1                             YES        NO

Si queremos ver información de todos los indices monitoreados en la base de datos, o si simplemente necesitamos verificar uno o varios owners en particular. 
Podemos utilizar la siguiente consulta:

SQL> select
           u.name "owner",
           io.name "index_name",
           t.name "table_name",
           decode(bitand(i.flags, 65536), 0, 'no', 'yes') "monitoring",
           decode(bitand(nvl(ou.flags,0), 1), 0, 'no', 'yes') "used",
           ou.start_monitoring "start_monitoring",
           ou.end_monitoring "end_monitoring"
         from
           sys.obj$ io,
           sys.obj$ t,
           sys.ind$ i,
           sys.object_usage ou,
           sys.user$ u
        where
           t.obj# = i.bo#
           and
          io.owner# = u.user#
          and
          io.obj# = i.obj#
          and
          u.name in ('<OWNER>')
          and
          i.obj# = ou.obj#(+);


 owner      index_name     table_name        monitoring used start_monitoring    end_monitoring
---------- -------------  ----------------- ---------- ---- ------------------- -------------------

TST1       T1_IDX1        T1                        no  yes 11/06/2018 13:09:24 11/06/2018 13:14:04

Nota: Lógicamente necesitaremos los privilegios necesarios de SELECT para acceder a las tablas de "sys" utilizadas y que la consulta se ejecute correctamente. 

1 comentario: