Sobre o gerenciamento de tabelas dinâmicas¶
O gerenciamento de tabelas dinâmicas geralmente envolve as seguintes tarefas:
Tarefa |
Descrição |
---|---|
Listagem de tabelas dinâmicas e visualização de informações sobre uma tabela dinâmica |
Listagem e visualização de tabelas dinâmicas. |
Descarte de tabelas dinâmicas. |
|
Alteração do warehouse ou meta de atraso para uma tabela dinâmica |
Alteração de tabelas dinâmicas. |
Listagem de tabelas dinâmicas e visualização de informações sobre uma tabela dinâmica¶
Para listar as tabelas dinâmicas em um banco de dados e visualizar informações dessas tabelas dinâmicas, você pode usar o Snowsight ou comandos SQL:
Uso do Snowsight para listar tabelas dinâmicas e exibir detalhes
Uso de comandos SQL para listar tabelas dinâmicas e exibir detalhes
Uso do Snowsight para listar tabelas dinâmicas e exibir detalhes¶
Para listar as tabelas dinâmicas em um esquema e visualizar informações de uma tabela dinâmica:
Faça login no Snowsight.
Selecione Data » Databases.
Selecione um banco de dados e um esquema.
Em Schema Details, selecione a aba Dynamic Tables.
Observe que você também pode visualizar a lista de tabelas dinâmicas no navegador de objetos do banco de dados expandindo Dynamic Tables.
Para visualizar informações de uma tabela dinâmica específica, selecione a tabela dinâmica no navegador de objetos do banco de dados ou na lista de tabelas dinâmicas na aba Dynamic Tables.
As abas nesta página fornecem algumas das informações também fornecidas pela página de detalhes da tabela, incluindo:
A definição da tabela dinâmica e os privilégios concedidos para trabalhar com a tabela dinâmica
Informações sobre as colunas na tabela dinâmica
Uma visualização de até 100 linhas dos dados na tabela dinâmica
Além disso, a página de detalhes da tabela dinâmica inclui abas que você pode usar para visualizar informações sobre a tabela dinâmica:
A guia Graph exibe o gráfico acíclico dirigido (DAG) que inclui esta tabela dinâmica. Consulte Uso do Snowsight para examinar o gráfico de tabelas dinâmicas.
A guia Refresh History exibe o histórico de atualizações. Consulte Uso do Snowsight para monitorar atualizações.
Uso de comandos SQL para listar tabelas dinâmicas e exibir detalhes¶
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 dadosmydb
e no esquemamyschema
, execute a seguinte instrução SQL:SHOW DYNAMIC TABLES LIKE 'product_%' IN SCHEMA mydb.myschema;
Para obter a sintaxe completa do comando, consulte SHOW DYNAMIC TABLES.
Para obter informações sobre as colunas em uma tabela dinâmica, use o comando DESCRIBE DYNAMIC TABLE.
Por exemplo, para listar as colunas na tabela dinâmica chamada
product
:DESC DYNAMIC TABLE product;
As tabelas dinâmicas também estão incluídas nos resultados de Exibição TABLES.
Descarte de uma tabela dinâmica¶
Para descartar uma tabela dinâmica, você pode usar os comandos Snowsight ou SQL.
- Snowsight:
No Snowsight, abra a página de detalhes da tabela dinâmica (instruções).
No menu More no canto superior direito da página, selecione Drop.
- SQL:
Use o comando DROP DYNAMIC TABLE.
Por exemplo, para descartar a tabela dinâmica chamada
product
:
DROP DYNAMIC TABLE product;
Compartilhamento de dados com tabelas dinâmicas¶
Tabelas dinâmicas são objetos compartilháveis. Para compartilhar uma tabela dinâmica, os provedores de compartilhamento de dados concedem privilégios em uma tabela dinâmica para um compartilhamento, que por sua vez pode ser usado por consumidores de compartilhamento de dados.
Alteração do warehouse ou meta de atraso para uma tabela dinâmica¶
Para alterar o warehouse ou a meta de atraso de uma tabela dinâmica, use o comando ALTER DYNAMIC TABLE.
Por exemplo, para alterar o warehouse da tabela dinâmica product
para my_other_wh
, execute:
ALTER DYNAMIC TABLE product SET WAREHOUSE = my_other_wh;
O diagrama a seguir ilustra operações de suspensão, retomada e atualização manual no contexto de relacionamentos a montante e a jusante com outras tabelas dinâmicas.
O diagrama descreve um pipeline de dados declarativos simples criado com tabelas dinâmicas. Semelhante ao fluxo de água de um rio, os dados em um pipeline de tabela dinâmica fluem da raiz downstream em direção à tabela dinâmica folha:
DT2 é descrito como a jusante de DT1 porque depende dessa tabela dinâmica, e como a montante de DT3, que depende dela.
DT3 está a jusante de DT2 e DT1 porque depende de DT2 diretamente e de DT1 indiretamente.
DT1 está direta ou indiretamente a montante das outras tabelas dinâmicas.
Para obter detalhes adicionais e exemplos de uso do atraso de destino downstream, consulte Compreensão da meta de atraso.
Determinação da meta de atraso ideal para uma tabela dinâmica¶
Para determinar o tempo de atraso de destino ideal para uma tabela dinâmica, você pode usar o Snowsight ou comandos SQL.
- Snowsight:
Na página de detalhes da tabela dinâmica, selecione a guia Refresh History.
Verifique o tempo de atraso real máximo, que é exibido na parte superior da aba. Essa métrica é baseada no tempo de atraso real para cada atualização.
- SQL:
Use a função de tabela DYNAMIC_TABLE_REFRESH_HISTORY em INFORMATION_SCHEMA. Esta função retorna informações sobre cada atualização de uma tabela dinâmica, incluindo o tempo gasto para a atualização e quais atualizações foram ignoradas.
O tempo de atraso escolhido pode afetar o agendamento de atualização determinado pelo processo de atualização automatizada. O processo de atualização automatizada escolhe um agendamento que melhor atenda aos tempos de atraso das tabelas dinâmicas.
Como determinar se é usada uma atualização incremental ou completa¶
Para determinar se será usada uma atualização incremental ou completa para atualizar uma tabela dinâmica, você pode usar o Snowsight ou comandos SQL.
- Snowsight:
Vá para a página de detalhes da tabela dinâmica.
Os detalhes básicos na parte superior da página indicam se as atualizações incrementais ou completas são usadas para essa tabela.
- SQL:
Use o comando SHOW DYNAMIC TABLES e verifique o valor da coluna
REFRESH_MODE
na saída.REFRESH_MODE_REASON contém detalhes adicionais sobre a escolha de REFRESH_MODE.
Como compreender os efeitos das alterações nas colunas das tabelas de base¶
As colunas nas tabelas de base, exibições e tabelas dinâmicas subjacentes podem mudar com o tempo. Algumas alterações podem afetar a própria tabela dinâmica; outras podem ter impacto limitado ou nenhum impacto.
Quando os objetos subjacentes associados a uma tabela dinâmica mudam, os seguintes comportamentos se aplicam:
Mudança |
Impacto |
---|---|
|
Nenhum. Se uma nova coluna for adicionada à tabela de base ou uma coluna não utilizada for excluída, nenhuma ação ocorrerá e as atualizações continuarão como antes. |
|
Atualização/reinicialização completa: durante o próximo ciclo de atualização, uma atualização completa é feita para garantir que nenhum dado incorreto ou obsoleto esteja na tabela dinâmica. |
|
O estado da tabela dinâmica muda para FAILED. A tabela dinâmica deve ser recriada para responder à alteração. |
Como entender o comportamento de suspensão automática¶
Nota
Uma tabela dinâmica será suspensa se o sistema observar cinco erros de atualização contínua. As tabelas dinâmicas suspensas devido a erros de atualização são comumente chamadas de suspensas automaticamente pois são suspensas pelo sistema e não por ação do usuário.
Quaisquer tabelas dinâmicas que dependam da tabela dinâmica suspensa também serão suspensas. SCHEDULING_STATE descreve o estado atual de uma tabela dinâmica.
Para visualizar o estado de agendamento da tabela dinâmica, chame a função de tabela DYNAMIC_TABLE_GRAPH_HISTORY e examine a coluna SCHEDULING_STATE.