Atualize manualmente as tabelas dinâmicas¶
You can manually refresh a dynamic table to include the latest data without waiting for the next scheduled refresh. This is useful for one-time updates or when a table has a large target lag and the next refresh occurs much later.
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.
To manually refresh, use the ALTER DYNAMIC TABLE … REFRESH command or Snowsight as shown in the following steps:
ALTER DYNAMIC TABLE my_dynamic_table REFRESH
Faça login no Snowsight.
Select Monitoring » Dynamic Tables.
In the list, find your dynamic table, and then select
» 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 task
CREATE TASK my_dt_refresh_task
WAREHOUSE = my_wh
SCHEDULE = 'USING CRON 0 0 * * * America/Los_Angeles' -- Example: daily at midnight PST
COMMENT = 'Daily 5pm PT manual refresh of my_dynamic_table'
AS
ALTER DYNAMIC TABLE my_dynamic_table REFRESH;
-- Enable the task
ALTER TASK my_dt_refresh_task RESUME;
-- Show the task
SHOW TASKS LIKE 'my_dt_refresh_task';
+------------+-----------------+-------------------------------------+---------------+-------------+--------------+-------------------------------------------------+-----------|-------------------------------------------+------------------+---------+----------------------------------------------+-----------+-----------------------------+-------------------+-------------------------------|-------------------+-----------------+--------+---------------------+-----------------------+---------------------+-----------------+----------------------------+-----------------+
| CREATED_ON | NAME | ID | DATABASE_NAME | SCHEMA_NAME | OWNER | COMMENT | WAREHOUSE | SCHEDULE | [ ] PREDECESSORS | STATE | DEFINITION | CONDITION | ALLOW_OVERLAPPING_EXECUTION | ERROR_INTEGRATION | LAST_COMMITTED_ON | LAST_SUSPENDED_ON | OWNER_ROLE_TYPE | CONFIG | TASK_RELATIONS | LAST_SUSPENDED_REASON | SUCCESS_INTEGRATION | SCHEDULING_MODE | TARGET_COMPLETION_INTERVAL | EXECUTE_AS_USER |
|------------+-----------------+-------------------------------------+---------------+-------------+--------------+-------------------------------------------------+-----------+-------------------------------------------+------------------+---------+----------------------------------------------+-----------+-----------------------------+-------------------+-------------------------------+-------------------+-----------------+--------+---------------------+-----------------------+---------------------+-----------------+----------------------------+-----------------|
| 2025-10-02 | DT_REFRESH_TASK | 01bf6f0d-690f-f373-0000-000000025e3d| mydb | my_schema | ACCOUNTADMIN | Daily 5pm PT manual refresh of my_dynamic_table | mywh | USING CRON 0 17 * * * America/Los_Angeles | [] | Started | ALTER DYNAMIC TABLE my_dynamic_table REFRESH | null | false | null | 2025-10-02 05:08:52.897 +0000 | null | ROLE | null | {"Predecessors":[]} | null | null | null | null | null |
+------------+-----------------+-------------------------------------+---------------+-------------+--------------+-------------------------------------------------+-----------|-------------------------------------------+------------------+---------+----------------------------------------------+-----------+-----------------------------+-------------------+-------------------------------|-------------------+-----------------+--------+---------------------+-----------------------+---------------------+-----------------+----------------------------+-----------------+
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.