Gerenciamento de atualização das tabelas dinâmicas¶
A atualização de tabelas dinâmicas pode ser controlada usando as seguintes operações:
Tarefa |
Descrição |
---|---|
Suspender atualizações de uma tabela dinâmica. |
|
Retomar atualizações em uma tabela dinâmica suspensa. |
|
Acionar uma atualização manual de uma tabela dinâmica. |
|
Alterar ou especificar o atraso para uma tabela dinâmica. |
As tabelas dinâmicas podem ser suspensas automaticamente. Para obter mais informações, consulte Como entender o comportamento de suspensão automática posteriormente neste tópico.
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. A tabela dinâmica DTRoot é o início do pipeline. Semelhante à água fluindo em um fluxo, os dados em um pipeline de tabela dinâmica fluem da raiz a jusante em direção à tabela dinâmica DTEnd no fim do pipeline:
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.
Suspender¶
Suspender paradas ou suspender atualizações em uma tabela dinâmica.
Importante
Suspenda cascatas para tabelas dinâmicas a jusante.
No diagrama de relacionamento, a suspensão de DT1 causaria a suspensão de DT2, o que causaria a suspensão de DT3.
Para obter informações sobre como exibir o estado da tabela dinâmica, consulte Notas de uso.
Para suspender as atualizações em uma tabela dinâmica:
ALTER DYNAMIC TABLE <name> SUSPEND;
Para a sintaxe completa do comando ALTER DYNAMIC TABLE, consulte ALTER DYNAMIC TABLE.
Retomar¶
A retomada reinicia ou retoma as atualizações em uma tabela dinâmica.
Importante
Retomar cascatas para tabelas dinâmicas a jusante que não foram suspensas manualmente.
No diagrama de relacionamento, retomar DT1 também retomaria DT2, o que faria com que DT3 fosse retomado.
Somente tabelas dinâmicas suspensas implicitamente são retomadas dessa maneira. As tabelas dinâmicas suspensas manualmente não são retomadas quando uma tabela dinâmica a montante é retomada.
Para obter informações sobre como exibir o estado da tabela dinâmica, consulte Listagem de tabelas dinâmicas e visualização de informações sobre uma tabela dinâmica.
Para retomar as atualizações em uma tabela dinâmica:
ALTER DYNAMIC TABLE product RESUME;
Atualização manual¶
Acione manualmente uma atualização de tabela dinâmica.
Importante
A atualização manual é feita em cascata para todas as tabelas dinâmicas a montante.
No diagrama de relacionamento, a atualização manual de DT3 também faz com que DT2 seja atualizado, o que faz com que DT1 seja atualizado.
Para atualizar manualmente uma tabela dinâmica:
ALTER DYNAMIC TABLE <name> REFRESH;
Alteração do atraso da tabela dinâmica¶
Quando uma tabela dinâmica é baseada em outras tabelas dinâmicas, você pode especificar TARGET_LAG = DOWNSTREAM
. Especificar DOWNSTREAM faz com que uma tabela dinâmica seja atualizada com base no atraso de suas tabelas dinâmicas a jusante.
Para obter detalhes adicionais e exemplos de TARGET_LAG = DOWNSTREAM
, consulte Compreensão da meta de atraso.
Especifique o atraso DOWNSTREAM para uma tabela dinâmica:
ALTER DYNAMIC TABLE <name> SET TARGET_LAG = DOWNSTREAM;
Quando uma tabela dinâmica deve ser atualizada periodicamente para manter um nível específico de atualização, você pode especificar TARGET_LAG = {num} { seconds | minutes | hours | days }
:
ALTER DYNAMIC TABLE <name> SET TARGET_LAG = '1 hour';
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.