STL_UNIQUE
Analiza los pasos de ejecución que tienen lugar cuando se utiliza una función DISTINCT en la lista SELECT o cuando se eliminan los duplicados en una consulta UNION o INTERSECT.
STL_UNIQUE es visible para todos los usuarios. Los superusuarios pueden ver todas las filas; los usuarios normales solo pueden ver sus datos. Para obtener más información, consulte Visibilidad de datos en las tablas y vistas de sistema.
nota
STL_UNIQUE solo contiene consultas que se ejecutan en los clústeres principales. No contiene consultas que se ejecuten en clústeres que se escalen de forma simultánea. Para acceder a las consultas que se ejecutan en los clústeres de escalado principal y simultáneo, le recomendamos que utilice la vista de monitoreo SYS SYS_QUERY_DETAIL. Los datos de la vista de monitoreo SYS están formateados para que sean más fáciles de usar y entender.
Columnas de la tabla
Nombre de la columna | Tipo de datos | Descripción |
---|---|---|
userid | integer | ID del usuario que generó la entrada. |
consulta | integer | ID de la consulta. La columna de consulta puede usarse para combinar otras vistas y tablas del sistema. |
slice | integer | Es el número que identifica el sector donde se estaba ejecutando la consulta. |
segment | integer | Número que identifica el segmento de la consulta. |
paso | integer | Paso de la consulta que se ejecutó. |
starttime | Marca de tiempo | Hora en UTC en que comenzó la consulta. El tiempo total incluye colas y ejecución. Con 6 dígitos de precisión para fracciones de segundo. Por ejemplo: 2009-06-12 11:29:19.131358 . |
endtime | Marca de tiempo | Hora en UTC en la que finalizó la consulta. El tiempo total incluye colas y ejecución. Con 6 dígitos de precisión para fracciones de segundo. Por ejemplo: 2009-06-12 11:29:19.131358 . |
tasknum | integer | Es el número del proceso de tarea de la consulta que se asignó para ejecutar el paso. |
rows | bigint | Es la cantidad total de filas que se procesaron. |
type |
character (6) | El tipo de paso. Los valores válidos son:
|
is_diskbased | character (1) | Si es true (t) (verdadero), significa que la consulta se realizó como una operación basada en el disco. Si es false (f) (falso), implica que la consulta se realizó en la memoria. |
slots | integer | Cantidad total de buckets hash. |
workmem | bigint | Cantidad total de bytes en la memoria funcional que se asignaron a este paso. |
max_buffers_used | bigint | Cantidad máxima de búferes utilizados en la tabla hash antes de pasar al disco. |
resizes | integer | Esta información es solo para uso interno. |
occupied | integer | Esta información es solo para uso interno. |
flushable | integer | Esta información es solo para uso interno. |
used_unique_prefetching | character (1) | Esta información es solo para uso interno. |
bytes | biginit | Número de bytes de todas las filas de resultado del paso. |
Consultas de ejemplo
Suponga que ejecuta la siguiente consulta:
select distinct eventname
from event order by 1;
Si suponemos que el ID de la consulta anterior es 6313, en el siguiente ejemplo se muestra la cantidad de filas que produjo el paso único para cada sector de los segmentos 0 y 1.
select query, slice, segment, step, datediff(msec, starttime, endtime) as msec, tasknum, rows
from stl_unique where query = 6313
order by query desc, slice, segment, step;
query | slice | segment | step | msec | tasknum | rows
-------+-------+---------+------+------+---------+------
6313 | 0 | 0 | 2 | 0 | 22 | 550
6313 | 0 | 1 | 1 | 256 | 20 | 145
6313 | 1 | 0 | 2 | 1 | 23 | 540
6313 | 1 | 1 | 1 | 42 | 21 | 127
6313 | 2 | 0 | 2 | 1 | 22 | 540
6313 | 2 | 1 | 1 | 255 | 20 | 158
6313 | 3 | 0 | 2 | 1 | 23 | 542
6313 | 3 | 1 | 1 | 38 | 21 | 146
(8 rows)