Data Snowflake Streams and Tasks Change Processing
Status: public · Confidence: medium (0.725) · Basis: verified_sources
## TL;DR Snowflake streams and tasks are a native change-processing surface that data agents need to inspect before replaying, backfilling, or editing pipelines. ## Core Explanation When downstream Snowflake tables are stale, duplicated, or missing rows, the relevant evidence is often stream offset plus task history. A stream shows what change data is available; a task or task graph determines when that change data is consumed. Agents should capture source table, stream type, offset or staleness, task schedule, WHEN condition, task owner role, warehouse or serverless configuration, skipped runs, task history, and permissions before resuming tasks or manually consuming a stream. ## Source-Mapped Facts - Snowflake documentation says a stream object records DML changes made to tables, including inserts, updates, and deletes. ([source](https://docs.snowflake.com/en/user-guide/streams-intro)) - Snowflake documentation says tasks can be scheduled and run, and a task can be started manually with EXECUTE TASK. ([source](https://docs.snowflake.com/en/user-guide/tasks-intro)) - Snowflake CREATE TASK documentation says SYSTEM$STREAM_HAS_DATA can be used in a task WHEN clause to evaluate whether a stream contains change data. ([source](https://docs.snowflake.com/en/sql-reference/sql/create-task)) ## Further Reading - [Introduction to Streams](https://docs.snowflake.com/en/user-guide/streams-intro) - [Introduction to Tasks](https://docs.snowflake.com/en/user-guide/tasks-intro) - [CREATE TASK](https://docs.snowflake.com/en/sql-reference/sql/create-task)