STL_UNIQUE - Amazon Redshift

STL_UNIQUE

Analisa as etapas de execução que ocorrem quando uma função DISTINCT é usada na lista SELECT, ou quando duplicações são removidas de uma consulta UNION ou INTERSECT.

STL_UNIQUE permanece visível para todos os usuários. Os superusuários podem ver todas as linhas; usuários regulares podem ver somente seus próprios dados. Para ter mais informações, consulte Visibilidade de dados em tabelas e visualizações de sistema.

nota

STL_UNIQUE só contém consultas executadas em clusters principais. Ele não contém consultas executadas em clusters de escalabilidade de simultaneidade. Para acessar consultas executadas em clusters de escalabilidade principais e de simultaneidade, é recomendável usar a exibição de monitoramento SYS SYS_QUERY_DETAIL. Os dados na exibição de monitoramento SYS são formatados para serem mais fáceis de usar e compreender.

Colunas da tabela

Nome da coluna Tipo de dados Descrição
userid inteiro O ID do usuário que gerou a entrada.
consulta inteiro ID da consulta. A coluna de consulta pode ser usada para unir outras tabelas e exibições do sistema.
slice inteiro O número que identifica a fatia em que a consulta estava sendo executada.
segment inteiro O número que identifica o segmento da consulta.
etapa inteiro Etapa da consulta que foi executada.
starttime timestamp O horário (em UTC) de início da consulta. O tempo total inclui consultas e execução, com seis dígitos de precisão para segundos fracionários. Por exemplo: 2009-06-12 11:29:19.131358.
endtime timestamp Horário em UTC em que a consulta foi finalizada. O tempo total inclui consultas e execução, com seis dígitos de precisão para segundos fracionários. Por exemplo: 2009-06-12 11:29:19.131358.
tasknum inteiro Número do processo de tarefa de consulta que foi atribuído para executar a etapa.
rows bigint O número total de linhas que foram processadas.
type character(6) O tipo da etapa. Os valores válidos são:
  • HASHED. Indica que a etapa usou uma agregação não classificada e agrupada.

  • PLAIN. Indica que a etapa usou uma agregação escalar e não agrupada.

  • SORTED. Indica que a etapa usou uma agregação classificada e agrupada.

is_diskbased character(1) Se o valor é true (t), a consulta foi realizada como uma operação em disco. Se o valor é false (f), a consulta foi realizada na memória.
slots inteiro O número total de buckets de hash.
workmem bigint O número total de bytes na memória de trabalho que foram atribuídos à etapa.
max_buffers_used bigint O número máximo de buffers usados na tabela de hash antes de acessar o disco.
resizes inteiro Essas informações são somente para uso interno.
occupied inteiro Essas informações são somente para uso interno.
flushable inteiro Essas informações são somente para uso interno.
used_unique_prefetching character(1) Essas informações são somente para uso interno.
bytes biginit O número de bytes de todas as linhas de saída da etapa.

Consultas de exemplo

Suponha que você execute a seguinte consulta:

select distinct eventname from event order by 1;

Assumindo que o ID da consulta anterior seja 6313, o exemplo a seguir mostra o número de linhas produzidas pela etapa exclusiva para cada fatia nos segmentos 0 e 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)