Feiten en dimensies vormen de kern van elke business intelligence-inspanning. Deze tabellen bevatten de basisgegevens die worden gebruikt om gedetailleerde analyses uit te voeren en bedrijfswaarde af te leiden. Dit artikel gaat in op de ontwikkeling en het gebruik van feiten en dimensies in een database.
Wat zijn feiten en feitentabellen?
Feitentabellen bevatten de gegevens die overeenkomen met een bepaald bedrijfsproces. Elke rij vertegenwoordigt een enkele gebeurtenis die is gekoppeld aan een proces en bevat de meetgegevens die aan die gebeurtenis zijn gekoppeld.
Een retailorganisatie kan bijvoorbeeld feitentabellen hebben met betrekking tot aankopen van klanten, telefoontjes naar de klantenservice en productretouren. De tabel met aankopen van klanten bevat waarschijnlijk informatie over het aankoopbedrag, eventuele toegepaste kortingen en de betaalde btw.
De informatie in een feitentabel is meestal numerieke gegevens, en het zijn vaak gegevens die gemakkelijk kunnen worden gemanipuleerd, met name door vele duizenden rijen bij elkaar op te tellen. De hierboven beschreven detailhandelaar wil bijvoorbeeld een winstrapport opstellen voor een bepaalde winkel, productlijn of klantsegment. De winkelier kan dit doen door informatie uit de feitentabel op te halen die betrekking heeft op die transacties, aan de specifieke criteria te voldoen en die rijen vervolgens bij elkaar op te tellen.
Wat is een feitentabelgraan?
Bij het ontwerpen van een feitentabel moeten ontwikkelaars goed letten op de korrel van de tabel, het detailniveau in de tabel.
De ontwikkelaar die de tabel met aankoopfeiten ontwerpt voor de hierboven beschreven retailorganisatie, moet beslissen of de kern van de tabel een klanttransactie is of een individuele aankoop van een item. In het geval van een individueel artikelaankoopgraan, zou elke klanttransactie meerdere feitentabelinvoeringen genereren die overeenkomen met elk gekocht artikel.
De keuze van graan is een fundamentele beslissing die tijdens het ontwerpproces wordt genomen en die een aanzienlijke invloed kan hebben op de inspanningen op het gebied van business intelligence later.
Wat zijn afmetingen en maattabellen?
Dimensies beschrijven de objecten die betrokken zijn bij een business intelligence-inspanning. Terwijl feiten overeenkomen met gebeurtenissen, komen dimensies overeen met mensen, items of andere objecten.
In het winkelscenario dat in het voorbeeld wordt gebruikt, hebben we besproken dat aankopen, retourneren en bellen feiten zijn. Aan de andere kant zijn klanten, werknemers, artikelen en winkels dimensies die in dimensietabellen moeten worden opgenomen.
Dimensietabellen bevatten details over elke instantie van een object. De artikeldimensietabel zou bijvoorbeeld een record bevatten voor elk artikel dat in de winkel wordt verkocht. Het kan informatie bevatten zoals de kosten van het artikel, de leverancier, kleur, maten en soortgelijke gegevens.
Relatie tussen feiten- en dimensietabellen
Feitentabellen en dimensietabellen vormen een databaserelatie. Terugkerend naar het retailmodel, zou de feitentabel voor een klanttransactie waarschijnlijk een refererende sleutel bevatten die verwijst naar de itemdimensietabel, waarbij de invoer overeenkomt met een primaire sleutel in die tabel voor een record dat het gekochte item beschrijft.