Inleiding: Dit document beschrijft de belangrijkste afwegingen voor de keuze van een orkestratie-oplossing, inclusief een vergelijking met alternatieven.
Shortlist:
- Apache Airflow
- Dagster
- Kestra
- Prefect
Nieuws 13-07-26: Dagster Labs is opgekocht door Prefect.
Op lange termijn zou dit effect kunnen hebben op de keuze van orkestratie software. Voor onze PoC zal dit niet relevant zijn, Dagster blijft bestaan en zal nog steeds worden ondersteund. Wat hierin wellicht relevant kan zijn is dat Dagster en Prefect gebaseerd zijn in Amerika, en Kestra in Frankrijk. Apache Airflow is de enige optie op de shortlist die niet eigendom is van een commerciële partij, maar van een non-profitorganisatie. Dagster heeft wel uitgesproken dat alle publiek toegankelijke code altijd kosteloos beschikbaar zal blijven.
Hiernaast zijn voor alle orkestratietools beveiligingsvraagstukken waar wij op tijd van schrijven nog geen volledig zicht op hebben. Hier gaat het voornamelijk om zaken als SSO en RBAC die vaak achter de betaalde Enterprise versies van de verschillende softwarepakketten zitten. Parallel aan het verder bouwen aan onze PoC is het nodig om beveiliging goed te laten doorlichten door experts op dit gebied. Om deze reden kan het zijn dat de keuze voor orkestratiesoftware uiteindelijk nog anders zal vallen.
Na onderzoek naar de vier tools op de shortlist is de keuze gemaakt voor Dagster.
Belangrijkste redenen voor keuze Dagster:
- Gebruiksvriendelijk met een moderne UI
- Bewezen technologie met actief development
- Python based, wat past bij de andere gekozen tools in dit dataplatform
- Data-centrische benadering orkestratie
- Ingebouwde lineage met interactieve lineage grafieken
Vergelijking met Apache Airflow:
- Airflow is minder gebruiksvriendelijk en dusdanig complex dat wij niet verwachten dat het eenvoudig bruikbaar zal zijn voor alle deelnemers aan dit project
- Airflow is task-centrisch in plaats van de data-centrische aanpak van Dagster
Vergelijking met Prefect:
- Prefect heeft een kleinere actieve community en minder actieve contributors
- Prefect is task-centrisch in plaats van de data-centrische aanpak van Dagster
Vergelijking met Kestra:
- Kestra heeft een kleinere actieve community en minder actieve contributors
- Kestra is task-centrisch in plaats van de data-centrische aanpak van Dagster
- Kestra is YAML based in plaats van Python based
Conclusie: Met gebruiksvriendelijkheid en grootte van development en community achter de tool hebben wij de keuze gemaakt om Dagster te gebruiken als onze orkestratiesoftware. Hiernaast is het wel van belang om de beveiligingsaspecten van Dagster verder te belichten om te kijken of dit ook na de PoC bestaansrecht heeft in de architectuur van de gemeenten.