Monitoramento de tabelas dinâmicas

O tópico descreve as maneiras pelas quais você pode visualizar e entender as tabelas dinâmicas em seus pipelines:

Seção

Descrição

Liste as tabelas dinâmicas ou visualize as informações sobre colunas específicas

Liste as tabelas dinâmicas em um esquema e visualize as informações sobre elas.

Visualize o gráfico das tabelas conectadas às suas tabelas dinâmicas

Veja o gráfico de tabelas conectadas às suas tabelas dinâmicas.

Monitore suas tabelas dinâmicas usando as funções de tabela SQL

Monitore suas tabelas dinâmicas usando as funções de tabela SQL.

Monitore o status de atualização de suas tabelas dinâmicas

Veja o status de atualização de suas tabelas dinâmicas.

Liste as tabelas dinâmicas ou visualize as informações sobre colunas específicas

Para listar as tabelas dinâmicas em um esquema e exibir informações sobre essas tabelas dinâmicas, você pode usar os seguintes comandos SQL ou o Snowsight, desde que use uma função que tenha o privilégio MONITOR nas tabelas dinâmicas.

Para obter mais informações, consulte Privilégios para visualizar os metadados de uma tabela dinâmica.

Para listar as tabelas dinâmicas no banco de dados atual (ou na conta, se nenhum banco de dados estiver em uso), use o comando SHOW DYNAMIC TABLES.

Por exemplo, para listar as tabelas dinâmicas com nomes que começam com product_ no banco de dados mydb e no esquema myschema, execute a seguinte instrução SQL:

SHOW DYNAMIC TABLES LIKE 'product_%' IN SCHEMA mydb.myschema;
Copy
+-------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  | created_on               | name       | database_name | schema_name | cluster_by | rows | bytes  | owner    | target_lag | refresh_mode | refresh_mode_reason  | warehouse | comment | text                            | automatic_clustering | scheduling_state | last_suspended_on | is_clone  | is_replica  | is_iceberg | data_timestamp           | owner_role_type |
  |-------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
  |2025-01-01 16:32:28 +0000 | product_dt | my_db         | my_schema   |            | 2    | 2048   | ORGADMIN | DOWNSTREAM | INCREMENTAL  | null                 | mywh      |         | create or replace dynamic table | OFF                  | ACTIVE           | null              | false     | false       | false      |2025-01-01 16:32:28 +0000 | ROLE            |
                                                                                                                                                                                         |  product dt ...                 |                                                                                                                                                 |                                                                                                                                                                                                                                                                                                                                                                                                                       |
  +-------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+

Para obter informações sobre as colunas em uma tabela dinâmica, use o comando DESCRIBE DYNAMIC TABLE.

Por exemplo, para listar as colunas em my_dynamic_table, execute a seguinte instrução SQL:

DESC DYNAMIC TABLE my_dynamic_table;
Copy
+-------------------+--------------------------------------------------------------------------------------------------------------------------+
  | name   | type         | kind   | null? | default | primary key | unique key | check | expression | comment | policy name  | privacy domain |
  |-------------------+------------------------------------------------------------------------------------------------------------------------|
  | AMOUNT | NUMBER(38,0) | COLUMN | Y     | null    | N           | N          | null  | null       | null    | null         | null           |                                                                                                                                                  |                                                                                                                                                                                                                                                                                                                                                                                                                       |
  +-------------------+------------------------------------------------------------------------------------------------------------------------+

As tabelas dinâmicas também estão incluídas nos resultados de Exibição TABLES.

Visualize o gráfico das tabelas conectadas às suas tabelas dinâmicas

A exibição de dependências é particularmente útil para solucionar problemas de cadeias de tabelas dinâmicas. No Snowsight, você pode visualizar de quais tabelas dinâmicas uma determinada tabela dinâmica depende usando o gráfico de linhagem. Por exemplo, você pode identificar o seguinte:

  • Dependências upstream de onde uma tabela dinâmica extrai dados.

  • Dependências downstream que podem ser afetadas por alterações em uma tabela dinâmica.

Um exemplo de gráfico.

As dependências podem afetar o desempenho da atualização. Por exemplo, suponha que a tabela upstream de sua tabela dinâmica tenha uma grande carga de dados adicionada pouco antes de sua atualização programada. Sua tabela dinâmica aguardará que ela termine a atualização, fazendo com que ela não atinja o atraso de destino. No gráfico de linhagem, você veria a tabela de entrada marcada como “executando”, indicando o atraso.

