Lean procesverbetering: een datagedreven gids
Leer meer over het DMAIC-proces, Six Sigma en lean procesverbeteringstools voor meetbare bedrijfsresultaten.
De prestaties van process mining hangen af van drie factoren: hoeveel data je uploadt, hoe je die structureert en hoe het systeem die verwerkt. In deze gids behandelen we ze alle drie, met echte benchmarks en praktische manieren om resultaten te verbeteren.
We publiceren al onze cijfers. Vergelijk ze met elke process mining-tool op de markt.
Belangrijkste conclusies
Wanneer je data naar ProcessMind uploadt, gebeuren er drie dingen. Dit is precies waar de tijd naartoe gaat:
Uploaden, bepalend voor de totale tijd. Je bestand gaat via internet naar onze cloudinfrastructuur. Bij grote bestanden is dit het knelpunt. De natuurkunde wint: een CSV met 50 miljoen events, 11 GB, duurt 2 minuten via gigabit, 18 minuten via 100 Mbps en ruim 3 uur via 10 Mbps. Dezelfde data in Parquet is slechts 1,7 GB. Daarmee worden die tijden 19 seconden, 3 minuten en 28 minuten. Dit is de belangrijkste reden om kolomindelingen zoals Parquet of ORC te gebruiken, of kleinere datasets te kiezen.
Voorbewerking, eenmalige kostenpost van ongeveer 30 seconden tot 2,5 minuut. Na het uploaden zetten we je data om naar geoptimaliseerde kolomopslag: events worden geïndexeerd, activiteitsovergangen vooraf berekend, procesvarianten herkend en samenvattende statistieken berekend. Dit duurt 30 seconden voor kleine datasets en maximaal 2,5 minuut voor 100M events. Je betaalt deze kosten één keer per upload en profiteert er daarna van.
Modelwijzigingen, gedeeltelijke herberekening van 6–52 seconden. Als je het procesmodel wijzigt door activiteiten toe te voegen of te verwijderen of mappings aan te passen, worden alleen de modelafhankelijke berekeningen bijgewerkt. Dit duurt 6 seconden voor kleine datasets en maximaal 52 seconden voor 100M events, veel sneller dan volledige voorbewerking. Filterwijzigingen zijn direct zichtbaar.
Dashboardprestaties: altijd snel
Dashboards zijn snel. Zodra de voorbewerking klaar is, reageren dashboardinteracties in minder dan 2,5 seconden bij datasets tot 10M events. Zelfs bij 50M events duren de meeste queries 2–5 seconden. Alleen process flows op datasets van 100M+ events komen in de buurt van 7 seconden. Bekijk de gedetailleerde responstijden hieronder.
We hebben veel geïnvesteerd in voorbewerking, zodat analyse, waar je uren aan besteedt, meteen aanvoelt.
Zodra je data is geladen, bepalen verschillende kenmerken de snelheid van queries. Als je die begrijpt, kun je betere exports maken en realistische verwachtingen hebben.
Het aantal activiteiten telt. Procesmodellen met 10–20 verschillende activiteiten zijn optimaal. Boven de 50 activiteiten duurt het langer om de process flow te berekenen en wordt die moeilijker te begrijpen. Te veel nodes en edges zorgen voor visuele ruis. Bevat je export veel activiteiten, overweeg dan om verwante stappen te groeperen.
De variatie in varianten beïnvloedt de berekening. Een proces waarin 80% van de cases vijf varianten volgt, is sneller te analyseren dan een proces waarin elke case een uniek pad neemt. Veel variatie is niet per se slecht en wijst vaak op echte problemen, maar houd rekening met iets langere querytijden.
Meer kolommen betekent meer scanwerk. Elk attribuut dat je toevoegt, wordt geïndexeerd en bevraagd. De kernkolommen, CaseId, Activity en Timestamp, zijn altijd nodig. Extra kolommen helpen bij filteren en categoriseren, maar voegen elk extra verwerking toe.
Lange cases duren langer. Een case met 50 events vraagt meer rekenwerk dan een case met 5 events. Als je proces cases bevat met honderden events, worden queries naar verhouding trager. Dat hoort bij process mining en ligt niet aan een specifieke tool.
Als je weet wat je kunt verwachten, kun je beter plannen. Deze benchmarks draaien op productie-infrastructuur van AWS, met echte netwerklatentie, en zijn gemiddelden van meerdere testruns. We hebben per datasetgrootte meer dan 50 querytypen getest.
De tabel hieronder laat zien wat je per datasetgrootte realistisch kunt verwachten. Bij grotere bestanden bepaalt de uploadtijd de totale wachttijd, vooral bij tragere verbindingen. Dit is de belangrijkste factor in de totale wachttijd.
| Dataset | Werkelijke events | Bestandsgrootte | Upload (1 Gbps) | Upload (100 Mbps) | Upload (50 Mbps) | Upload (10 Mbps) | Voorbewerking |
|---|---|---|---|---|---|---|---|
| 100K | 125.260 | 22 MB | < 1s | 2s | 4s | 22s | 35s |
| 500K | 626.300 | 110 MB | 1s | 11s | 22s | 2 min | 45s |
| 1M | 1.253.424 | 221 MB | 3s | 22s | 44s | 4 min | 55s |
| 2M | 2.506.848 | 443 MB | 5s | 44s | 1,5 min | 7 min | 1 min |
| 5M | 4.996.877 | 1,1 GB | 13s | 2 min | 4 min | 18 min | 1,5 min |
| 10M | 12.511.867 | 2,2 GB | 25s | 4 min | 7 min | 37 min | 1,5 min |
| 20M | 25.023.734 | 4,4 GB | 50s | 7 min | 15 min | 1,2 uur | 2 min |
| 50M | 62.559.335 | 11,1 GB | 2 min | 18 min | 37 min | 3 uur | 2 min |
| 100M | 125.118.670 | 22,3 GB | 4 min | 37 min | 1,2 uur | 6 uur | 2,5 min |
De bestandsgroottes gelden voor ongecomprimeerde CSV met een gangbaar event log-schema (CaseId, Activity, Timestamp en 5–8 bedrijfsattributen). Je bestanden kunnen groter of kleiner zijn, afhankelijk van het aantal kolommen en de inhoud.
De uploadtijden bij 1 Gbps zijn gemeten met een effectieve doorvoer van 88 MB/s naar AWS eu-central-1. De andere snelheden zijn geëxtrapoleerd op basis van praktische doorvoer: 50 Mbps → ongeveer 5 MB/s, 100 Mbps → ongeveer 10 MB/s en 10 Mbps → ongeveer 1 MB/s. De werkelijke doorvoer hangt af van je netwerk, de afstand tot het datacenter en de huidige belasting.
De belangrijkste conclusie: De voorbewerking blijft ongeacht de schaal tussen 1 en 2,5 minuut. De uploadtijd groeit lineair met de bestandsgrootte. De bestandsgrootte verkleinen is de meest effectieve optimalisatie die je kunt uitvoeren.
Het bestandsformaat dat je uploadt heeft veel invloed op de uploadsnelheid en de voorbewerkingstijd. ProcessMind ondersteunt CSV, Parquet, ORC, Excel en XES. Bij grote datasets presteren Parquet en ORC veel beter dan CSV, zowel qua bestandsgrootte als verwerkingssnelheid.
| Dataset | CSV | Parquet | ORC | CSV.GZ |
|---|---|---|---|---|
| 1M events | 221 MB | 34 MB | 39 MB | 20 MB |
| 5M events | 1,1 GB | 151 MB | 197 MB | 107 MB |
| 10M events | 2,2 GB | 301 MB | 395 MB | 215 MB |
| 20M events | 4,4 GB | 603 MB | 791 MB | 430 MB |
| 50M events | 11,1 GB | 1,7 GB | 1,9 GB | 1,1 GB |
| 100M events | 22,3 GB | 3,4 GB | 3,7 GB | 2,2 GB |
Parquet-bestanden zijn 85% kleiner dan CSV. ORC-bestanden zijn 82% kleiner. Beide zijn kolomformaten met ingebouwde compressie, dus een extra stap is niet nodig. Je ETL-tool of dataplatform, zoals Spark, Databricks, dbt of BigQuery, ondersteunt waarschijnlijk al export naar Parquet of ORC.
Bestandsgrootte is maar de helft van het verhaal. Na het uploaden doorloopt je data formaatafhankelijke inname en analytische berekeningen, waaronder eventindexering en berekeningen van overgangen en varianten. De analytische stap bepaalt de totale tijd en is voor alle formaten gelijk. CSV.GZ is het enige formaat dat aanzienlijk extra tijd kost, omdat gzip-bestanden niet kunnen worden opgesplitst voor parallelle decompressie.
| Dataset | Parquet | ORC | CSV | CSV.GZ |
|---|---|---|---|---|
| 1M events | 55s | 55s | 55s | 55s |
| 5M events | 1,5 min | 1,5 min | 1,5 min | 1,5 min |
| 10M events | 1,5 min | 1,5 min | 1,5 min | 2 min |
| 20M events | 2 min | 2 min | 2 min | 2,5 min |
| 50M events | 2 min | 2 min | 2 min | 3 min |
| 100M events | 2,5 min | 2,5 min | 2,5 min | 4,5 min |
De voorbewerkingstijd is vrijwel gelijk voor Parquet, ORC en CSV, omdat de analytische berekening ongeacht het invoerformaat de meeste tijd kost. Bij CSV.GZ loopt de verwerkingstijd bij grotere datasets sterk op, van ongeveer een minuut bij 1M events tot meer dan 4 minuten bij 100M. Met gzip gecomprimeerde bestanden kunnen niet worden opgesplitst en parallel worden verwerkt. Daardoor komt er vóór de analyse een steeds langere decompressiestap bij.
Als je zowel de uploadtijd als de voorbewerking meeneemt, wordt de keuze voor een formaat duidelijk:
| 10M events (100 Mbps) | Bestandsgrootte | Upload | Voorbewerking | Totaal |
|---|---|---|---|---|
| Parquet | 301 MB | 30s | 1,5 min | ongeveer 2 min |
| ORC | 395 MB | 40s | 1,5 min | ongeveer 2,2 min |
| CSV | 2,2 GB | 4 min | 1,5 min | ongeveer 5,5 min |
| CSV.GZ | 215 MB | 21s | 2 min | ongeveer 2,5 min |
| 50M events (100 Mbps) | Bestandsgrootte | Upload | Voorbewerking | Totaal |
|---|---|---|---|---|
| Parquet | 1,7 GB | 3 min | 2 min | ongeveer 5 min |
| ORC | 1,9 GB | 3,2 min | 2 min | ongeveer 5,2 min |
| CSV | 11,1 GB | 18 min | 2 min | ongeveer 20 min |
| CSV.GZ | 1,1 GB | 2 min | 3 min | ongeveer 5 min |
Op schaal zijn Parquet en ORC duidelijk de beste keuze, omdat hun bestanden veel kleiner zijn. De uploadtijd is het belangrijkste knelpunt. De voorbewerking duurt voor alle formaten ongeveer even lang, behalve bij CSV.GZ, waar de extra decompressietijd steeds verder oploopt.
Welk formaat moet je gebruiken?
Hoe zit het met Gzip?
CSV.GZ-bestanden zijn 90% kleiner dan onbewerkte CSV, wat helpt bij trage verbindingen. Maar in tegenstelling tot Parquet en ORC, die ingebouwde compressie hebben en rechtstreeks kunnen worden bevraagd, moeten gzip-bestanden volledig worden gedecomprimeerd voordat ze kunnen worden verwerkt. Gzip ondersteunt geen parallelle decompressie. Bij 50M+ events duurt de voorbewerking van CSV.GZ 3–4,5 minuten, tegenover ongeveer 2 minuten voor andere formaten. Bij een snelle verbinding is een iets groter Parquet-bestand uploaden bijna altijd de betere keuze.
Bij een zeer trage verbinding, 10 Mbps, en een groot CSV-bestand kan gzip nog steeds zinvol zijn: gzip -k data.csvop Mac/Linux, of 7-Zip op Windows.
Als je eenmaal een basisdataset hebt geladen, hoef je bij nieuwe data niet alles opnieuw te uploaden. ProcessMind ondersteunt delta loading, oftewel incrementele uploads, zodat je nieuwe events aan een bestaande dataset kunt toevoegen.
Zo werkt het:
Het effect op de prestaties is groot. In plaats van je groeiende dataset telkens opnieuw te uploaden, upload je alleen wat nieuw is:
| Scenario | Volledige herupload | Delta-upload | Bespaarde tijd |
|---|---|---|---|
| 10M basis + 500K nieuwe events (100 Mbps) | 4 min upload | 5s upload | ongeveer 4 min |
| 20M basis + 2M nieuwe events (100 Mbps) | 7 min upload | 44s upload | ongeveer 6 min |
| 50M basis + 5M nieuwe events (100 Mbps) | 18 min upload | 2 min upload | ongeveer 16 min |
Na een delta-upload wordt de gecombineerde dataset opnieuw voorbewerkt, met dezelfde kosten van 1–2,5 minuut. Maar je bespaart alle uploadtijd voor data die al was geüpload.
Delta loading is ideaal voor:
Delta-bestanden moeten hetzelfde bestandsformaat en dezelfde kolomstructuur hebben als de oorspronkelijke upload. Bekijk de gids voor incrementeel data laden voor meer informatie.
Bij datasets van meer dan enkele gigabytes of terugkerende uploads zijn scripts of commandlinetools betrouwbaarder dan uploads via de browser. Browsers kunnen een time-out krijgen, te veel geheugen gebruiken of voortgang verliezen als de netwerkverbinding wordt onderbroken.
Waarom de API beter werkt voor grote bestanden:
curl tonen de overdrachtsvoortgang in realtime.Voorbeeld met curl:
# Upload a Parquet file directly using a presigned URL
curl -X PUT "$PRESIGNED_URL" --upload-file data.parquet ProcessMind levert presigned URL’s waarmee je rechtstreeks naar cloudopslag kunt uploaden. Naast je API-key zijn geen andere inloggegevens nodig. Je kunt de presigned upload-URL ook rechtstreeks kopiëren uit het instellingenmenu van de dataset in de ProcessMind-interface.
Bekijk de API-documentatie voor complete voorbeelden in Bash, JavaScript en Python, waaronder het ophalen van presigned URL’s, het uploaden van delta-bestanden en het programmatisch verwerken van grote datasets.
Als je je procesmodel verfijnt door activiteiten te hernoemen, mappings aan te passen of groeperingen toe te voegen, hoeven alleen de modelafhankelijke berekeningen te worden bijgewerkt. De basisdata blijft staan:
| Dataset | Volledige voorbewerking | Modelwijziging | Bespaarde tijd |
|---|---|---|---|
| 1M events | 55s | ongeveer 14s | 75% |
| 2M events | 1 min | ongeveer 16s | 73% |
| 10M events | 1,5 min | ongeveer 20s | 78% |
| 20M events | 2 min | ongeveer 23s | 81% |
| 50M events | 2 min | ongeveer 37s | 69% |
| 100M events | 2,5 min | ongeveer 52s | 65% |
Modelwijzigingen zijn snel, omdat de eerste stap voor het laden van data, die meegroeit met de datasetgrootte, al klaar is. Alleen de modelafhankelijke aggregatiestap wordt opnieuw uitgevoerd, inclusief activity mappings, overgangen en varianten. Bij datasets tot 20M events zijn modelwijzigingen binnen 25 seconden klaar. Zelfs bij 100M events duurt dit minder dan een minuut, veel sneller dan volledige voorbewerking.
Zodra je data is geladen, zijn dit de responstijden tijdens de analyse. De tijden hieronder zijn medianen van meerdere benchmarkruns. Elke dashboardcomponent voert onafhankelijk een query uit en wordt parallel geladen:
| Dataset | Statistieken | Process flow | Varianten | Categorieën | Databrowser | Animatie |
|---|---|---|---|---|---|---|
| 100K | 0,6s | 1,5s | 1,1s | 1,5s | 1,2s | 1,4s |
| 1M | 0,6s | 1,6s | 1,4s | 1,9s | 1,5s | 2,0s |
| 5M | 0,6s | 2,5s | 1,8s | 2,4s | 1,3s | 2,1s |
| 10M | 0,6s | 3,4s | 2,2s | 2,5s | 1,6s | 2,4s |
| 20M | 0,6s | 3,9s | 2,7s | 3,3s | 1,9s | 3,6s |
| 50M | 0,6s | 5,1s | 4,2s | 5,7s | 1,6s | 2,7s |
| 100M | 0,6s | 7,2s | 3,5s | 4,7s | 1,6s | 5,0s |
Patronen om op te letten:
De conclusie: Bij de aanbevolen datasetgrootte van 1–10M events reageert elke dashboardcomponent binnen 3,5 seconden. Zelfs bij 50M events duren de meeste queries met filters 2–4 seconden. Alleen ongefilterde process flows en categorieoverzichten op datasets van 50M+ events komen uit op 5–6 seconden.
Dit is het belangrijkste advies in deze gids: begin niet met je grootste dataset.
De iteratieve aanpak
De cijfers spreken voor zich:
| Aanpak | Upload (100 Mbps) | Voorbewerking | Totale wachttijd | Dashboardsnelheid |
|---|---|---|---|---|
| Begin met 1M events | 22s | 55s | ongeveer 1,5 min | 1–2s |
| Begin met 5M events | 2 min | 1,5 min | ongeveer 3,5 min | 1–2,5s |
| Begin met 50M events | 18 min | 2 min | ongeveer 20 min | 1–6s |
De meeste organisaties merken dat 1–5M events ruim voldoende is voor inzichten waar je mee aan de slag kunt. Het procesgedrag stabiliseert al ruim vóór 10M events. Daarna voeg je vooral duplicaten toe van patronen die je al hebt gezien.
Als je Parquet-bestand met 1M events, 34 MB, in 3 seconden wordt geüpload en je dezelfde process map oplevert als 50M events, waarom zou je dan 18 minuten wachten?
De cijfers hierboven vertellen een duidelijk verhaal: bij 1–5M events duurt uploaden seconden, de voorbewerking minder dan 2 minuten en reageren dashboards in 1–2,5 seconden. Bij 50M wacht je bij 100 Mbps 20 minuten op een upload en reageren dashboards trager, in 3–6 seconden. Dat maakt een groot verschil in de praktijk.
De echte vraag is dus niet: “Hoe snel is de tool?” Maar: “Hoeveel data heb ik echt nodig?” Het antwoord is bijna altijd minder dan je denkt.
Analyseer eerst één land, één afdeling of één productlijn.
Dit gaat niet om beperkingen, maar om duidelijkheid. Analyse per segment levert scherpere inzichten op dan wereldwijde gemiddelden.
Waarom segmentatie werkt:
Voorbeeld: Een Europees logistiek bedrijf met 42M verzendevents uit 8 landen:
Segmentatiedimensies
Geografisch, waaronder land, regio en locatie; organisatorisch, waaronder bedrijfsonderdeel en afdeling; productgericht, waaronder productlijn en categorie; tijdsgebonden, waaronder boekjaar en kwartaal; klantgericht, waaronder segment en kanaal.
Sluit het standaardpad uit voordat je uploadt. Met deze techniek kun je datasets met 90 tot 95% verkleinen.
De meeste bedrijfsprocessen volgen de 80/20-regel. Het overgrote deel van de cases volgt het standaardpad en verloopt goed. Zoek je naar uitzonderingen, compliance-overtredingen of procesafwijkingen, dan heb je die data niet nodig.
Voorbeeld: Een purchase-to-pay-proces met 1,2 miljoen inkooporders (8,4 miljoen events):
Analyseer je complianceproblemen, exporteer dan alleen de uitzonderingscases. Dat is een reductie van 92%, van 8,4 miljoen events (1,9 GB) naar 670.000 events (150 MB). Op een verbinding van 100 Mbps daalt de uploadtijd van 3 minuten naar 15 seconden. Exporteer als Parquet (15 MB) en je kunt het bestand in minder dan 2 seconden uploaden.
Zo filter je vóór het exporteren
Filter op status, zoals afgewezen, geannuleerd of uitzondering; op specifieke activiteiten, zoals cases met “Afwijzing” of “Handmatige overschrijving”; op de doorlooptijd van een case, zoals cases die langer duren dan verwacht; of op specifieke perioden of bedrijfsonderdelen.
Elke kolom die je exporteert kost bandbreedte, opslagruimte en verwerkingstijd. Door kolommen zorgvuldig te kiezen, kun je een van de grootste optimalisaties doorvoeren.
Wat je kunt weglaten:
Voorbeeld: Een SAP-export van 1,8 miljoen inkooporder-events met 45 kolommen werd teruggebracht naar 12 essentiële kolommen:
De kolommen die ertoe doen: CaseId, Activity, Timestamp en enkele bedrijfsattributen, zoals status, bedrag, categorie en regio. Al het andere is waarschijnlijk ruis.
Voor sommige analytische vragen heb je echt grote datasets nodig. Als je weet wanneer dat zo is, kun je de juiste keuze maken:
Heb je 50 miljoen events of meer nodig, bereid je daar dan op voor: gebruik Parquet-formaat, waarmee je een CSV-bestand van 11 GB terugbrengt naar 1,7 GB en de voorbewerking versnelt; gebruik de API voor betrouwbare overdracht; en gebruik indien mogelijk een snelle netwerkverbinding. Na die eerste upload blijven dashboards snel.
De bovenstaande secties gaan over datavolume. De andere helft van een snelle interface zit in de manier waarop het model en de dashboards zijn opgebouwd:
De beste manier om de prestaties van process mining te begrijpen, is door het met je eigen data te ervaren.
Begin met een sample. Exporteer 1 miljoen events uit een recente periode in Parquet-formaat. Upload ze. Bouw je eerste model. Ervaar hoe snel je kunt itereren.
Pas de technieken uit deze gids toe. Gebruik kolomgebaseerde formaten. Filter op uitzonderingen. Segmenteer per regio. Verwijder overbodige kolommen. Elke optimalisatie bouwt voort op de vorige.
Schaal bewust op. Zodra je je proces met 1 miljoen events begrijpt, bepaal je of je meer nodig hebt. Meestal is dat niet zo. Heb je wel meer data nodig, gebruik dan delta loading om data toe te voegen in plaats van alles opnieuw te uploaden.
Start je gratis proefperiode en bekijk deze benchmarks in de praktijk. Hulp nodig bij het bepalen van de juiste datasetgrootte of het optimaliseren van je exports? Neem contact met ons op. We hebben honderden organisaties geholpen de juiste balans te vinden tussen datavolume en analysesnelheid.
Leer meer over het DMAIC-proces, Six Sigma en lean procesverbeteringstools voor meetbare bedrijfsresultaten.
Vergelijk Celonis voor process mining met ProcessMind en vind software die past bij je processen, budget en doelen.
Vergelijk Fluxicon Disco en ProcessMind op functies, prijzen en gebruikssituaties om het juiste process mining-platform voor je team te kiezen.
Vergelijk ProcessMind en SAP Signavio voor process mining, modellering en simulatie. Kies de oplossing die bij je bedrijf past.
Krijg meteen toegang, zonder creditcard en zonder wachttijd. Zet de manier waarop je organisatie werkt om in heldere, verbonden procesontwerpen.
Bouw je procesarchitectuur, leg eigenaarschap en beheersmaatregelen vast en breng rollen en verantwoordelijkheden op elk niveau op één lijn.
Start je gratis proefperiode en leg één betrouwbare basis voor het beheren, besturen en continu verbeteren van je processen.
We gebruiken cookies om je ervaring te verbeteren, content te personaliseren en verkeer te analyseren. Door op "Alles accepteren" te klikken, geef je toestemming voor ons gebruik van cookies.