Bij het ontwerpen van je feiten en dimensie tabellen, moet je vooraf bepalen welke data je in de tabellen wilt meenemen. Dit heet ook wel het bepalen van de grain. De definitie van grain is ook wel:

De grain in business intelligence geeft aan het laagste detailniveau van je data binnen je tabellen

Grain bepalen

In de ontwerpfase van je tabel dien je al te bepalen op welk detailniveau je wilt gaan rapporteren. Ga je verkoopcijfers analyseren op factuurniveau of op regelniveau.

Hoe lager het detailniveau waarop data is opgeslagen, hoe dieper je analyse kan gaan. Vraag jezelf hierbij wel af of dit ook noodzakelijk is omdat er ook nadelen kleven aan een te laag detailniveau.

Hoe lager het detailniveau, hoe meer data je op moet slaan in je datawarehouse. Heb je als voorbeeld gemiddeld 1.000 transacties op een dag, dan zou je als grain de volledige transactie kunnen nemen. Je hebt dan ongeveer 365.000 records per jaar in je database.

Ga je een niveau dieper en verhoog je daarmee je grain (detailniveau), dan zal het aantal records gaan stijgen. Als voorbeeld zou je in plaats van rapporten op factuurniveau op regelniveau data op kunnen gaan slaan. Hierdoor heb je meer mogelijkheden met betrekking tot analyses, maar heb je ook meer ruimte nodig in je database. Wanneer je bijvoorbeeld gemiddeld 15 regels op een enkele transacties hebt, bij een totaal aantal transacties van 1.000 per dag, dan heb je na één jaar al 5.475.000 rijen aan data in je database.

Dimensies en Feiten

Wanneer je het juiste detailniveau voor je feitentabel hebt bepaald, dien je jouw dimensie daarop aan te sluiten. De dimensie geeft context aan je feit en moet daarom qua grain aansluiten.

Is je feit op regelniveau en je dimensie op kassabon niveau, dan komt dit niet overeen. Je zult dan gaan merken dat je wel de data beschikbaar hebt maar niet op dat niveau kan rapporteren.

Bepaal daarom goed op welk niveau je wilt gaan rapporteren!