동적 테이블 수동 새로 고침¶
다음 :ref:`예약된 새로 고침<label-dynamic_tables_scheduled_refresh>`을 기다리지 않고 최신 데이터를 포함하도록 동적 테이블을 수동으로 새로 고칠 수 있습니다. 이 기능은 일회성 업데이트 또는 테이블의 목표 지연이 크고, 다음 새로 고침이 훨씬 더 늦게 수행되는 경우에 유용합니다.
팁
목표 지연에 따라 새로 고침될 것으로 예상되는 다운스트림 동적 테이블이 있는 동적 테이블의 경우 자주 수동으로 새로 고치지 마세요. 이러한 종류의 수동 새로 고침은 예약된 새로 고침을 건너뛰고 다운스트림 테이블이 업데이트되지 않도록 할 수 있습니다.
수동으로 새로 고치려면 다음 단계에 표시된 대로 ALTER DYNAMIC TABLE … REFRESH 명령 또는 |sf-web-interface|를 사용하세요.
ALTER DYNAMIC TABLE my_dynamic_table REFRESH
새로 고침을 외부 시스템 일정 또는 일괄 처리 시간대에 맞추는 것과 같이 정확한 새로 고침 타이밍이 필요한 상황에서는 CRON 식과 함께 작업을 사용하여 새로 고침을 트리거할 수 있습니다.
예:
-- 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 |
+------------+-----------------+-------------------------------------+---------------+-------------+--------------+-------------------------------------------------+-----------|-------------------------------------------+------------------+---------+----------------------------------------------+-----------+-----------------------------+-------------------+-------------------------------|-------------------+-----------------+--------+---------------------+-----------------------+---------------------+-----------------+----------------------------+-----------------+
대부분의 경우 Snowflake는 새로 고침 빈도를 최적화하고, 불필요하게 실행될 수 있는 고정 CRON 일정에 비해 비용을 절감할 수 있는 목표 지연을 사용할 것을 권장합니다.
