É possível atualizar manualmente uma tabela dinâmica para incluir os dados mais recentes sem esperar a próxima atualização agendada. Isso é útil para atualizações únicas ou quando uma tabela tem um grande atraso no destino e a próxima atualização ocorrerá muito mais tarde.
Dica
Evite atualizações manuais frequentes em tabelas dinâmicas com tabelas dinâmicas downstream que devem ser atualizadas de acordo com o atraso no destino. Esses tipos de atualizações manuais podem fazer com que as atualizações agendadas ignorem e impeçam que as tabelas downstream sejam atualizadas.
Para atualizar manualmente, use o comando ALTER DYNAMIC TABLE … REFRESH ou Snowsight, como mostrado nas etapas a seguir:
Encontre sua tabela dinâmica na lista e selecione » Refresh Manually.
Para situações que exigem um tempo de atualização preciso, como alinhamento de atualizações com cronogramas de sistema externo ou janelas de processamento em lote, você pode usar uma tarefa com uma expressão CRON para acionar a atualização.
Por exemplo:
-- Create the taskCREATETASKmy_dt_refresh_taskWAREHOUSE=my_whSCHEDULE='USING CRON 0 0 * * * America/Los_Angeles'-- Example: daily at midnight PSTCOMMENT='Daily 5pm PT manual refresh of my_dynamic_table'ASALTERDYNAMIC TABLEmy_dynamic_tableREFRESH;-- Enable the taskALTERTASKmy_dt_refresh_taskRESUME;-- Show the taskSHOWTASKSLIKE'my_dt_refresh_task';
Para a maioria dos casos, a Snowflake recomenda usar o lag no destino, que otimiza a frequência de atualização e pode reduzir custos em comparação com cronogramas CRON fixos que podem ser executados desnecessariamente.