Centrale dataopslag met een nieuwe data-infrastructuur

Dedimo

  • Klantcase
  • Data Engineering
data geestelijke gezondheidszorg
Dedimo logo
Reimer-business-manager
Reimer van de Pol
Business Manager
3 min
13 Jun 2022

Dedimo is een samenwerking van vijf zorginitiatieven in de geestelijke gezondheidszorg. Om de kwaliteit van hun zorg continu te verbeteren, richten ze interne processen efficiënter in. Hiervoor gebruiken ze inzichten uit de data die intern beschikbaar is. Voorheen haalden ze deze data zelf uit verschillende bronsystemen met ad hoc scriptjes. Om dit proces robuuster en efficiënter te maken en verder te professionaliseren, schakelden ze onze hulp in. Ze vroegen ons de centrale opslag van hun data in een cloud data warehouse te faciliteren. Omdat ze al gewend waren te werken met Google Cloud Platform (GCP), was de wens de data-infrastructuur binnen deze omgeving op te zetten.

Onze aanpak

Om het project in de aanloopfase behapbaar te houden, startten we met de oplevering van een MVP. Daarom selecteerden we één databron om aan te sluiten op de data pipelines die we gingen inrichten. Het was de wens van Dedimo om de infrastructuur op termijn uit te breiden voor extra databronnen. In de toekomst moet er dus op de MVP worden doorgebouwd. Daarom hebben we bij de ontwikkeling van de MVP rekening gehouden met de schaalbaarheid van de oplossing.

Om schaalbaarheid te garanderen, richtten we een schaalbare scheduler in die data pipelines op gezette tijden aftrapt. Dit werd de open source scheduler van Apache: Airflow. We draaiden Airflow in eerste instantie lokaal in de ontwikkelomgeving, door middel van Docker. Voor de productieomgeving gebruikten we een door GCP managed instantie van Airflow in de vorm van Cloud Composer.

Als data warehouse kozen we voor Bigquery, de serverless data-warehouseoplossing van GCP. Een groot voordeel hiervan is dat de data warehouse ook schaalbaar is en je enkel betaalt voor het daadwerkelijke gebruik ervan. Daarnaast is in Cloud Storage een data lake ingericht waarin alle uit de brondatabases geëxporteerde data centraal wordt opgeslagen.

We richtten de data pipelines zo in, dat het ETL-proces (bestaande uit het data lake exporteren van de data, het transformeren van de data en het inladen van de data in het data warehouse) volledig door de engine van Bigquery wordt uitgevoerd. Hierbij wordt Airflow enkel gebruikt waarvoor het bedoeld is, namelijk als pure scheduler. Dit houdt de implementatie simpel en elegant, en daarmee ook robuust.

Om Bigquery aan te sturen, kozen we ervoor om SQL-code te gebruiken die dynamisch wordt gegenereerd aan de hand van enkele Python scripts. Deze worden door Airflow afgetrapt; een schaalbare en flexibele oplossing. De pipelines kunnen op deze manier namelijk met een klein aantal configuratieparameters worden aangepast. Dit is een efficiënte werkwijze bij het aansluiten van nieuwe brondatabases of veranderingen in de brondata. De Python scripts zorgen er vervolgens voor dat de configuratieparameters worden vertaald naar in SQL gecodeerde opdrachten die de Bigquery engine begrijpt.

Met Cloud Build, Google’s serverless CI/CD platform, legden we de basis van een ontwikkelstraat waarmee de lokale ontwikkelomgeving gekoppeld is met de productieomgeving.

Het resultaat

De opgeleverde MVP is een eerste versie van een productieomgeving. Hiermee kan Dedimo intern verder testen. Zo wordt de eigen databehoefte duidelijker en kan het huidige proof-of-concept nader richting krijgen en uitgebouwd worden. Om Dedimo te ondersteunen bij de adaptie van de productieomgeving, organiseren we een training in het gebruik van Bigquery voor haar interne medewerkers.

Daarnaast leverden we een ontwikkelomgeving op waarmee het project verder kan worden uitgebouwd met de MVP als vertrekpunt. We maakten dit ontwikkelpad mogelijk door schaalbaarheid voorop te stellen in de keuzes voor de architectuur van de infrastructuur.

Door de architectuur daarnaast simpel te houden en de verwerking centraal door Bigquery te laten uitvoeren, legden we een robuuste en betrouwbare basis voor de toekomst. Hierin zet Dedimo digitalisering in om zich te kunnen blijven focussen op waar Dedimo uiteindelijk het beste in is, namelijk de zorg voor haar cliënten.

Meer weten over deze opdracht?

Reimer vertelt je graag meer!

1x per maand data insights, praktijkcases en een kijkje achter de schermen ontvangen?

Meld je aan voor onze maillijst en blijf 'up to data':

Misschien vind je dit ook interessant:

data geestelijke gezondheidszorg

