-
Sensors and observable source assets are two different approaches to listening for external changes and triggering downstream computation based on them. What's the difference, and when is each one appropriate? |
Beta Was this translation helpful? Give feedback.
Replies: 4 comments 2 replies
-
Both sensors and observable source assets listen for external changes. The main high-level conceptual different between sensors and observable source assets is that observable source assets decouple the "discover what changed" logic from the "decide what downstream assets should be materialized" logic.
A few other differences:
|
Beta Was this translation helpful? Give feedback.
-
@sryza Are observable source assets still a recommended approach? I thought I had seen some references in communications to SourceAssets being deprecated soon in favor of AssetSpecs and External Assets. |
Beta Was this translation helpful? Give feedback.
-
auto_observe_interval_minutes=1 is deprecated, right? https://docs.dagster.io/api/dagster/assets#dagster.SourceAsset I think we should use a schedule now for that kind of observability: https://docs.dagster.io/guides/build/assets/metadata-and-tags/asset-observations#observable-source-assets |
Beta Was this translation helpful? Give feedback.
-
I'm wondering why one can't alternatively use a job to observe source assets? The doc-string of
I tried creating a job selecting Observable Assets exclusively using the dg.define_asset_job(
name=f"observable_sources_group_{asset_group_name}",
selection=dg.AssetSelection.groups(asset_group_name).upstream_source_assets(),
description="A default job for processing assets",
) Using the UI, I verified only observable source assets were selected. |
Beta Was this translation helpful? Give feedback.
Both sensors and observable source assets listen for external changes.
The main high-level conceptual different between sensors and observable source assets is that observable source assets decouple the "discover what changed" logic from the "decide what downstream assets should be materialized" logic.
A few other differences: