Azure Data Factory als ETL-service voor een datawarehouse
- Opdrachtgever
- Waterschap Zuiderzeeland
- Jaar
- 2022
- Locatie
- Lelystad
Applicaties, dashboards en rapportages op basis van meet- en monitoringsdata kunnen de watersector veel inzicht bieden. De meeste meerwaarde van deze informatieproducten wordt gecreëerd door het combineren van data vanuit verschillende systemen. Het is niet wenselijk om voor alle informatieproducten een datakoppeling op te zetten met meerdere bronsystemen. Steeds meer organisaties kiezen met deze reden voor datalakes of datawarehouses om data vanuit meerdere systemen samen te brengen en toegankelijk te maken voor dashboards en rapportages.
Waterschap Zuiderzeeland gebruikt een datawarehouse om hun data vanuit verschillende bronsystemen in de watersector gestructureerd op te slaan. Het waterschap heeft een datawarehouse geïmplementeerd in de Microsoft Azure public cloud. Het datawarehouse is opgezet als een SQL Managed Instance waarbij de datastructuur gespiegeld wordt aan de databaseschema’s van bronsystemen. De data in het datawarehouse is direct beschikbaar voor dashboards in PowerBI. Dit stelt de data analisten van het waterschap in staat snel belangrijke inzichten uit de data te halen zonder tijd kwijt te zijn aan het ontwikkelen van datakoppelingen.
De uitdaging
Een van de bronsystemen voor het datawarehouse is het Waterinfomatiesysteem (FEWS-WIS) van het waterschap. Meetreeksen van waterkwaliteit en -kwantiteit worden opgeslagen en beheerd in het FEWS-WIS. Het datawarehouse haalde data op uit dit systeem door direct verbinding te maken met de FEWS database. Een belangrijk deel van de data was echter niet op deze manier op te halen omdat de data gecomprimeerd is opgeslagen. Daarnaast is een dergelijke koppeling vanuit beveiligingsoogpunt niet wenselijk. Het waterschap heeft Nelen & Schuurmans gevraagd om tot een betere oplossing te komen voor de datakoppeling. Een belangrijk uitgangspunt voor de koppeling is de ontsluiting van zowel tijdseries als relevante metadata vanuit FEWS naar het datawarehouse.
Onze oplossing
Onze oplossing
Als oplossing is gekozen om af te stappen van de directe koppeling met de FEWS database en in plaats daarvan te verbinden met de FEWS webservice. Het voordeel van deze koppeling is het dat zowel tijdseries als de locatie- en parameter metadata opgehaald worden via één route. Het ophalen van de data uit FEWS naar het datawarehouse wordt uitgevoerd in Azure Data Factory. Dit is een cloudgebaseerde ETL-service (Extract, Transform, Load) voor het integreren van gegevens uit databases en webservices.
In Azure Data Factory worden ETL-operaties opgezet in pipelines. Voor de koppeling met de FEWS webservice zijn in samenwerking met het waterschap vier pipelines opgezet. Elk van de pipelines doorloopt de drie stappen van het ETL-proces.
- Extract – bevragen van een specifiek endpoint van de FEWS webservice.
- Transform – omzetten van de data naar het juiste formaat voor het datawarehouse.
- Load – inladen van de gegevens naar het datawarehouse.
Deze pipelines draaien iedere dag om de nieuwe data beschikbaar in FEWS over te zetten naar het datawarehouse. Daarnaast zijn de pipelines eenmalig uitgevoerd over een langere periode om de historische data over te zetten.
Het resultaat
De ontwikkelde pipeline draaien operationeel bij Waterschap Zuiderzeeland waardoor de data in het datawarehouse altijd actueel is. Dit maakt de informatie uit FEWS toegankelijk voor de data analisten van Zuiderzeeland voor gebruik in dashboards en rapportages. Daarnaast biedt Azure Data Factory de beheerder eenvoudig inzicht in de status en het functioneren van de koppeling.
Alle cases