Centrale dataopslag met een nieuwe data-infrastructuur

Dedimo is een samenwerking van vijf zorginitiatieven in de geestelijke gezondheidszorg. Om de kwaliteit van hun zorg continu te verbeteren, richten ze interne processen efficiënter in. Hiervoor gebruiken ze inzichten uit de data die intern beschikbaar is. Voorheen haalden ze deze data zelf uit verschillende bronsystemen met ad hoc scriptjes. Om dit proces robuuster en efficiënter te maken en verder te professionaliseren, schakelden ze onze hulp in. Ze vroegen ons de centrale opslag van hun data in een cloud data warehouse te faciliteren. Omdat ze al gewend waren te werken met Google Cloud Platform (GCP), was de wens de data-infrastructuur binnen deze omgeving op te zetten.

Lees meer

Hoe word ik een Data Engineer?

Een paar jaar geleden bestond de functietitel nog niet eens: Data Engineer. Inmiddels is er veel vraag naar Data Engineers. Vrijwel elke organisatie verzamelt bewust data en het besef dat dit op een gestructureerde manier moet gebeuren, groeit. Als de data die je verzamelt niet goed georganiseerd is en klopt, kun je het niet gebruiken als input voor goede beslissingen. Data Engineers bouwen infrastructuren waarmee data wordt verwerkt. Ze zijn daarmee onmisbaar voor organisaties die hun data op een gestructureerde manier willen verzamelen en toepassen.

Lees meer
dokter met stethoscoop

Doelgroepenonderzoek voor nieuwe website

De organisatie Dokters van de Wereld biedt medische hulp aan mensen in een kwetsbare positie. Ze weten vaak hun weg niet te vinden in het Nederlandse zorgsysteem. Dokters van de Wereld helpt hen hierbij. Eén van de kanalen om te informeren over het werk van Dokters van de Wereld is de website. Deze wordt in een nieuw jasje gestoken.

Lees meer
een dataplatform implementeren

Een dataplatform implementeren

Deze blog is bedoeld om onze kennis en ervaring over te dragen aan de gemeenschap door richtlijnen te beschrijven voor de implementatie van een dataplatform in een organisatie, gebaseerd op onze knowhow. We weten dat de specifieke behoeften van elke organisatie anders zijn, dat ze een impact zullen hebben op de gebruikte technologieën en dat één enkele architectuur die aan al deze behoeften voldoet, niet realistisch is. Daarom houden we het in deze blog zo algemeen mogelijk.

Lees meer

5 redenen om Infrastructure as Code (IaC) te gebruiken

Infrastructure as Code heeft zich bewezen als betrouwbare techniek om platformen sterk neer te zetten in de cloud. Het vraagt echter wel een extra tijdsinvestering van de betrokken ontwikkelaars. In welke gevallen loont de extra inspanning zich? Je leest het in dit artikel.

Lees meer
billboards

Een schaalbaar machine learning-platform voor het voorspellen van billboard-impressies

The Neuron biedt een programmatisch biedingsplatform om digitale Out-Of-Home-advertenties in realtime te plannen, kopen en beheren. Ze vroegen ons het aantal verwachte impressies voor digitale advertenties op billboards op een schaalbare en efficiënte manier te voorspellen.

Lees meer

Digitale transformatie en betere interne samenwerking dankzij inzicht in off- én online data

Uitgever Malmberg verzamelt veel off- en online data. Steeds meer onderwijsinstellingen maken gebruik van online licenties ter aanvulling op (of in plaats van) gedrukt lesmateriaal. Om hierop in te spelen, maakt Malmberg gebruik van maandelijkse rapportages. Het in-house data team stelt deze samen als input voor specifieke afdelingen. Malmberg vroeg ons dit team te versterken en de interne processen rondom data efficiënter te maken.

Lees meer
Data Engineer aan het werk

Data Engineer

Werk aan uitdagende technische opdrachten bij verschillende opdrachtgevers.

Lees meer
Data Engineering

Een loopbaan als Data Engineer? Geef je eigen opleiding vorm

In juni 2020 werd Sander onderdeel van ons team. Hoewel hij midden in coronatijd startte, merkte hij al snel dat hij flink gestimuleerd werd om contact te maken met zijn nieuwe collega’s. Dit ging grotendeels vanzelf als onderdeel van ons onboarding programma: “Dit sloot perfect aan bij mijn behoeftes: ik ben namelijk zelf veel collega’s gaan opbellen om kennis te maken!” Lees hoe Sander zijn eigen opleiding tot Data Engineer vormgeeft.

Lees meer
Data engineer Oskar in gesprek

5 vragen voor Data Engineer Oskar

In deze video ontdek je hoe een baan als Data Engineer eruit ziet! Hoe ziet een werkweek eruit, voor welke klanten werken onze Data Engineers en wat maakt het werken zo leuk? Oskar vertelt je er graag meer over!

Lees meer