Análise de cargas de trabalho de consulta com Performance Explorer¶
Você pode usar o Performance Explorer na Snowsight para monitorar métricas interativas para cargas de trabalho SQL. As métricas mostram a integridade geral do seu ambiente Snowflake, a atividade de consulta, as alterações nos warehouses e as alterações nas tabelas.
Benefícios do Performance Explorer¶
O Performance Explorer pode ajudar você a responder às seguintes perguntas sobre a atividade do Snowflake:
Atividade geral: as consultas geralmente são bem-sucedidas e os usuários do Snowflake conseguem trabalhar?
Mudança ao longo do tempo: se a atividade de consulta ou os recursos parecerem diferentes do esperado, o que mudou e quando as mudanças ocorreram?
Pontos acessos: quando estiver em busca de oportunidades para agir, onde devo me concentrar?
Casos de uso comuns do Performance Explorer¶
O Performance Explorer pode ajudar com os seguintes casos de uso:
Investigação de relatórios de problemas sobre consultas ou cargas de trabalho: se uma carga de trabalho do Snowflake começou a se comportar de forma diferente, determine o que mais pode ter mudado recentemente, como os recursos dos quais a carga de trabalho depende ou a atividade de cargas de trabalho vizinhas.
Identificação proativa de pontos problemáticos: se um warehouse ou tabela mostrar erros persistentes ou saturação, identifique e resolva o ponto de acesso antes que ele afete cargas de trabalho críticas.
Identificação de oportunidades de otimização: encontre warehouses e tabelas que possam ser incompatíveis com a atividade de consulta suportada e ajuste as cargas de trabalho e os recursos para torná-los compatíveis.
Privilégios obrigatórios¶
Um usuário com a função ACCOUNTADMIN podem acessar o Performance Explorer.
Usuários sem a função ACCOUNTADMIN devem receber as seguintes funções para acessar o Performance Explorer:
Função de aplicativo APP_USAGE_VIEWER
Função de banco de dados USAGE_VIEWER
Por exemplo, se você quiser que o usuário joe possa acessar o Performance Explorer, execute os seguintes comandos:
USE ROLE ACCOUNTADMIN;
CREATE ROLE pe_viewer_role;
GRANT APPLICATION ROLE SNOWFLAKE.APP_USAGE_VIEWER TO ROLE pe_viewer_role;
GRANT DATABASE ROLE SNOWFLAKE.USAGE_VIEWER TO ROLE pe_viewer_role;
GRANT ROLE pe_viewer_role TO USER joe;
Nota
The USAGE_VIEWER database role provides visibility into historical usage data, which can be used for cost management. For more information, see Funções de banco de dados SNOWFLAKE.
Abra o Performance Explorer¶
Para abrir o Performance Explorer, siga estas etapas:
Faça login na Snowsight.
No menu de navegação, selecione Monitoring » Performance Explorer.
O Performance Explorer contém gráficos que mostram métricas relacionadas às suas cargas de trabalho e à integridade geral do seu ambiente Snowflake.
Como funciona o painel do Performance Explorer¶
Você pode monitorar métricas interativas para cargas de trabalho SQL usando gráficos no painel do Performance Explorer. Também é possível aplicar filtros para mostrar métricas sobre apenas a atividade de consulta e os recursos nos quais você tem interesse.
Filtros do Performance Explorer¶
Na parte de cima do painel do Performance Explorer, você pode aplicar os seguintes filtros:
Period - Selecione um período, como a última semana, as últimas duas semanas ou um intervalo personalizado. O painel mostra métricas para o período especificado.
Por padrão, o Performance Explorer exibe métricas para uma semana. Ela oferece suporte a um período de até um mês, retornando a partir da data atual.
Vários gráficos do Performance Explorer mostram a porcentagem de alteração em comparação ao período anterior. O intervalo do período anterior corresponde ao intervalo do período atual. Por exemplo, se o período atual é de duas semanas, então o período anterior são as duas semanas antes do período atual começar.
Warehouse - Selecione um warehouse para visualizar métricas somente para a atividade de consulta executada usando esse warehouse. Para limitar os warehouses na lista, use o campo de pesquisa. Para limpar o filtro, selecione
X.Database - Selecione um banco de dados para visualizar métricas somente para a atividade de consulta que acessou esse banco de dados. Para limitar os bancos de dados na lista, use o campo de pesquisa. Para limpar o filtro, selecione
X.Role - Selecione uma função para visualizar métricas somente para a atividade de consulta iniciada por essa função. Para limitar as funções na lista, use o campo de pesquisa. Para limpar o filtro, selecione
X.
Gráficos do Performance Explorer¶
O Performance Explorer exibe métricas em diferentes tipos de gráficos. É importante entender os componentes de cada tipo de gráfico e como interpretá-los.
As seções Query health e Query activity têm gráficos de linhas semelhantes à imagem a seguir:
A tabela a seguir descreve os elementos da imagem:
Elemento |
Descrição |
|---|---|
1 |
Selecione > para abrir o painel lateral. |
2 |
Mostra a média ou mediana do período. |
3 |
Mostra a porcentagem que aumentou ou diminuiu em comparação ao período anterior. |
4 |
Representa o valor para uma hora. Os valores são mostrados por um período no início do intervalo. Por exemplo, se o intervalo for de uma hora, o valor mostrado em 9 AM é para o intervalo de 9 AM a 10 AM. |
Alguns gráficos incluem um valor médio ou mediano grande e a porcentagem de mudança para o período. Quando há mais de uma linha, há uma legenda para as linhas acima do gráfico.
Alguns gráficos têm um information icon ao lado do título. Passe o mouse sobre o ícone para obter informações sobre as métricas mostradas.
Você pode passar o mouse sobre um ponto do gráfico de linhas para ver o valor para uma hora específica:
As seções Top warehouses e Top tables têm gráficos de barras semelhantes à imagem a seguir:
A tabela a seguir descreve os elementos da imagem:
Elemento |
Descrição |
|---|---|
1 |
Selecione > para abrir o painel lateral. |
2 |
Selecione uma guia para mostrar as métricas na guia. |
3 |
Mostra o valor desta métrica para o período atual. |
4 |
Mostra a porcentagem que aumentou ou diminuiu em comparação ao período anterior. |
5 |
Indica que não há dados do período anterior para comparação. |
Tanto nos gráficos de linhas como nos gráficos de barras, selecione > para abrir um painel lateral que exibe informações mais detalhadas sobre as métricas. As informações detalhadas variam de acordo com as métricas mostradas no gráfico. A maioria dos painéis laterais apresenta tabelas ordenáveis que podem ser usadas para visualizar métricas de warehouses, funções e bancos de dados específicos no período. A imagem a seguir mostra um exemplo de um painel lateral:
As seções Top warehouses e Top tables também têm gráficos de eventos semelhantes à imagem a seguir:
Um gráfico de eventos mostra uma tabela ordenável de eventos para o tipo de objeto. Você pode examinar os dados em busca de eventos inesperados. Para mais informações sobre eventos de warehouse, consulte Exibição WAREHOUSE_EVENTS_HISTORY. Para mais informações sobre eventos de tabela, consulte Exibição TABLES.
Monitoramento da integridade da consulta¶
Esta seção do Performance Explorer inclui métricas sobre a integridade geral do seu ambiente Snowflake. Você pode monitorar essas métricas para garantir que seus usuários possam executar as consultas com sucesso e concluir as tarefas necessárias.
Esta seção inclui as seguintes métricas:
Métrica |
Unidade |
Descrição |
Notas |
Mais informações |
|---|---|---|---|---|
Query failures/1K |
Falhas por 1.000 |
O número de consultas que falharam para cada 1.000 consultas executadas, incluindo as seguintes métricas:
|
Essa métrica deve ser baixa ou zero. Se as consultas estiverem falhando, revise o histórico e os erros das consultas e, em seguida, modifique suas consultas para resolver os problemas. |
Monitoramento da atividade de consulta com o Histórico de consultas . . Exibição QUERY_HISTORY |
Query retries/1K |
Novas tentativas por 1.000 |
O número de consultas que foram repetidas para cada 1.000 consultas executadas, incluindo as seguintes métricas:
|
Essa métrica deve ser baixa ou zero. Se as consultas estiverem sendo tentadas novamente, revise as causas e tente evitar novas tentativas de consulta. Por exemplo, se uma consulta for repetida devido a um erro de falta de memória, a modificação das configurações do warehouse poderá resolver o problema. |
|
Query overload % |
Porcentagem |
A porcentagem do tempo total de execução que as consultas esperaram em uma fila para recursos de warehouse, incluindo as seguintes métricas:
|
Essa métrica deve ser baixa ou zero. Se as consultas estiverem esperando antes de executar, os recursos do warehouse podem se esgotar, fazendo com que as consultas aguardem até que os recursos fiquem disponíveis. |
|
Query blocked % |
Porcentagem |
A porcentagem do tempo total de execução que as consultas passaram bloqueadas à espera de um bloqueio de transação em um recurso, incluindo as seguintes métricas:
|
Essa métrica deve ser baixa ou zero. Se as consultas foram bloqueadas, revise o histórico e os erros da consulta e, em seguida, modifique suas consultas para resolver os problemas. |
Bloqueio de recursos . . Práticas recomendadas para transações . . Exibição LOCK_WAIT_HISTORY . . Monitoramento da atividade de consulta com o Histórico de consultas . . Exibição QUERY_HISTORY |
Monitoramento das atividades de consulta¶
Esta seção do Performance Explorer inclui métricas sobre a atividade de consulta para um período. Você pode monitorar essas métricas para rastrear qualquer alteração em grande escala na atividade de consulta que possa afetar o uso de recursos ou a capacidade dos usuários de executar consultas.
Esta seção inclui as seguintes métricas:
Métrica |
Unidade |
Descrição |
Notas |
Mais informações |
|---|---|---|---|---|
Query duration |
Segundos |
A quantidade de tempo necessária para as consultas serem concluídas para cada hora do período. O gráfico de linhas mostra a mediana de tempo para todas as consultas, a quantidade de tempo para consultas no 9º percentil e a quantidade de tempo para consultas no 99º percentil. |
Essa métrica varia muito dependendo de seus dados e dos tipos de consultas que você está executando. Consultas com durações que mudam ao longo do tempo podem ser boas candidatas para investigar e otimizar. |
Como explorar os tempos de execução . . Otimização do desempenho da consulta |
Query throughput |
Consultas |
O número de consultas executadas por hora. |
Essa métrica pode revelar alterações na atividade de consulta, o que pode indicar novas tendências ou alterações em suas cargas de trabalho. |
|
Query wait time |
Segundos |
A quantidade de tempo que as consultas esperaram por recursos de warehouse ou devido a um bloqueio em um recurso. Para informações sobre os estados (Overload, Provisioning, Repair e Blocked), consulte Exibição QUERY_HISTORY. |
Essa métrica deve ser baixa ou zero. Se as consultas estiverem esperando antes de executar, os recursos do warehouse podem se esgotar, fazendo com que as consultas aguardem até que os recursos fiquem disponíveis. |
|
Query failures |
Falhas |
O número de consultas que falharam para cada hora no período. |
Essa métrica deve ser baixa ou zero. Se as consultas estiverem falhando, revise o histórico e os erros das consultas e, em seguida, modifique suas consultas para resolver os problemas. |
Monitoramento da atividade de consulta com o Histórico de consultas . . Exibição QUERY_HISTORY |
Monitoramento dos principais warehouses¶
Esta seção do Performance Explorer inclui métricas sobre os warehouses em seu ambiente Snowflake que sofreram mais mudanças no período. Você pode monitorar essas métricas para garantir que seus warehouses estejam funcionando como esperado para oferecer suporte à atividade de consulta. As métricas também podem mostrar se algum warehouse está associado a tendências na atividade de consulta que são incomuns em comparação a outros warehouses. Você também pode determinar se a composição das cargas de trabalho que os warehouses executam mudou.
Todas as métricas nesta seção mostram o valor da métrica e a porcentagem de alteração desde o último período. A porcentagem de mudança pode ser positiva ou negativa, com a mudança positiva representada por uma seta para cima e a mudança negativa representada por uma seta para baixo. Para cada métrica, o Performance Explorer mostra os 10 warehouses com mais alterações. Para visualizar métricas de mais warehouses, selecione > em um gráfico para abrir o painel lateral. Se esta métrica não tiver o valor do último período para um warehouse, — é mostrado em vez da porcentagem de alteração. Pode não haver nenhum valor porque o warehouse é novo ou porque o evento que está sendo medido é pouco frequente.
Esta seção inclui as seguintes métricas:
Métrica |
Tab |
Unidade |
Descrição |
Notas |
Mais informações |
|---|---|---|---|---|---|
Warehouses with errors |
Query failures/1K |
Falhas por 1.000 |
Para cada warehouse, o número de consultas que falharam a cada 1.000 consultas executadas. |
Essa métrica deve ser baixa ou zero. Se as consultas estiverem falhando, revise o histórico e os erros das consultas e, em seguida, modifique suas consultas para resolver os problemas. |
Monitoramento da atividade de consulta com o Histórico de consultas . . Exibição QUERY_HISTORY |
Query OOM errors/1K |
Erros por 1.000 |
Para cada warehouse, o número de consultas que retornaram erros de “sem memória” para cada 1.000 consultas executadas. |
Essa métrica deve ser baixa ou zero. Se as consultas estiverem falhando com erros de «sem memória», reveja o histórico de consultas para determinar quais consultas estão falhando para os warehouses e, em seguida, modifique os warehouses que executam as consultas para evitar os erros. |
Monitoramento da atividade de consulta com o Histórico de consultas . . Exibição QUERY_HISTORY . . Consultas grandes demais para caber na memória |
|
Query retries/1K |
Novas tentativas por 1.000 |
Para cada warehouse, o número de consultas que foram repetidas a cada 1.000 consultas executadas. |
Essa métrica deve ser baixa ou zero. Se as consultas estiverem sendo repetidas porque os warehouses estão funcionando sem memória, reveja o histórico de consultas para determinar quais consultas estão sendo repetidas para os warehouses e, em seguida, modifique os warehouses que executam as consultas para evitar os erros. |
Monitoramento da atividade de consulta com o Histórico de consultas . . Exibição QUERY_HISTORY . . Otimização de warehouses quanto ao desempenho |
|
Warehouses with spillage |
% queries with bytes spilled |
Porcentagem |
Para cada warehouse, a porcentagem de consultas que vazaram para o disco local ou para o armazenamento em nuvem remoto quando foram executadas. |
Essa métrica deve ser baixa ou zero. Se as consultas estiverem vazando para o disco porque os warehouses são executados sem memória, reveja o histórico de consultas para determinar quais consultas estão vazando para os warehouses e, em seguida, modifique os warehouses que executam as consultas para evitar os erros. |
Monitoramento da atividade de consulta com o Histórico de consultas . . Exibição QUERY_HISTORY . . Consultas grandes demais para caber na memória |
% bytes spilled of total |
Porcentagem |
Para cada warehouse, a porcentagem de bytes que vazaram para o disco local ou o armazenamento em nuvem remoto quando eles foram executados, em comparação com o número de bytes lidos. |
Essa métrica deve ser baixa ou zero. Se as consultas estiverem vazando para o disco porque os warehouses são executados sem memória, reveja o histórico de consultas para determinar quais consultas estão vazando para os warehouses e, em seguida, modifique os warehouses que executam as consultas para evitar os erros. |
Monitoramento da atividade de consulta com o Histórico de consultas . . Exibição QUERY_HISTORY . . Consultas grandes demais para caber na memória |
|
Query wait time % |
Overload % |
Porcentagem |
Para cada warehouse, a proporção do tempo total de execução que as consultas esperaram porque o warehouse estava sobrecarregado pela carga de trabalho da consulta. |
Essa métrica deve ser baixa ou zero. Se as consultas estiverem aguardando antes da execução, os recursos do warehouse podem esgotar, fazendo com que o warehouse enfileire consultas até que os recursos fiquem disponíveis. |
|
Provisioning % |
Porcentagem |
Para cada warehouse, a proporção média do tempo total de execução que as consultas aguardaram para o warehouse computar os recursos para provisionar, devido à criação, retomada ou redimensionamento do warehouse. |
Essa métrica deve ser baixa ou zero. Se as consultas estiverem aguardando antes da execução, os recursos do warehouse podem esgotar, fazendo com que ele enfileire consultas até que os recursos fiquem disponíveis. |
||
Warehouse query performance |
Median query duration |
Segundos |
O tempo médio para as consultas serem executadas para cada warehouse. |
Essa métrica varia muito dependendo de seus dados e dos tipos de consultas que você está executando. Se a duração média da consulta tiver mudanças incomuns, a carga de trabalho suportada ou a configuração do warehouse podem ter mudado. |
Como explorar os tempos de execução . . Otimização do desempenho da consulta |
Query throughput |
Consultas |
O número de consultas processadas para cada warehouse. |
Esta métrica pode revelar mudanças na atividade de consulta, o que pode exigir modificações nos warehouses que executam as consultas. |
||
Warehouse events |
– |
Nenhum |
Uma tabela ordenável de eventos do warehouse. |
Esta métrica mostra quais warehouses mudaram no período. Examine os dados em busca de eventos inesperados. |
Monitoramento das tabelas principais¶
Esta seção do Performance Explorer inclui métricas sobre as tabelas em seu ambiente Snowflake que sofreram mais mudanças no período. Você pode monitorar essas métricas para garantir que suas tabelas possam oferecer suporte a atividades de consulta e retornar dados conforme esperado. As métricas também podem mostrar se alguma tabela está associada a tendências na atividade de consulta que sejam incomuns em comparação com outras tabelas. Você também pode determinar se alguma tabela foi alterada recentemente e como isso aconteceu.
Todas as métricas nesta seção mostram o valor da métrica e a porcentagem de alteração desde o último período. A porcentagem de mudança pode ser positiva ou negativa, com a mudança positiva representada por uma seta para cima e a mudança negativa representada por uma seta para baixo. Para cada métrica, o Performance Explorer mostra as 10 tabelas com mais alterações. Para visualizar métricas de mais tabelas, selecione > em um gráfico para abrir o painel lateral. Se essa métrica não tiver o valor do último período de uma tabela, — é mostrado em vez da porcentagem de alteração. Pode não haver nenhum valor porque a tabela é nova ou porque o evento que está sendo medido é pouco frequente.
Esta seção inclui as seguintes métricas:
Métrica |
Tab |
Unidade |
Descrição |
Notas |
Mais informações |
|---|---|---|---|---|---|
Table query failures/1K |
– |
Falhas por 1.000 |
Para cada tabela, o número de consultas que falharam a cada 1.000 consultas executadas. |
Essa métrica deve ser baixa ou zero. Se as consultas estiverem falhando, revise o histórico e os erros das consultas e, em seguida, modifique suas consultas para resolver os problemas. |
Monitoramento da atividade de consulta com o Histórico de consultas . . Exibição QUERY_HISTORY |
Table queries blocked/1K |
– |
Bloqueados por 1.000 |
Para cada tabela, o número de consultas que foram bloqueadas a cada 1.000 consultas executadas. |
Essa métrica deve ser baixa ou zero. Se as consultas foram bloqueadas, revise o histórico e os erros da consulta e, em seguida, modifique suas consultas para resolver os problemas. |
Bloqueio de recursos . . Práticas recomendadas para transações . . Exibição LOCK_WAIT_HISTORY . . Monitoramento da atividade de consulta com o Histórico de consultas . . Exibição QUERY_HISTORY |
Table read performance |
Median read query duration |
Segundos |
A quantidade média de tempo para que as consultas sejam executadas para cada tabela. |
Essa métrica varia muito dependendo de seus dados e dos tipos de consultas que você está executando. Consultas com durações que mudam ao longo do tempo podem ser boas candidatas para investigar e otimizar. |
Como explorar os tempos de execução . . Otimização do desempenho da consulta |
Read query throughput |
Consultas |
o número de consultas processadas para cada tabela. |
Essa métrica pode revelar mudanças na atividade de consulta de tabelas. Se houver um aumento no número de consultas de uma tabela, talvez você queira alterar a tabela para otimizar o desempenho da consulta. Por exemplo, você pode ativar a otimização de pesquisa na tabela. |
Considerações sobre o design de tabelas . . Otimização do desempenho da consulta |
|
Table write performance |
Median write query duration |
Segundos |
Para cada tabela, a quantidade média de tempo para as operações da linguagem de manipulação de dados (DML) a serem executadas. |
Essa métrica varia muito dependendo de seus dados e dos tipos de operações DML que você está executando. As operações DML com durações que mudam ao longo do tempo podem ser candidatas para investigar e otimizar. |
Como explorar os tempos de execução . . Otimização do desempenho da consulta |
Write query throughput |
Consultas |
Para cada tabela, o número de operações DML processadas. Se houver um aumento no número de operações DML de uma tabela, talvez você queira alterar a tabela para otimizar o desempenho. |
Essa métrica pode revelar mudanças no número de operações DML. |
||
Table change events |
– |
Nenhum |
A sortable table of table events. |
This metric shows which tables changed in the period. Examine the data for unexpected events. |