Proof of Concept – opzet Nederlandse mariene data lake met Beacon software
Beacon maakt het mogelijk om zeer veel datasets integraal te bevragen (en vindbaar te maken), is eenvoudig te installeren en levert de mogelijkheid on-the-fly exact de specifieke subsets te verkrijgen die nodig zijn om een model te voeden of berekeningen in een Jupyter (Python) notebook uit te voeren.
Beacon zorgt ervoor dat uit verschillende databronnen in tienden van seconden de volgende vraag wordt beantwoord. Bijvoorbeeld: “Geef mij alle temperatuurdata in de Noordzee, van 2010 tot 2020, op een diepte van 0-10 meter, in graden Celsius.” Het antwoord vanuit de API is dan één NetCDF file die exact de gevraagde data bevat, geharmoniseerd naar parameter en eenheid, on-the-fly gegenereerd, direct bruikbaar voor visualisatie, in een Jupyter Notebook of voor processing in een model.
Geschikt voor verschillende domeinen
Hoewel Beacon zijn oorsprong heeft in mariene projecten, is de technologie niet domeinspecifiek en geschikt voor elke toepassing waarbij grote verzamelingen bestanden in verschillende formaten snel en uniform bevraagbaar moeten zijn. Denk aan hydrologische tijdreeksen, monitoringsdata uit rivieren en meren, of klimaatgegevens die verspreid liggen over grote aantallen bestanden.
Achtergrond
Informatiehuis Marien houdt zich bezig met de ontsluiting van Nederlandse mariene Noordzee Data van meerdere partijen, zodat deze goed vindbaar zijn en hergebruikt kunnen worden. Op dit moment is al veel data beschikbaar en inzichtelijk vanuit metadata, en opvraagbaar als gehele datasets, maar deze data zijn nog niet gezamenlijk, integraal te bevragen. Hierdoor is de data niet nog eenvoudig bruikbaar in modellen, Notebooks, en Virtual Research Environments, waar onderzoekers en ingenieurs steeds vaker gebruik van maken.
Proof of Concept
De technologie is echter aanwezig om de toegang tot data te verbeteren. In dat kader heeft MARIS, als Proof of Concept (PoC), samen met IHM en deelname vanuit Deltares, WMR en RWS een succesvolle pilot uitgevoerd om te onderzoeken of de Open-Source Beacon software, ontwikkeld door MARIS, voldoet voor het opzetten van een Nederlands marien data lake en daarmee de herbruikbaarheid van de data enorm vergroot.
Verschillende bronnen met grote hoeveelheden data zijn geanalyseerd en vervolgens zijn hiervoor Beacon instanties opgezet. Bovenop deze instanties zijn Python notebooks gemaakt die de instanties bevragen en tonen dat de data vanuit de verschillende bronnen, zeer snel, en geharmoniseerd naar parameter en eenheid, opgevraagd en gevisualiseerd kan worden. Het succes van het PoC bood mogelijkheden om het data lake verder uit te breiden, functionaliteiten te laten groeien, en gebruik te stimuleren. De vervolgopdracht bestond uit:
- Ontwikkeling van een (eenvoudige) user interface bovenop Beacon, genaamd Beacon Studio, zodat ook gebruikers zonder Python kennis de databronnen kunnen doorzoeken.
- Een haalbaarheidsstudie of en hoe Beacon gebruikt kan worden om NL mariene (project)data volgens EMODnet standaarden kan worden uitgeleverd.
Jupyter notebooks
In de voorgaande PoC zijn meerdere Nederlands mariene databronnen onderzocht en de onderstaande zes bronnen zijn uiteindelijk gekozen als input voor de IHM-specifieke Beacon instantie die via een notebook en de nieuwe Beacon Studio te bevragen en visualiseren zijn:
- WADAR
- Aquadesk
- RWS CTD collectie
- VIS monitoring
- Vogel monitoring
- WOT data WMR
De IHM Beacon instantie is hier beschreven: https://beacon-ihm.maris.nl/swagger/. Ter voorbereiding van het ontwikkelen van de Beacon Studio zijn er voor de WADAR, RWS-CTD en Aquadesk, “easy” tables aangemaakt met de belangrijkste (meta)data kolommen en ook aggregaties en mappings toegepast om de collecties zo goed en simpel mogelijk doorzoekbaar te maken voor de gebruiker. In de IHM_beacon.ipynb notebook die te vinden is op de GitHub staat er voor iedere bovenstaande collectie een voorbeeld, hoe deze te bevragen zijn via de Beacon Python library.
Onderstaande figuur laat zien hoe aan het einde van dit notebook de datapunten van de verschillende bronnen op één kaart samen geplot kunnen worden.

Beacon Studio
Als uitbreiding van het PoC is een user interface op Beacon ontwikkeld, genaamd de “Beacon Studio”, waarmee de IHM Beacon instantie eenvoudig via een formulier bevraagd kan worden, en resultaten ingezien en gevisualiseerd kunnen worden.
- Beacon studio webinterface: https://beacon-ihm.maris.nl/studio/
- Beacon studio GitHub: https://github.com/maris-development/beacon-studio
Een Beacon instantie kan een zeer complex data- en metadata model aan en bouwt daarmee een “platgeslagen” versie op in tabelvorm, waaruit snel en efficiënt data opgevraagd kan worden. Voor het bevragen van de data is het veelal niet nodig om op alle kolommen te zoeken: De meeste gebruikers maken een zoekvraag op locatie, tijdsperiode, diepte en parameter(s). De “easy query builder” zoekt alleen op deze kern attributen (die de beheerder van de Beacon instantie zelf heeft aangegeven) voor het opstellen en uitvoeren van queries.

Na het invoeren van de query heeft de gebruiker onderin het scherm de keuze tussen: Dataset downloaden; de query kopiëren in json format zodat deze kan worden gebruikt in een notebook; data tabel inzien; map-view, de datapunten met echte waardes van de parameters worden direct op kaart getoond; chart-view, de gebruiker kan in deze module inzicht krijgen in de inhoud van de data en metadata die opgevraagd is (bv. een verdeling naar categorie).
Bronnen
- Beacon is gratis beschikbaar onder Open-Source licentie:
- Documentatie:
- GitHub:
- Beacon Studio (user interface voor IHM POC):
- Python library:
Oproep aan het netwerk
Organisaties die werken met grote observatiecollecties en willen verkennen of Beacon kan helpen bij hun workflow, worden uitgenodigd om contact op te nemen. We verzamelen graag praktijkvoorbeelden, ervaringen en vragen die kunnen bijdragen aan de verdere ontwikkeling van de technologie en de toepassing ervan in de Nederlandse context.