ontwerp van de modelEdit
het dimensionale model is gebouwd op een sterachtig schema of sneeuwvlokschema, met dimensies rondom de feittabel. Om het schema op te bouwen, wordt het volgende ontwerpmodel gebruikt:
- Kies het bedrijfsproces
- Declare the grain
- Identificeer de dimensies
- Identificeer het feit
Kies het bedrijfsproces
het proces van dimensionale modellering bouwt voort op een ontwerpmethode in vier stappen die helpt om de bruikbaarheid van het dimensionale model en het gebruik van het datawarehouse te waarborgen. De basis in het ontwerp bouwt voort op het feitelijke bedrijfsproces dat het datawarehouse moet bestrijken. Daarom is de eerste stap in het model het beschrijven van het bedrijfsproces waarop het model voortbouwt. Dit kan bijvoorbeeld een sales situatie in een winkel. Om het bedrijfsproces te beschrijven, kan men ervoor kiezen om dit te doen in platte tekst of gebruik maken van basic Business Process Modeling Notation (BPMN) of andere ontwerpgidsen zoals de Unified Modeling Language (UML).
de korrel declareren
Na een beschrijving van het bedrijfsproces is de volgende stap in het ontwerp het declareren van de korrel van het model. De korrel van het model is de exacte beschrijving van waar het dimensionale model op moet focussen. Dit kan bijvoorbeeld “een individueel item op een klant slip van een winkel”. Om te verduidelijken wat de korrel betekent, moet u het centrale proces kiezen en beschrijven met één zin. Bovendien, de korrel (zin) is wat je gaat bouwen uw dimensies en feiten tabel van. U zou het nodig vinden om terug te gaan naar deze stap om het graan te veranderen als gevolg van nieuwe informatie die is opgedaan over wat uw model wordt verondersteld te kunnen leveren.
Identificeer de afmetingen
de derde stap in het ontwerpproces is het definiëren van de afmetingen van het model. De afmetingen moeten binnen de korrel worden bepaald vanaf de tweede stap van het 4-stappenproces. Dimensies vormen de basis van de fact table, en is waar de gegevens voor de fact table worden verzameld. Typisch dimensies zijn zelfstandige naamwoorden zoals datum, winkel, inventaris etc. Deze dimensies zijn waar alle gegevens worden opgeslagen. De datumdimensie kan bijvoorbeeld gegevens bevatten zoals Jaar, maand en weekdag.
Identificeer de feiten
Na het definiëren van de dimensies is de volgende stap in het proces het maken van sleutels voor de feittabel. Deze stap is om de numerieke feiten te identificeren die elke feitenlijst rij zullen bevolken. Deze stap is nauw verbonden met de zakelijke gebruikers van het systeem, omdat dit is waar ze toegang krijgen tot gegevens die zijn opgeslagen in het Data warehouse. Daarom zijn de meeste facts tabelrijen numerieke, additieve cijfers zoals hoeveelheid of kosten per eenheid, enz.
Dimension NormalizationEdit
dimensionale normalisatie of sneeuwvlok verwijdert overbodige attributen, die bekend zijn in de normale vlakke gedegenormaliseerde dimensies. Dimensies worden strikt samengevoegd in subdimensies.
sneeuwvlokken heeft een invloed op de gegevensstructuur die verschilt van veel filosofieën van datawarehouses.Enkele data (fact) tabel omgeven door meerdere beschrijvende (dimension) tabellen
ontwikkelaars normaliseren vaak dimensies niet om verschillende redenen:
- normalisatie maakt de gegevensstructuur complexer
- prestaties kunnen langzamer zijn, door de vele joins tussen tabellen
- de ruimtebesparing is minimaal
- Bitmap indexen kunnen niet worden gebruikt
- Query prestaties. 3NF-databases lijden aan prestatieproblemen bij het aggregeren of ophalen van veel dimensionale waarden die mogelijk analyse vereisen. Als u alleen operationele rapporten gaat doen, dan kunt u zich mogelijk redden met 3NF omdat uw operationele gebruiker op zoek is naar zeer fijne graangegevens.
Er zijn enkele argumenten waarom normalisatie nuttig kan zijn. Het kan een voordeel zijn wanneer een deel van de hiërarchie gemeenschappelijk is voor meer dan één dimensie. Een geografische dimensie kan bijvoorbeeld herbruikbaar zijn omdat zowel de afmetingen van de klant als die van de leverancier deze gebruiken.