Bedrijfsbeslissingen genomen op basis van verkeerde aannames? Verschillende uitkomsten voor dezelfde KPI binnen de organisatie? Data scientists die klagen dat ze teveel tijd kwijt zijn aan het vergaren van de juiste data? Onvoldoende investeren in data preparatie is vaak de boosdoener. Data preparatie wordt misschien niet gezien als het meest sexy onderdeel van het Business Intelligence (BI) proces, maar het is wel een fundamentele stap in het proces. Het is de basis waarop effectieve analyses en betrouwbare rapportages worden gebouwd. In deze blogpost gaan we dieper in op waarom data preparatie essentieel is, welke stappen eronder vallen en geven we handreikingen om dit zelf in de praktijk te brengen.
Wat is data preparatie?
Gartner (een wereldwijd onderzoeks- en adviesbureau in de informatietechnologie-sector) zegt het volgende over data preparatie:
“Data preparatie, of data voorbereiding, verwijst naar het proces waarin ruwe data wordt verzameld, opgeschoond en georganiseerd om het geschikt te maken voor analyse. Het is een essentiële stap in het proces van data-analyse en machine learning, omdat de kwaliteit van de resultaten vaak afhangt van de kwaliteit van de data”
Het doel is dus om ruwe data geschikt te maken voor analyse. Dit proces is essentieel omdat ruwe data vaak ongestructureerd, incompleet en vol fouten is. Zonder zorgvuldige preparatie kan data zorgen voor misleidende analyses en suboptimale beslissingen.
Waarom is data preparatie cruciaal?
Data preparatie is dus geen keuze meer, maar eerder noodzaak. In deze tijd worden beslissingen steeds vaker genomen op basis van data. De kwaliteit van de data die ten grondslag ligt van deze beslissingen is daardoor zeer belangrijk. Dit kan het verschil maken tussen succes en falen. Een goed data preparatie proces zorgt voor:
- Betrouwbare inzichten: zuivere en goed gestructureerde data leidt tot nauwkeurige analyses.
- Efficiëntie: er wordt minder tijd verspild aan het corrigeren van fouten tijdens de analysefase.
- Betere besluitvorming: hoogwaardige data ondersteunt betere strategische beslissingen.
Stappen in het data preparatieproces
1. Data verzamelen
Het proces begint met het verzamelen van data uit diverse bronnen, zoals ECD’s, ERP’s, ROM’s, PROM’s en zorgdomotica.
Voor het verzamelen van data geven wij de voorkeur aan ELT (Extract, Load, Transform) in plaats van ETL (Extract, Transform, Load).
In het ELT-proces worden gegevens eerst geëxporteerd uit verschillende bronnen en direct geladen in de doelbestemming. De transformatie vindt plaats binnen het dataplatform zelf. Het platform zet de gegevens om naar het gewenste formaat voor analyses en inzichten. Hierdoor is er minder rekenkracht en opslag nodig voor tussenliggende stappen, wat leidt tot snellere verwerking en lagere kosten. Er is nog een uitgebreidere toelichting over ETL vs ELT te vinden op de volgende pagina: <link naar ETL vs ELT toevoegen.>
2. Opschonen van data
De data die is verzameld moet eerst opgeschoond worden. Dit komt omdat de data die ingeladen is fouten kunnen bevatten. Voorbeelden van het opschonen van data zijn:
- Verwijderen van duplicaten: duplicaatrecords kunnen analyses vertekenen.
- Corrigeren van fouten: identificeer en corrigeer typfouten, foutieve gegevens en inconsistenties.
3. Data transformeren
In deze stap wordt de data klaargezet in nieuwe datasets zodat het gebruikt kan worden voor analyse. De opgeschoonde data wordt samengevoegd, er worden aggregaties gemaakt en business logica wordt toegepast. Deze datasets worden beschikbaar gesteld in business intelligence tools zoals Power BI en vormen de ruggengraat van data gedreven beslissingen.
Er zijn verschillende methodes om deze datasets klaar te zetten. Denk hierbij aan star schema, snowflake schema en fact constellation schema. Het kiezen van de juiste modelleringstechniek hangt af van verschillende factoren, waaronder de aard van de gegevens, de complexiteit van de bedrijfsprocessen en de vereisten van de analyse. Het is in ieder geval raadzaam om in je datasets gebruik te maken van feiten en dimensies.
Als de data transformatie goed wordt toepast zorgt het ervoor dat de kwaliteit van data omhoog gaat en dat er waardevolle datasets ontstaan voor de eindgebruikers.
De datakwaliteit kan in het transformatie proces verhoogt worden door gebruik te maken van standaardisatie, testen en automatisering. De transformaties moeten plaatsvinden in een versie beheerde omgeving zoals Git. Er zijn een aantal belangrijke voordelen als je gebruik maakt van versiebeheer. De code is centraal beschikbaar voor iedereen en het bied de mogelijkheid voor teams/collega’s om met dezelfde code te werken in aparte branches zodat je elkaar niet in de weg zit bij het maken van aanpassingen in het datamodel. Daarnaast worden alle wijzigingen in de code vastgehouden, zodat je door de tijd heen de wijzigingen kan volgen en ook gemakkelijk een versie terug kan zetten. Ook is zichtbaar waarom een wijziging is doorgevoerd en kan je een proces invoeren dat de wijzigingen eerst door een collega gevalideerd moeten worden voordat deze wordt doorgevoerd. Dit zorgt voor verhoogde kennisdeling, hogere kwaliteit code en een kleinere kans op fouten.
Tevens wil je ervoor zorgen dat er geautomatiseerde testen op de data wordt uitgevoerd, de documentatie op orde is en de transformatie modulair is opgebouwd. Dit zorgt ervoor dat de kans op fouten verder wordt geminimaliseerd en dat er datasets ontstaan die de eindgebruikers kunnen vertrouwen.
Testen zijn belangrijk om te kunnen monitoren of data accuraat is getransformeerd, actueel is en de modellen valide zijn. Als er geen testen worden uitgevoerd ontstaat er hierover onzekerheid wat risico’s met zich meebrengt. De testen zorgen ervoor dat fouten in modellen of aannames over de brondata snel gevalideerd kunnen worden.
Start in eerste instantie met basis tests zoals primaire sleutels controleren op uniciteit en niet-nulwaarden, geaccepteerde waarden voor kolommen en relationele tests. Vervolgens kan je proactieve tests opzetten waarbij je de business logica controleert. Belangrijk is ook om de juiste balans te vinden en niet te veel testen te introduceren waardoor er testmoeheid ontstaat.
Uitdagingen data transformatie
Het transformeren van data is gecompliceerd werk. Dit komt omdat je te maken hebt met meerdere databronnen, grote hoeveelheden data, ingewikkelde datastructuren en de wensen van je stakeholders. Daarnaast zijn er ook grote uitdagingen in het proces om consistentie te creëren, standaardisatie toe te passen in definities en je modelering conventies vast te leggen.
Consistentie en modelering conventies
Het doel is om consistente gestandaardiseerde datasets te creëren. Om consistentie te creëren is het van belang dat je vastlegt hoe je gaat modelleren. In deze stijlgids leg je vast hoe je naamconventies zijn voor schema’s, tabellen en kolommen. Hoe de code wordt opgebouwd, welke testen er uitgevoerd moeten worden en hoe de documentatie wordt vormgegeven. Dit wordt extra belangrijk als je met meerdere collega’s samenwerkt. Als je dit niet van tevoren vastlegt krijg je te maken met inconsistente datasets waarbij er verschillende standaarden zijn toegepast.
Hoe de consistentie en standaardisatie eruit moet zien is uniek per organisatie. Voor het creëren van consistentie kan je jezelf de volgende vragen stellen:
- Heb ik gestandaardiseerde naam conventies?
- Heb ik kolomnamen op dezelfde manier geformatteerd?
- Heb ik numerieke waarden afgerond op hetzelfde aantal decimalen?
- Gebruik ik macro’s waarin bijvoorbeeld berekeningen van centen naar euro’s altijd op dezelfde manier worden toepast?
- Heb ik ervoor gezorgd dat vergelijkbare waarden hetzelfde datatype hebben?
- Test ik alle primaire sleutels regelmatig op uniciteit en niet-nulwaarden?
- Heb ik documentatie geschreven/aangemaakt?
Standaardisatie definities
Binnen een organisatie is er altijd een risico dat er onduidelijkheid is over de definitie van een KPI, waardoor er verschillende resultaten naar voren kunnen komen voor dezelfde KPI. Om dit te voorkomen wil je ervoor zorgen dat deze definities gedocumenteerd zijn. Daarnaast moeten deze definities onder versiebeheer in de transformatie laag zitten. Hierdoor kunnen er geen interpretatie verschillen ontstaan door verkeerde filtering of bij het ophalen van de data. Een ander voordeel van definities in versiebeheer is dat er terug te vinden is wanneer en waarom er een wijziging is toegepast in de definitie.
4. Data integreren
Dit is het combineren van data uit verschillende bronsystemen waarmee nieuwe inzichten gecreëerd kunnen worden. Hierbij is het belangrijk om te weten wel systeem het leidende systeem is. Een voorbeeld hiervan is de medewerker. Als de medewerker in twee systemen gebruikt wordt is het van belang dat er een leidend systeem is. In dat geval kan er eenduidigheid over de gegevens van de medewerker gecreëerd worden.
Bij het combineren van de data uit verschillende systemen komen het vaakst inconsistenties voor. Let er hierbij op dat het niet altijd de bedoeling is dat deze inconsistenties in de transformaties worden opgelost. In sommige gevallen moeten er correcties in de bronsystemen worden doorgevoerd.
5. Data security
De data wordt steeds breder beschikbaar gesteld binnen organisaties. Welke data ingezien mag worden is afhankelijk van de rol/functie binnen de organisatie. Om ervoor te zorgen dat iedereen alleen de data ziet waar hij/zij voor geautoriseerd is moet er security worden toegepast. Dit kan op twee manieren:
- Rijniveau (RLS): hierbij worden er regels wel of niet getoond op basis van de toegepaste security. Als er bijvoorbeeld een afspraakoverzicht is ziet de ingelogde medewerker alleen zijn eigen afspraken.
- Kolomniveau (CLS): hierbij wordt de inhoud van de kolommen wel of niet getoond op basis van de toegepaste security. Hiermee is het mogelijk om toegang te geven tot dezelfde dataset maar de inhoud van de kolommen wel of niet te tonen op basis van de rechten.
Het heeft de voorkeur om deze security in een zo vroeg mogelijk stadium in te richten zodat alle datasets die erop volgen de toegepaste security volgen.
Conclusie
Het is belangrijk om te investeren in een solide data preparatie strategie. Zorg ervoor dat je hierin de volgende onderdelen opneemt:
- Versiebeheer
- Testen
- Documentatie
- Security
- Standaardisatie
- Modulaire opbouw
Data preparatie is een investering in de toekomst van je organisatie. Door deze stappen zorgvuldig te volgen en te implementeren, kun je de waarde van je data maximaliseren en ervoor zorgen dat je organisatie de juiste beslissingen neemt op basis van de best mogelijke informatie.
Nieuwsbrief: altijd op de hoogte zijn?
We schrijven regelmatig over de ontwikkelingen op het gebied van bijvoorbeeld zorgdomotica. Wil jij als eerste op de hoogte zijn?
Schrijf je dan in voor de nieuwsbrief en ontvang elke maand:
✓ Alle Data Science actualiteiten
✓ BI-oplossingen
✓ Ontwikkelingen data in de zorg