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 contém apenas as consultas executadas nos principais clusters provisionados. Ele não contém consultas executadas em clusters de escalabilidade simultânea ou em namespaces sem servidor. Para acessar os planos de explicação das consultas executadas em clusters principais, clusters de escalabilidade simultânea e namespaces sem servidor, recomendamos usar a visualizaçã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 | integer | O ID do usuário que gerou a entrada. |
consulta | integer | ID da consulta. A coluna de consulta pode ser usada para unir outras tabelas e exibições do sistema. |
slice | integer | O número que identifica a fatia em que a consulta estava sendo executada. |
segment | integer | O número que identifica o segmento da consulta. |
etapa | integer | 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 | integer | 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 | integer | 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)