Expand dataset (asset) scheduling to tasks as well, changing the dag run to a deferred state while it awaits for events triggered externally #44816
Unanswered
FelipeRamos-neuro
asked this question in
Ideas
Replies: 1 comment 4 replies
-
I think it would have to be specified in a clearer way - likely more concrete examples and discussion in devlist where you could explain what you want to achieve exactly, because your current description is vague and prone to interpretation (I am not sure by reading it what is it really you propose). Generally if you feel like you can lead such a proposal - anyone can do it - or you can enthuse someone enough to take the leadership, but in order to do it, clear laying out your idea, with examples, reasoning and something that will allow anyone to get enthused is an important prerequisite. |
Beta Was this translation helpful? Give feedback.
4 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
In the company that I work, we encountered some issues when trying to execute a dag in a manner that could truly support asynchronous execution based on events generated by external services. We devised a strategy using deferrable operators, a table to store state changes between tasks, a sensor to check for state changes and a callback API endpoint for the external services to change the state of the task at event generation. I haven't experimented as much with data-aware scheduling, but as I understand it, right now, it is focused on scheduling and triggering of dag_runs. The idea hinges on introducing some sort of deferred state for dag_runs, where we could, maybe, use the Airflow REST API endpoint for queued events to signal Airflow, from external services, that the dag run can continue execution. I'm not fully aware of how many complexities this could add to the scheduling process, but I think that after the release of Airflow 3.0, this could be a good feature to focus on.
Beta Was this translation helpful? Give feedback.
All reactions