Wat is een multidimensionaal schema?
Multidimensionaal schema is speciaal ontworpen om datawarehouse-systemen te modelleren. De schema's zijn ontworpen om te voorzien in de unieke behoeften van zeer grote databases die zijn ontworpen voor analytische doeleinden (OLAP).
Typen datawarehouse-schema's:
Hieronder volgen drie hoofdtypen multidimensionale schema's die elk hun unieke voordelen hebben.
- Sterrenschema
- Sneeuwvlokschema
- Galaxy Schema
In deze tutorial leert u meer over-
- Wat is een sterrenschema?
- Wat is een sneeuwvlokschema?
- Star Schema Vs Snowflake Schema: Key Differences
- Wat is een Galaxy-schema?
- Wat is het Star Cluster Schema?
Wat is een sterrenschema?
Star Schema in datawarehouse, waarin het midden van de ster één feitentabel en een aantal bijbehorende dimensietabellen kan hebben. Het staat bekend als sterschema omdat de structuur op een ster lijkt. Het Star Schema-gegevensmodel is het eenvoudigste type datawarehouse-schema. Het is ook bekend als Star Join Schema en is geoptimaliseerd voor het opvragen van grote gegevenssets.
In het volgende Star Schema-voorbeeld staat de feitentabel in het midden die sleutels bevat voor elke dimensietabel, zoals Dealer_ID, Model ID, Date_ID, Product_ID, Branch_ID en andere attributen zoals verkochte eenheden en omzet.
Kenmerken van Star Schema:
- Elke dimensie in een sterschema wordt weergegeven met de enige tabel met één dimensie.
- De dimensietabel moet de set attributen bevatten.
- De dimensietabel wordt met een externe sleutel aan de feitentabel gekoppeld
- De maattabel is niet met elkaar verbonden
- De feitentabel bevat de sleutel en de maat
- Het Star-schema is gemakkelijk te begrijpen en zorgt voor een optimaal schijfgebruik.
- De dimensietabellen zijn niet genormaliseerd. In de bovenstaande afbeelding heeft Country_ID bijvoorbeeld geen Country-opzoektabel zoals een OLTP-ontwerp zou hebben.
- Het schema wordt breed ondersteund door BI Tools
Wat is een sneeuwvlokschema?
Sneeuwvlokschema in datawarehouse is een logische rangschikking van tabellen in een multidimensionale database, zodat het ER-diagram lijkt op een sneeuwvlokvorm. Een sneeuwvlokschema is een uitbreiding van een sterrenschema en voegt extra dimensies toe. De dimensietabellen zijn genormaliseerd, waardoor gegevens in extra tabellen worden opgesplitst.
In het volgende Snowflake Schema-voorbeeld wordt Country verder genormaliseerd in een afzonderlijke tabel.
Kenmerken van Snowflake-schema:
- Het belangrijkste voordeel van het sneeuwvlokschema is dat het minder schijfruimte gebruikt.
- Makkelijker om een dimensie te implementeren is toegevoegd aan het schema
- Door meerdere tabellen zijn de queryprestaties verminderd
- De belangrijkste uitdaging waarmee u te maken krijgt tijdens het gebruik van het sneeuwvlokschema, is dat u meer onderhoudswerkzaamheden moet uitvoeren vanwege de meer opzoektabellen.
Star Schema Vs Snowflake Schema: Key Differences
Hieronder volgt een belangrijk verschil tussen Star Schema en Snowflake Schema:
Sterrenschema | Sneeuwvlokschema |
---|---|
Hiërarchieën voor de dimensies worden opgeslagen in de maattabel. | Hiërarchieën zijn onderverdeeld in afzonderlijke tabellen. |
Het bevat een feitentabel omgeven door dimensietabellen. | Een feitentafel omgeven door een afmetingentabel die op hun beurt weer omgeven zijn door een afmetingentabel |
In een sterschema creëert slechts één enkele join de relatie tussen de feitentabel en eventuele dimensietabellen. | Een sneeuwvlokschema vereist veel joins om de gegevens op te halen. |
Eenvoudig DB-ontwerp. | Zeer complex DB-ontwerp. |
Gedenormaliseerde gegevensstructuur en -query werken ook sneller. | Genormaliseerde gegevensstructuur. |
Hoog niveau van gegevensredundantie | Zeer lage gegevensredundantie |
De tabel met enkele dimensie bevat geaggregeerde gegevens. | Gegevens opgesplitst in verschillende dimensietabellen. |
Kubusverwerking is sneller. | Het verwerken van kubussen kan traag zijn vanwege de complexe verbinding. |
Biedt beter presterende zoekopdrachten met behulp van Star Join Query Optimization. Tabellen kunnen worden verbonden met meerdere afmetingen. | Het Snowflake-schema wordt weergegeven door een gecentraliseerde feitentabel die waarschijnlijk niet met meerdere dimensies is verbonden. |
Wat is een Galaxy-schema?
Een Galaxy-schema bevat twee feitentabellen die onderling dimensietabellen delen. Het wordt ook wel Fact Constellation Schema genoemd. Het schema wordt gezien als een verzameling sterren, vandaar de naam Galaxy Schema.
Zoals u in het bovenstaande voorbeeld kunt zien, zijn er twee feitentabellen
- Omzet
- Product.
In Galaxy schema-shares worden dimensies Conformed Dimensions genoemd.
Kenmerken van Galaxy Schema:
- De dimensies in dit schema zijn onderverdeeld in afzonderlijke dimensies op basis van de verschillende hiërarchieniveaus.
- Als geografie bijvoorbeeld vier hiërarchische niveaus heeft, zoals regio, land, staat en stad, dan zou het Galaxy-schema vier dimensies moeten hebben.
- Bovendien is het mogelijk om dit type schema op te bouwen door het schema met één ster op te splitsen in meer sterrenschema's.
- De dimensies zijn groot in dit schema dat nodig is om te bouwen op basis van de hiërarchische niveaus.
- Dit schema is handig voor het samenvoegen van feitentabellen voor een beter begrip.
Wat is het Star Cluster Schema?
Snowflake-schema bevat volledig uitgevouwen hiërarchieën. Dit kan het schema echter complexer maken en vereist extra joins. Aan de andere kant bevat het sterschema volledig samengevouwen hiërarchieën, wat tot redundantie kan leiden. De beste oplossing kan dus een balans zijn tussen deze twee schema's, namelijk het ontwerp van Star Cluster Schema.
Overlappende dimensies zijn te vinden als vorken in hiërarchieën. Een splitsing vindt plaats wanneer een entiteit optreedt als een ouder in twee verschillende dimensionale hiërarchieën. Fork-entiteiten worden vervolgens geïdentificeerd als classificatie met een-op-veel-relaties.
Overzicht:
- Multidimensionaal schema is speciaal ontworpen om datawarehouse-systemen te modelleren
- Het sterschema is het eenvoudigste type datawarehouse-schema. Het staat bekend als sterschema omdat de structuur op een ster lijkt.
- Een sneeuwvlokschema is een uitbreiding van een sterrenschema en voegt extra dimensies toe. Het wordt sneeuwvlok genoemd omdat het diagram op een sneeuwvlok lijkt.
- In een sterschema definieert alleen een enkele join de relatie tussen de feitentabel en eventuele dimensietabellen.
- Sterschema bevat een feitentabel omgeven door dimensietabellen.
- Het sneeuwvlokschema is omgeven door een dimensietabel die op hun beurt is omgeven door een dimensietabel
- Een sneeuwvlokschema vereist veel joins om de gegevens op te halen.
- Een Galaxy-schema bevat twee feitentabellen die dimensietabellen delen. Het wordt ook wel Fact Constellation Schema genoemd.
- Star cluster schema bevat attributen van Star en Snowflake Schema.