Vorige week organiseerden we opnieuw een ontbijtsessie bij Understanding Data met als thema: “Van Businessvraag naar Oplossing”. Intussen een vaste waarde op elke laatste donderdag van de maand. Maar achter de schermen gaat daar heel wat aan vooraf. We gingen eerst langs bij de bakker om koffiekoeken op te halen. Daarna werd de tafel klaargezet. Vervolgens kwamen de eerste deelnemers binnen en kon de sessie starten. De hittegolf vraagt om wat extra verkoeling. Trigger warning: We merkten dat de waterkan bijna leeg is en aangevuld moet worden.

Op het eerste gezicht lijken dit gewoon enkele sfeerfoto’s van een ontbijt. Maar eigenlijk tonen ze perfect wat orchestratie in data is.
Wat is data orchestratie?
Orchestratie betekent dat je verschillende taken organiseert en aanstuurt zodat alles op het juiste moment gebeurt, in de juiste volgorde. Niet zomaar een lijstje van taken dus. Want sommige stappen kunnen pas starten als andere klaar zijn.
De ontbijtsessie begon bijvoorbeeld niet met deelnemers aan tafel.
Eerst moest:
- iemand de deelnemers uitnodigen
- de bakker de koffiekoeken klaar hebben
- iemand de koffiekoeken ophalen
- de tafel worden klaargezet
- alles beschikbaar zijn
Pas daarna kon de sessie echt starten. In een dataomgeving werkt dat net hetzelfde. Voor je een dashboard toont, moeten bijvoorbeeld eerst:
- gegevens worden opgehaald
- datasets worden verwerkt
- controles worden uitgevoerd
- tabellen worden bijgewerkt
Waarom orchestratie belangrijk is
Stel dat iedereen al binnenkomt terwijl wij nog bij de bakker staan. Dan krijg je een nogal vreemde ontbijtsessie. De koffiekoeken zijn er niet, de tafel is nog leeg en iedereen zit te wachten. In data kan hetzelfde gebeuren. Als een rapport vernieuwt voordat de onderliggende data verwerkt is, krijg je foutieve cijfers. Als een stap faalt en niemand merkt het, loopt een volledig proces verder op onbetrouwbare data. Net als een dirigent zorgt orchestratie ervoor dat processen niet alleen uitgevoerd worden, maar ook op het juiste moment.
De kracht van gebeurtenissen
Niemand had op voorhand gepland dat om 9u12 het water gecontroleerd moest worden. Er gebeurde gewoon iets. Iemand zag dat het water bijna op was en dat werd een signaal. Een trigger die een actie in gang zet. In moderne data-platformen gebeurt dit voortdurend. Een bestand komt binnen en de verwerking start. Een dataset is klaar en het dashboard wordt geüpdatet. Een fout treedt op en er wordt een waarschuwing gestuurd. Niet alles moet wachten op een vast tijdstip. Soms wil je reageren op wat er gebeurt (dit heet ook wel “event-driven”, gestuurd door evenementen die op willekeurige momenten plaatsvinden).
Wat gebeurt er achter de schermen?
Tot nu toe hebben we het uitgelegd met koffiekoeken en water. Maar hoe werkt dat in een dataomgeving? Hier komt een orchestrator zoals Dagster in beeld. Dagster bepaalt niet alleen welke taken uitgevoerd moeten worden, het weet ook welke stappen afhankelijk zijn van elkaar, wanneer iets mag starten, wat er gebeurt als iets mislukt, welke gebeurtenissen een proces moeten activeren,… In onze ontbijtmetafoor zou bijvoorbeeld Dagster (of ook Perfect of Airflow) zeggen: “De sessie mag pas starten als we terug zijn van de bakker en de tafel klaarstaat” en vervolgens: “Waarschuwing: het water is bijna op. Start proces: water bijvullen.”
Conclusie
Een succesvolle ontbijtsessie lijkt eenvoudig. Maar achter de schermen gebeurt verrassend veel. Er zijn afhankelijkheden, volgordes, controles en onverwachte gebeurtenissen die acties in gang zetten. Net zoals een modern data-platform. En soms begint een les over orchestratie gewoon bij iemand die naar de bakker gaat om koffiekoeken.