-
Notifications
You must be signed in to change notification settings - Fork 1.6k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[Implementation] define snapshots as yml #10368
Comments
Personally, I think that snapshots could be defined in the yaml block of the source or model they are on top of. So something like:
and
Then you could move snapshots to functioning more like versions. See: #7018 (comment) For me the most important thing to preserve is that snapshots remain a way to capture historical data, are never dropped as part of the dbt build, and can stay outside of the idempotency paradigm of dbt models. But otherwise, I think the developer flow introduced with model versions is the best path for a next generation of dbt snapshots. Model versions should also be accounted for in snapshots that function this way - you won't want a snapshot per model version, but you will want to denote what version a model is on (latest_version) when a snapshot was taken (so, an additional metadata field). |
I think the A few things I'm curious about:
|
Completed #10151 |
Describe the feature
From #10246
Provide a new way for folks to define snapshots, that don't require the jinja block.
Acceptance criteria
from:
indicates which resource i'm snapshotting, it can be asource
or aref
; the snapshot "logic" is thenselect * from
whateverfrom:
is; you can snapshot an ephemeral model if you want your snapshot to contain additional logicOpen questions
The text was updated successfully, but these errors were encountered: