STL_HASH - Amazon Redshift

STL_HASH

Analisa as etapas de execução de hash para as consultas.

STL_HASH 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_HASH 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.
bytes bigint O tamanho, em bytes, de todas as linhas de saída da etapa.
slots inteiro O número total de buckets de hash.
occupied inteiro O número total de slots que contêm registros.
maxlength inteiro O tamanho do maior slot.
tbl inteiro ID da tabela.
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.
workmem bigint O número total de bytes da memória de trabalho atribuída à etapa.
num_parts inteiro O número total de partições em que a tabela hash é particionada durante uma etapa de hash.
est_rows bigint O número estimado de linhas para o hash.
num_blocks_permitted inteiro Essas informações são somente para uso interno.
resizes inteiro Essas informações são somente para uso interno.
soma de verificação bigint Essas informações são somente para uso interno.
runtime_filter_size inteiro O tamanho do filtro do tempo de execução em bytes.
max_runtime_filter_size inteiro O tamanho máximo do filtro do tempo de execução em bytes.

Consultas de exemplo

O exemplo a seguir retorna informações sobre o número de partições que foram usadas em um hash para a consulta 720, e indica que nenhuma das etapas foi executada em disco.

select slice, rows, bytes, occupied, workmem, num_parts, est_rows, num_blocks_permitted, is_diskbased from stl_hash where query=720 and segment=5 order by slice;
slice | rows | bytes | occupied | workmem | num_parts | est_rows | num_blocks_permitted | is_diskbased -------+------+--------+----------+----------+-----------+----------+----------------------+-------------- 0 | 145 | 585800 | 1 | 88866816 | 16 | 1 | 52 f 1 | 0 | 0 | 0 | 0 | 16 | 1 | 52 f (2 rows)