Het datawarehouse als fundament

Voordat je naar de componenten kijkt, is het goed te begrijpen hoe ze samenhangen.

Drie lagen, één samenhangend geheel

Het datawarehouse is gemodelleerd naar de processen van de organisatie, niet naar de structuur van de bronsystemen. Dat maakt het duurzaam — ook als bronsystemen na een aanbesteding wisselen, blijft het datawarehouse intact. De opzet volgt het Gemeentelijk Gegevensmodel (GGM) van de VNG als logisch uitgangspunt, en Genesee Datavault als methodiek voor de centrale opslaglaag.

Staging

Tijdelijke opslag van ruwe brongegevens. Vluchtig — alleen bedoeld om gegevens uniform binnen te halen voor verdere verwerking.

Datavault (integratie)

Het hart van het platform. Hier worden gegevens geïntegreerd uit meerdere bronnen, wordt historie opgebouwd en vindt de overgang plaats van bronsysteem-denken naar organisatieproces-denken.

Datamart (bevraging)

De laag die toegankelijk is voor gebruikers en visualisatietools. Dimensionele stermodellen volgens Kimball — geoptimaliseerd voor snelle bevragingen en begrijpelijke structuur.

Elke keuze onderbouwd

Opslag
Fundament
PostgreSQL PostGIS pg_duckdb pgaudit PgBackRest DBeaver

Waarom PostgreSQL?

PostgreSQL is aantoonbaar de meest robuuste open source relationele database — robuuster dan MySQL of MariaDB op het gebied van ACID-compliance, transactiebeheer en uitbreidbaarheid. Het schema-systeem maakt fijnmazige rechtenbeheer mogelijk, wat essentieel is voor een platform met meerdere gemeenten en gevoelige persoonsgegevens.

De extensie pg_duckdb brengt de analytische snelheid van DuckDB naar PostgreSQL — zodat complexe analytische query's over grote datasets sneller worden uitgevoerd, terwijl alle andere toepassingen gewoon tegen PostgreSQL blijven praten. PostGIS voegt uitgebreide geo-mogelijkheden toe. pgaudit verzorgt de audit-logging die BIO2 vereist.

Gegevensverwerking
Verwerking, orkestratie en analyse
Apache Hop Airflow Python Spyder Apache Tika GeoServer

Waarom Apache Hop?

Apache Hop is een afsplitsing van Pentaho Data Integration — een van de meest gebruikte ETL-tools bij Nederlandse gemeenten. Hop is volledig open source, actief doorontwikkeld en gratis. De grafische interface maakt het toegankelijk voor ontwikkelaars zonder diepgaande programmeerkennis.

Waarom Airflow voor orkestratie?

Airflow is speciaal ontworpen voor de batchprocessen die de kern vormen van dit platform — dagelijkse nachtelijke verladingen. Het biedt uitgebreide mogelijkheden voor het beheren van afhankelijkheden, herstarten bij fouten en inzicht in de uitvoeringsgeschiedenis. Python als basis maakt het flexibel uitbreidbaar.

Apache Tika en GeoServer

Tika verzorgt tekstextractie uit documenten zoals vergunningen, raadsstukken en WOO-verzoeken. GeoServer ontsluit geodata in gestandaardiseerde formaten (WMS, WFS) zodat die beschikbaar komt voor verdere verwerking en analyse.

Visualisatie
Dashboards en analyse
Apache Superset Metabase Grafana

Waarom Superset, Metabase of Grafana?

Het platform ondersteunt drie visualisatietools, waarvan er per implementatie één of meer worden ingezet afhankelijk van de voorkeur van de organisatie. Superset is krachtiger en geschikter voor technische gebruikers en ontwikkelaars van complexe dashboards. Metabase is toegankelijker voor eindgebruikers die zelf willen verkennen zonder SQL-kennis. Grafana positioneert zich naast zijn klassieke rol bij monitoring actief als BI-tool en is een volwaardige derde optie.

Alle drie tools zijn open source en werken direct op de dimensionele modellen in de datamart. De visualisatierichtlijnen van Stephen Few — lijngrafieken, staafgrafieken, scatterplots — zijn in alle drie tools toepasbaar.

Catalogus
Definities en lineage
OpenMetadata Draw.io

Waarom OpenMetadata?

OpenMetadata combineert de functionaliteit van een gegevenswoordenboek en een gegevenscatalogus in één tool. Het legt definities, gemeentelijke terminologie, gegevenseigenaren, lineage en technische metadata vast. Lineage — de traceerbaarheid van gegevens van bron tot eindproduct — is essentieel voor verantwoording, zeker bij financiële informatie.

De integratie met het GGM maakt het mogelijk om gemeentelijke begrippen eenduidig te definiëren en te koppelen aan de fysieke structuur van het datawarehouse.

Toegang en identiteit
SSO en beveiliging
Keycloak Vaultwarden Nginx

Waarom Keycloak?

Keycloak is een enterprise-grade identity provider, gebouwd door Red Hat en gebruikt door grote Europese overheden. Het verzorgt single sign-on voor alle componenten van het platform — Superset, Airflow, Forgejo, OpenMetadata — zodat gebruikers met één account toegang hebben. Keycloak ondersteunt ook federatie met Microsoft Entra ID voor organisaties die dat gebruiken, zonder afhankelijkheid van Microsoft te creëren.

Waarom Vaultwarden?

Vaultwarden is een lichtgewicht, open source implementatie van Bitwarden — een van de meest vertrouwde wachtwoordmanagers. Het biedt een centrale, veilige opslag voor toegangsgegevens van het platform, bereikbaar via een webinterface.

Beheer en monitoring
Inzicht in de infrastructuur
Cockpit Grafana Prometheus Forgejo Taiga

Monitoring en versiebeheer

Prometheus verzamelt continu metrieken van alle componenten. Grafana visualiseert die metrieken in monitoringsdashboards en is tevens inzetbaar als BI-tool voor organisaties die daar de voorkeur aan geven. Cockpit biedt een webgebaseerde systeembeheeromgeving voor dagelijkse beheertaken.

Forgejo verzorgt versiebeheer van alle Ansible-playbooks en ETL-workflows. Alle wijzigingen aan het platform zijn traceerbaar en terugdraaibaar. Taiga ondersteunt de agile ontwikkelplanning rondom het platform.

Ansible als rode draad

De volledige installatie van alle componenten is vastgelegd in Ansible-playbooks. Dat betekent dat het platform op elke server volledig reproduceerbaar uitgerold kan worden — geen handmatige stappen, geen verborgen configuraties. De playbooks zijn openbaar beschikbaar via Forgejo.

Vragen over de componenten?

Neem contact op met Alovin voor een gesprek
over de technische opzet voor uw situatie.