Naar inhoud
← Alle inzichten

Klantcase · POM

POM: een dagelijkse verversing in minuten, niet in dagen

POM verstuurt miljoenen betaalverzoeken per maand, en de database groeit met honderden gigabytes. Wij hielpen die van een eigen server naar de cloud te brengen, bouwden er een dataplatform op Azure Databricks omheen, en lieten de dagelijkse verversing alleen laden wat veranderd is. Een volledige load ging van een hele dag naar een paar minuten.

V Jansky30 september 20267 min leestijd

Een echt klantproject. De aantallen rijen en de doorlooptijden in de voorbeelden zijn illustratief.

Miljoenen betalingen, één groeiende database

POM helpt organisaties betaald te krijgen. Het platform maakt en verstuurt facturen, biedt betaallinks, QR-codes en betalingsregelingen, en verzorgt het incassoproces, allemaal onder de eigen naam van de klant. Meer dan 150 klanten gebruiken het, van woningcorporaties en verzekeraars tot energieleveranciers, telecomaanbieders, waterbedrijven en overheden.

Dat telt op. Volgens POM verstuurt het platform meer dan 8,5 miljoen betaalverzoeken per maand, en elk verzoek, elke herinnering, betaling en regeling wordt een rij in een database. Maand na maand groeit die database, met honderden gigabytes.

Van de serverruimte naar de cloud

Ons werk begon met een verhuizing. De database van POM draaide op een eigen server, en wij hielpen bij de overstap naar de AWS-cloud. Daaromheen ontwierpen en bouwden wij een modern dataplatform op Azure Databricks, waarin de verschillende bronsystemen samenkomen op één centraal platform. Zo werd de data betrouwbaarder, schaalde die mee met de groei van POM, en had de rapportage één bron om uit te putten.

Waarom een volledige load niet meer past

De eenvoudigste manier om een dataplatform actueel te houden, is elke nacht alles opnieuw kopiëren. Met een kleine database werkt dat. Met honderden gigabytes niet: een volledige herlaadbeurt kost het grootste deel van een dag, dus een dagelijkse verversing is onmogelijk, en elke maand groei maakt het erger. Schuif en zie hoe snel de volledige load de nacht te kort komt.

300 GB
1%
Volledige load
20 uur
Langer dan een nacht: een dagelijkse verversing kan niet meer
Alleen laden wat veranderd is
15 minuten
Past ruim in een dagelijkse verversing
0Eén dag

Alleen de rijen die veranderd zijn

Dus bouwden wij een laadsysteem dat zo weinig mogelijk doet, in drie stappen. Waar de bron kan vertellen welke rijen sinds de vorige load veranderd zijn, importeert het platform precies die rijen en verder niets.

Waar dat onbekend is, valt het niet terug op alles kopiëren. Het vergelijkt een vingerafdruk van elk blok rijen met die van de vorige keer, en leest alleen de blokken die verschillen. En voor berekeningen die hun data meteen nodig hebben, werkt het op aanvraag: voordat een berekening draait, brengt het alleen de rijen die die berekening nodig heeft bij. Probeer elke aanpak op de tabel hieronder.

Elke rij wordt opnieuw gelezen en geschreven, veranderd of niet.

  • Veranderd sinds de vorige load
  • Gelezen uit de bron
  • Gewijzigde rij naar het platform geschreven
  • Ongewijzigde rij toch opnieuw geschreven
Rijen gelezen
240
Rijen geschreven
240
Vingerafdrukken vergeleken
0
Werk vergeleken met een volledige load
100%

Van een hele dag naar een paar minuten

Het resultaat: een volledige verversing teruggebracht van een hele dag naar enkele minuten. Daarmee werden dagelijkse verversingen weer mogelijk, hoe hard de database ook groeit, en kreeg de organisatie rapportage waar ze elke ochtend op kon vertrouwen.

Wat wij opleverden

  • De overstap van de database van POM van een eigen server naar de AWS-cloud.
  • Een modern dataplatform op Azure Databricks, van ontwerp tot oplevering.
  • Meerdere bronsystemen samengebracht op één centraal platform, betrouwbaarder en klaar om te schalen.
  • Een laadsysteem dat alleen gewijzigde rijen importeert, vingerafdrukken vergelijkt waar wijzigingen onbekend zijn, en rijen op aanvraag bijwerkt voor berekeningen.
  • Betere rapportage, voor beslissingen op actuele data.

Groeit uw data uw nachtelijke load voorbij?

Wij bouwen dataplatforms die de groei bijhouden, zonder elke nacht alles opnieuw te kopiëren.