Wie gegevens analyseert, begint meestal met een vraag. Welke producten verkopen goed? Welke klanten bestellen minder? Of waarom stijgen de kosten in een bepaalde regio? Het antwoord roept vaak nieuwe vragen op. Je wilt kunnen doorzoeken, vergelijken en verbanden ontdekken zonder voor iedere vervolgvraag een nieuwe rapportage te laten maken.
Dat is het uitgangspunt van een associatief datamodel. Het maakt zichtbaar hoe gegevens met elkaar samenhangen en welke waarden buiten een gemaakte selectie vallen. In Qlik vormt dit model, samen met de associatieve engine, de basis voor een manier van analyseren waarbij de gebruiker zelf het onderzoekspad bepaalt.
Maar hoe werkt dat precies? En wat is het verschil met andere manieren van datamodellering?
- Wat is een associatief datamodel?
- Hoe werkt het associatieve model in Qlik?
- Wat betekenen groen, wit en grijs?
- Waarom zijn uitgesloten waarden interessant?
- Een praktijkvoorbeeld: schadeanalyse bij een verzekeraar
- Associatief versus relationeel datamodel en relationele databases: wat is het verschil?
- Hoe bouw je een goed associatief datamodel?
- 1. Bepaal welke gegevens bij elkaar horen
- 2. Gebruik de juiste sleutels
- 3. Let op het detailniveau
- 4. Controleer synthetische sleutels en circulaire verwijzingen
- 5. Controleer de uitkomsten
- Wat zijn de beperkingen van een associatief datamodel?
- Wanneer is associatieve analyse waardevol?
- Veelgestelde vragen over het associatieve datamodel
Wat is een associatief datamodel?
Een associatief datamodel is een datastructuur waarin tabellen via gemeenschappelijke velden met elkaar worden verbonden. Die verbindingen maken het mogelijk om gegevens als logische structuur in samenhang te analyseren.
Stel dat een organisatie beschikt over drie tabellen: klanten, orders en producten. De klantentabel bevat onder meer klantnummers en regio’s als eigenschappen. De ordertabel bevat bestellingen en klantnummers. De producttabel bevat productnummers en productgroepen als attributen.
Zo’n model is vooral ontworpen voor organisaties die met verschillende systemen of bronnen werken.
Door de juiste velden met elkaar te verbinden, ontstaat een model waarin een selectie van een klant ook gevolgen heeft voor de bijbehorende orders en producten.
In Qlik worden deze relaties gebruikt door de associatieve engine. Die bepaalt na iedere selectie welke waarden nog mogelijk zijn en welke niet bij de geselecteerde gegevens horen.
Het onderscheid zit dus niet uitsluitend in de manier waarop tabellen zijn gekoppeld. Vooral de manier waarop het systeem die relaties tijdens een analyse gebruikt, maakt het associatieve principe interessant en helpt gebruikers de samenhang te begrijpen, ook zonder veel technische kennis of wanneer data uit verschillende systemen komt; je kunt die opzet ook zien als een logisch datamodel dat de logische structuur beschrijft zonder technische implementatiedetails.
Hoe werkt het associatieve model in Qlik?
Wanneer gegevens in een BI-context in Qlik worden geladen, worden alle tabellen in het geheugen ingelezen en gekoppeld via gemeenschappelijke velden; de associaties zijn daarbij gebaseerd op velden met dezelfde naam. De waarden in die velden bepalen welke records bij elkaar horen, terwijl items losse datapunten zijn, zoals klantnaam of product.
Neem een verkooporganisatie met gegevens over klanten, producten, regio’s en bestellingen.
Een medewerker selecteert de regio Zuid-Holland. Qlik bepaalt vervolgens welke klanten, producten en bestellingen met die regio samenhangen. Selecteert de medewerker daarna een bepaalde productgroep, dan worden de mogelijke waarden opnieuw berekend.
Associatieve modellen draaien daarbij doorgaans volledig in het werkgeheugen (RAM).
Dat gebeurt niet alleen in de visualisatie waarop wordt geklikt. Ook de overige onderdelen van de analyse reageren op de gemaakte selectie.
Zo kan een gebruiker vanuit een overzicht van de omzet verder onderzoeken welke klanten bijdragen aan die omzet, welke producten zij afnemen en welke combinaties juist niet voorkomen, wat data analyse op verschillende manieren ondersteunt.
Het analysepad ligt niet vooraf vast. De gebruiker kan vanuit verschillende invalshoeken nieuwe selecties maken.
Wat betekenen groen, wit en grijs?
Een kenmerk van de associatieve analyse in Qlik is dat visuele feedback met kleurcodering laat zien hoe waarden zich verhouden tot de actuele selectie.
Groen: geselecteerd
Groene waarden zijn door de gebruiker geselecteerd. Selecteer je bijvoorbeeld Zuid-Holland, dan wordt deze regio groen weergegeven.
Wit: mogelijk
Witte waarden zijn verenigbaar met de huidige selectie. Het kunnen bijvoorbeeld producten zijn die daadwerkelijk zijn verkocht aan klanten in Zuid-Holland.
Grijs: alternatief of uitgesloten
Grijze waarden horen niet bij de actuele combinatie van selecties. Qlik maakt daarbij onderscheid tussen lichtgrijze alternatieve waarden en donkergrijze uitgesloten waarden.
Dat onderscheid is belangrijk. Een product dat grijs wordt weergegeven, is niet noodzakelijk een product dat nergens wordt verkocht. Het betekent dat de waarde binnen de huidige selectie niet mogelijk is.
De kleuren laten dus zien welke gegevens binnen en buiten de actuele selectie vallen. Ze bewijzen op zichzelf niet dat informatie ontbreekt in de bronadministratie. Juist die niet-gekoppelde of uitgesloten informatie is de belangrijkste factor om analyses te verdiepen en betere beslissingen te nemen.
Waarom zijn uitgesloten waarden interessant?
Bij veel analyses gaat de aandacht vooral uit naar wat wél in de resultaten voorkomt. Maar ook wat buiten een selectie valt, kan aanleiding geven tot nieuwe vragen.
Stel dat een groothandel wil onderzoeken waarom de verkoop van een bepaalde productgroep achterblijft.
De analist selecteert die productgroep. Vervolgens worden de klanten zichtbaar die de betreffende producten hebben gekocht. Andere klanten kunnen als uitgesloten worden weergegeven.
Dat roept een interessante vraag op: waarom bestellen sommige klanten deze productgroep niet, terwijl zij wel andere producten afnemen?
Misschien is er een commerciële kans. Misschien sluit het assortiment niet aan bij hun behoeften. Of misschien zijn de producten tijdelijk niet leverbaar.
Het associatieve model geeft die verklaring niet automatisch. Het maakt wel zichtbaar welke relaties nader onderzoek verdienen.
Daarmee verschuift de analyse van uitsluitend het bekijken van resultaten naar het onderzoeken van mogelijke verklaringen.
Een praktijkvoorbeeld: schadeanalyse bij een verzekeraar
Een verzekeraar wil onderzoeken waarom de schadelast binnen een bepaalde portefeuille stijgt.
De organisatie beschikt over polisgegevens, schadeclaims, productgroepen en informatie over regio’s. Deze gegevens zijn in een associatief datamodel met elkaar verbonden.
Een analist selecteert eerst een productgroep waarin de schadelast is toegenomen. Vervolgens onderzoekt hij welke regio’s, verzekerde objecten en schadeoorzaken bij deze selectie horen.
Daarbij kan blijken dat de stijging zich vooral voordoet binnen een beperkt aantal combinaties van producten en regio’s.
Tegelijkertijd blijven andere waarden zichtbaar als mogelijk, alternatief of uitgesloten. De analist kan daardoor ook onderzoeken welke combinaties niet voorkomen binnen de geselecteerde schades.
Vervolgens kan hij de selectie wijzigen, bijvoorbeeld door een andere periode te kiezen of een specifieke schadeoorzaak te onderzoeken.
Zo ontstaat een verkennende analyse waarin iedere uitkomst aanleiding kan zijn voor een volgende vraag.
Belangrijk is dat het model alleen relaties toont die op basis van de beschikbare gegevens kunnen worden vastgesteld. Het verklaart niet zelfstandig waarom schade ontstaat en toont geen oorzakelijke verbanden zonder aanvullend onderzoek.
Associatief versus relationeel datamodel en relationele databases: wat is het verschil?
Een relationeel datamodel en een associatief datamodel hebben belangrijke overeenkomsten. Beide gebruiken tabellen, velden en relaties tussen gegevens, en het relationele model slaat data gestructureerd op in tabellen met rijen en kolommen.
Het verschil zit vooral in de manier waarop de gegevens voor analyse worden gebruikt.
Bij een relationele database worden gegevens doorgaans opgevraagd met zoekopdrachten. In het relationele model, dat in 1970 werd geïntroduceerd door E.F. Codd, worden gegevens via relaties verbonden en helpt normalisatie redundantie te voorkomen. Met Structured Query Language (SQL) leg je vast welke tabellen, filters en berekeningen nodig zijn om een resultaat te verkrijgen, bijvoorbeeld in SQL Server. Daarbij werk je vaak met foreign keys en vooraf gedefinieerde JOIN-structuren.
Een associatieve analyseomgeving zoals Qlik Sense gebruikt een geladen datamodel waarin selecties direct doorwerken in de samenhangende gegevens. De gebruiker kan daardoor interactief onderzoeken welke waarden bij een selectie horen en welke niet.
Dat betekent niet dat relationele databases uitsluitend vaste rapportages ondersteunen. Ook andere BI-platforms bieden interactieve filters, dynamische berekeningen en mogelijkheden voor verkennende analyses.
Het onderscheidende kenmerk van Qlik is de combinatie van associatieve verwerking en de expliciete weergave van geselecteerde, mogelijke en uitgesloten waarden.
Een relationele database en een associatief datamodel sluiten elkaar overigens niet uit. Gegevens uit een relationele database kunnen prima als bron dienen voor een associatief model. Waar een conceptuele of logisch model vooral de structuur beschrijft, gaat een fysiek datamodel over de daadwerkelijke implementatie in een database en verschilt het daarmee van een analysemodel.
Hoe bouw je een goed associatief datamodel?
Het feit dat Qlik tabellen automatisch kan associëren, betekent niet dat een goed datamodel vanzelf ontstaat.
Een correcte inrichting begint bij inzicht in de gegevens en de betekenis van de velden.
1. Bepaal welke gegevens bij elkaar horen
Niet ieder veld met dezelfde naam heeft dezelfde betekenis. Een veld met de naam ‘Datum’ kan in de ene tabel betrekking hebben op een orderdatum en in een andere op een betaaldatum.
Wanneer zulke velden onbedoeld worden gekoppeld, ontstaan verkeerde associaties.
2. Gebruik de juiste sleutels
Tabellen worden gekoppeld via gemeenschappelijke velden. Daarvoor moeten de gebruikte sleutels daadwerkelijk dezelfde entiteiten of relaties vertegenwoordigen.
Een klantnummer kan bijvoorbeeld de relatie vormen tussen een klantentabel en een ordertabel. Maar als klantnummers niet uniek zijn binnen de gebruikte administraties, kan een aanvullende sleutel nodig zijn.
3. Let op het detailniveau
Een tabel met één record per klant heeft een ander detailniveau dan een tabel met meerdere orders per klant.
Wanneer gegevens met verschillende granulariteit verkeerd worden gecombineerd, kunnen tellingen en berekeningen een misleidend resultaat opleveren.
Het datamodel moet daarom rekening houden met de manier waarop gegevens zijn vastgelegd en hoe ze worden geanalyseerd.
4. Controleer synthetische sleutels en circulaire verwijzingen
Wanneer twee tabellen meerdere gemeenschappelijke velden bevatten, kan Qlik automatisch een synthetische sleutel aanmaken.
Dat is niet altijd fout, maar het kan wijzen op een onbedoelde relatie. Vooral meerdere of geneste synthetische sleutels verdienen aandacht.
Ook circulaire verwijzingen kunnen problemen veroorzaken. Daarbij bestaan meerdere associatiepaden tussen gegevens, waardoor de interpretatie dubbelzinnig kan worden.
De Data Model Viewer helpt om dergelijke situaties te herkennen en de structuur te controleren.
5. Controleer de uitkomsten
Een technisch geldig datamodel is nog geen garantie voor betrouwbare analyses.
Vergelijk daarom belangrijke tellingen, totalen en KPI’s met de oorspronkelijke bronnen. Controleer ook in de praktijk of selecties met echte data de verwachte resultaten opleveren.
Pas wanneer de relaties en berekeningen inhoudelijk kloppen, kan het model een betrouwbare basis vormen voor analyse. Dat gedeelde begrip versnelt bovendien de ontwikkeling tussen business en IT. In de Data Model Viewer kun je koppelingen visueel in een diagram controleren. Een entity relationship diagram kan dezelfde structuur vooraf of aanvullend inzichtelijk maken.
Wat zijn de beperkingen van een associatief datamodel?
Een associatief datamodel biedt flexibiliteit, maar lost niet ieder datavraagstuk op.
Datakwaliteit blijft bepalend. Wanneer brongegevens onvolledig, verouderd of onjuist zijn, worden die problemen niet automatisch verholpen door de gegevens te associëren.
Relaties zijn niet hetzelfde als oorzaken. Dat twee waarden in de data samen voorkomen, betekent niet dat de ene waarde de andere veroorzaakt, ook niet als analyses in de praktijk overtuigend lijken.
Een goed model vraagt kennis. Vooral bij meerdere bronsystemen, complexe sleutels en verschillende detailniveaus is technische kennis nodig om gegevens goed te beheren.
Prestaties zijn afhankelijk van de inrichting. Grote hoeveelheden gegevens, onnodige velden en complexe associaties kunnen invloed hebben op de snelheid en het geheugengebruik, mede door de manier waarop data is opgeslagen.
Het associatieve principe biedt dus vooral meer vrijheid bij het onderzoeken van gegevens. De kwaliteit van de uitkomsten blijft afhankelijk van de gegevens en de inrichting van het model, terwijl een helder model ook de ontwikkeling en afstemming tussen business en IT ondersteunt.
Wanneer is associatieve analyse waardevol?
Associatieve analyse is vooral interessant wanneer gebruikers niet vooraf precies weten welke vragen zij tijdens een onderzoek zullen stellen. In zulke situaties is dit type model vaak het meest geschikt.
Bij een vaste maandrapportage is doorgaans bekend welke cijfers nodig zijn. Maar bij het onderzoeken van afwijkingen, klantgedrag of operationele problemen ontstaan nieuwe vragen tijdens de analyse, waarbij inzichten op verschillende manieren gecombineerd kunnen worden zonder eerst een nieuw model op te zetten.
Juist dan is het waardevol om vanuit verschillende dimensies door gegevens te kunnen navigeren en ook de uitgesloten waarden te blijven zien. Dat helpt teams om op basis van business intelligence en data-analyse betere beslissingen te nemen.
Het associatieve datamodel ondersteunt daarmee een onderzoekende manier van werken. Niet de vooraf vastgelegde rapportage bepaalt de route, maar de vragen die tijdens het analyseren ontstaan. Een goed model vraagt kennis én goed beheer van gegevens, terwijl prestaties ook afhangen van hoe data is opgeslagen doordat dit invloed heeft op snelheid en geheugengebruik.
Wie meer wil weten over de software waarin deze techniek wordt toegepast, of behoefte heeft aan een ondersteunend netwerk om er meer uit te halen, kan verder lezen in ons kennisbankartikel Qlik Sense: wat is het en hoe werkt het? en gebruikmaken van HNQx voor Qlik-gebruikers.
Veelgestelde vragen over het associatieve datamodel
Een associatief datamodel verbindt tabellen via gemeenschappelijke velden, zodat gegevens in samenhang kunnen worden geanalyseerd. In Qlik gebruikt de associatieve engine deze relaties om na iedere selectie te bepalen welke waarden mogelijk, alternatief of uitgesloten zijn.
Beide modellen werken met relaties tussen gegevens. Bij relationele databases worden resultaten doorgaans met queries opgevraagd. Een relationeel model werkt daarbij vaak met vooraf gedefinieerde queries, terwijl een associatief model vrijere verkenning ondersteunt; een logisch datamodel beschrijft de structuur zonder technische details. Bij associatieve analyse in Qlik worden de gevolgen van selecties direct zichtbaar in het geladen datamodel, inclusief waarden die buiten de actuele selectie vallen.
Grijze waarden zijn niet mogelijk binnen de actuele combinatie van selecties. Lichtgrijs duidt op alternatieve waarden en donkergrijs op uitgesloten waarden. Dat betekent niet automatisch dat gegevens ontbreken in de oorspronkelijke databron.
Synthetische sleutels ontstaan wanneer tabellen meerdere gemeenschappelijke velden bevatten. Qlik maakt dan automatisch een sleutel voor de betreffende veldcombinaties. Dit kan functioneel zijn, maar kan ook wijzen op een fout in het datamodel.
Ja. Gegevens uit bijvoorbeeld databases, administratiesystemen en bestanden uit verschillende systemen kunnen in één model worden samengebracht. Ook bronnen zoals documenten in documentdatabases, waar alles als losse JSON-objecten wordt opgeslagen, en graph-databases, die data opslaan als knopen en randen, kunnen daarin worden meegenomen. Daarvoor moeten de juiste relaties worden ingericht en moeten de gegevens voldoende consistent en betrouwbaar zijn.
Conclusie
Een associatief datamodel maakt het mogelijk om gegevens vanuit verschillende invalshoeken te onderzoeken. Het bijzondere zit niet alleen in de relaties tussen tabellen, maar vooral in de manier waarop die relaties tijdens een analyse zichtbaar blijven.
Gebruikers zien welke waarden bij hun selectie horen, maar ook welke daarbuiten vallen. Daardoor kunnen zij verder kijken dan het eerste antwoord en nieuwe vragen stellen.
De techniek neemt het belang van goede datamodellering niet weg. Integendeel: hoe betrouwbaarder de gegevens en hoe zorgvuldiger de relaties zijn ingericht, hoe waardevoller de inzichten die eruit voortkomen.
Disclaimer: Dit artikel biedt algemene informatie over associatieve datamodellen en hun toepassing in Qlik. De werking en prestaties zijn afhankelijk van de inrichting van het datamodel, de gebruikte gegevens en de softwareomgeving. Voor specifieke technische toepassingen kunnen aanvullende ontwerp- en validatiestappen noodzakelijk zijn.