Analisa as etapas de execução que ocorrem quando uma cláusula LIMIT é usada em uma consulta SELECT.
STL_LIMIT 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 obter mais informações, consulte Visibilidade de dados em tabelas e visualizações de sistema.
nota
STL_LIMIT 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. |
soma de verificação | bigint | Essas informações são somente para uso interno. |
Consultas de exemplo
Para gerar uma linha na tabela STL_LIMIT, este exemplo primeiro executa a consulta a seguir, com a tabela VENUE usando a cláusula LIMIT.
select * from venue
order by 1
limit 10;
venueid | venuename | venuecity | venuestate | venueseats
---------+----------------------------+-----------------+------------+------------
1 | Toyota Park | Bridgeview | IL | 0
2 | Columbus Crew Stadium | Columbus | OH | 0
3 | RFK Stadium | Washington | DC | 0
4 | CommunityAmerica Ballpark | Kansas City | KS | 0
5 | Gillette Stadium | Foxborough | MA | 68756
6 | New York Giants Stadium | East Rutherford | NJ | 80242
7 | BMO Field | Toronto | ON | 0
8 | The Home Depot Center | Carson | CA | 0
9 | Dick's Sporting Goods Park | Commerce City | CO | 0
10 | Pizza Hut Park | Frisco | TX | 0
(10 rows)
Em seguida, execute as seguintes consultas para encontrar o ID de consulta da última consulta que você executou com a tabela VENUE.
select max(query)
from stl_query;
max
--------
127128
(1 row)
Opcionalmente, execute a seguinte consulta para verificar se o ID de consulta corresponde à consulta LIMIT que você executou anteriormente.
select query, trim(querytxt)
from stl_query
where query=127128;
query | btrim
--------+------------------------------------------
127128 | select * from venue order by 1 limit 10;
(1 row)
Finalmente, execute a seguinte consulta para obter informações sobre a consulta LIMIT da tabela STL_LIMIT.
select slice, segment, step, starttime, endtime, tasknum
from stl_limit
where query=127128
order by starttime, endtime;
slice | segment | step | starttime | endtime | tasknum
-------+---------+------+----------------------------+----------------------------+---------
1 | 1 | 3 | 2013-09-06 22:56:43.608114 | 2013-09-06 22:56:43.609383 | 15
0 | 1 | 3 | 2013-09-06 22:56:43.608708 | 2013-09-06 22:56:43.609521 | 15
10000 | 2 | 2 | 2013-09-06 22:56:43.612506 | 2013-09-06 22:56:43.612668 | 0
(3 rows)