Para visualizar o gráfico de uma determinada tabela dinâmica, faça o seguinte:

  1. Faça login no Snowsight.

  2. No menu de navegação, acesse Monitoring » Dynamic Tables.

  3. Selecione sua tabela dinâmica. A exibição Graph é exibida por padrão. Isso exibe o gráfico com o nó para a tabela dinâmica selecionada. O painel Details à direita exibe informações sobre suas métricas de atraso e configuração.

  4. Para exibir os detalhes de uma tabela diferente no gráfico, selecione essa tabela.

Para atualizar o gráfico, selecione o botão de atualização na barra acima do gráfico.

Atualização da exibição do gráfico.

Se uma atualização falhar devido a um código de erro UPSTREAM_FAILED, você pode usar o gráfico para visualizar qual tabela upstream causou a falha.

UPSTREAM_FAILED na exibição do gráfico.

Para visualizar os detalhes completos de uma tabela no gráfico, consulte Liste as tabelas dinâmicas ou visualize as informações sobre colunas específicas.

Monitore suas tabelas dinâmicas usando as funções de tabela SQL

Use as seguintes funções de tabela INFORMATION_SCHEMA para monitorar suas tabelas dinâmicas:

  • DYNAMIC_TABLES: retorna metadados sobre suas tabelas dinâmicas, incluindo as métricas de atraso agregadas e o status das atualizações mais recentes, dentro de sete dias a partir da hora atual.

  • DYNAMIC_TABLE_REFRESH_HISTORY: retorna informações sobre cada atualização concluída e em execução de suas tabelas dinâmicas, incluindo o status da atualização, o acionador e o atraso de destino.

    • Exibição DYNAMIC_TABLE_REFRESH_HISTORY: essa exibição Account Usage também exibe informações sobre o histórico de atualização da tabela dinâmica. É útil para a depuração de problemas que são mais longos do que o tempo de retenção de dados da função de tabela DYNAMIC_TABLE_REFRESH_HISTORY (sete dias).

  • DYNAMIC_TABLE_GRAPH_HISTORY: retorna informações que fornecem o histórico de cada tabela dinâmica, suas propriedades e suas dependências em relação a outras tabelas e tabelas dinâmicas.

    Você pode usar esta função de tabela para obter um instantâneo da árvore de dependência de tabelas dinâmicas em um determinado ponto no tempo.

    A saída também reflete as alterações feitas nas propriedades de uma tabela dinâmica ao longo do tempo. Cada linha representa uma tabela dinâmica e um conjunto específico de propriedades. Se você alterar uma propriedade de uma tabela dinâmica (por exemplo, o atraso de destino), a função retornará a propriedade mais atualizada.

Monitore o status de atualização de suas tabelas dinâmicas

Esta seção explica como visualizar o status de atualização de todas as tabelas dinâmicas ou de tabelas dinâmicas específicas.

Para obter atualizações sobre a solução de problemas, consulte Solução de problemas de atualizações de tabelas dinâmicas ignoradas, lentas ou com falha e Diagnóstico de problemas comuns de atualização dinâmica de tabelas.

Monitore as atualizações de todas as suas tabelas dinâmicas

Você pode usar o Snowsight ou a função de tabela DYNAMIC_TABLES para visualizar o status de atualização de todas as tabelas dinâmicas.

Faça login no Snowsight. No menu de navegação, selecione Monitoring » Dynamic Tables.

Você pode visualizar o estado e o status da última atualização de todas as suas tabelas dinâmicas nessa página. Você também pode filtrar por banco de dados ou esquema para restringir os resultados.

Atualize a exibição do histórico no Snowsight.

Monitore todas as atualizações de uma tabela dinâmica específica

Você pode usar o Snowsight ou a função de tabela DYNAMIC_TABLES_REFRESH_HISTORY para visualizar o histórico de atualização de uma determinada tabela dinâmica.

  1. Faça login no Snowsight.

  2. No menu de navegação, selecione Monitoring » Dynamic Tables.

  3. Selecione sua tabela dinâmica e vá para a guia Refresh History.

    Essa página exibe o histórico de atualização da tabela dinâmica, que inclui informações sobre o status, a duração e o tempo de atraso real de cada atualização, além do número de linhas alteradas em cada atualização.

    Ele também exibe a métrica de atraso da tabela dinâmica, que inclui a porcentagem do tempo dentro do atraso de destino e o tempo de atraso real mais longo durante o intervalo determinado.

Atualize a exibição do histórico no Snowsight.