Hello Team,

Since its inception Falcon has used Oozie for process orchestration as well as 
feed life cycle phase executions, while this has worked reasonably and allowed 
to make higher level capabilities available through Falcon, we are increasing 
seeing scenarios where this is proving to be a limiting factor. In its current 
form, Falcon relies on Oozie for both scheduling and for workflow execution, 
due to which the scheduling is limited to time based/cron based scheduling with 
additional gating conditions on data availability. Also this imposes 
restrictions on datesets being periodic/cyclic in nature. 

>From an orchestration stand point, it would help if we can support standard 
>gating / scheduling primitives via Falcon:

1. Simple periodic scheduling with no gating conditions
2. Cron based scheduling (day of week, day of the month, specific hours and 
non-periodic) with no gating conditions
3. Availability of new data (assuming monotonically increasing data version, 
availavility of new versions)
4. Changes to existing data (reinstatement - similar to late data handling)
5. External trigger/notifications
6. Availability of specific instances of data as declared as mandatory 
dependency
7. Availability of a minimum subset of instances of data declared as mandatory 
depedency (at least 10 hourly instances of a day with 24 instances for ex)
8. Valid combinations of the above.

In this context, I would like to propose that we move away from Oozie for the 
orchestration requirements and have them implemented natively within Falcon. It 
will no doubt make Falcon server bulkier and heavier in both code and 
deployment, but seems like without it, the orchestration within Falcon will be 
limited by capabilities available within Oozie.

Please do note that this suggestion is restricted to the scheduling and not to 
the workflow execution.

Would like to hear from fellow developers and users on what your thoughts are. 
Please do chime in with your views.

Regards
Srikanth Sundarrajan
                                          

Reply via email to