STL_DIST
Registra informações sobre a atividade de rede durante a execução das etapas de uma consulta que distribui dados. O tráfego de rede é capturado pelos números de linhas, bytes e pacotes que são enviados pela rede durante uma determinada etapa em uma determinada fatia. A duração da etapa é a diferença entre os horários de início e término registrados.
Para identificar as etapas de distribuição em uma consulta, procure pelos rótulos dist na exibição QUERY_SUMMARY ou execute o comando EXPLAIN e, em seguida, procure pelos atributos da etapa que incluem o dist.
STL_DIST 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_DIST 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. |
packets | inteiro | O número total de pacotes enviados pela rede. |
Consultas de exemplo
O exemplo a seguir retorna informações de distribuição para consultas com um ou mais pacotes e duração maior do que zero.
select query, slice, step, rows, bytes, packets,
datediff(seconds, starttime, endtime) as duration
from stl_dist
where packets>0 and datediff(seconds, starttime, endtime)>0
order by query
limit 10;
query | slice | step | rows | bytes | packets | duration
--------+-------+------+--------+---------+---------+-----------
567 | 1 | 4 | 49990 | 6249564 | 707 | 1
630 | 0 | 5 | 8798 | 408404 | 46 | 2
645 | 1 | 4 | 8798 | 408404 | 46 | 1
651 | 1 | 5 | 192497 | 9226320 | 1039 | 6
669 | 1 | 4 | 192497 | 9226320 | 1039 | 4
675 | 1 | 5 | 3766 | 194656 | 22 | 1
696 | 0 | 4 | 3766 | 194656 | 22 | 1
705 | 0 | 4 | 930 | 44400 | 5 | 1
111525 | 0 | 3 | 68 | 17408 | 2 | 1
(9 rows)