dimensional data model data warehouse tutorial with examples
Deze tutorial legt de voordelen en mythen uit van een dimensionaal gegevensmodel in datawarehouse. Lees ook meer over dimensietabellen en feitentabellen met voorbeelden:
Datawarehousetesten werd uitgelegd in onze vorige tutorial, hierin Datawarehouse-trainingsserie voor iedereen
Enorme gegevens worden georganiseerd in het datawarehouse (DW) met dimensionale datamodelleringstechnieken. Deze dimensionale datamodelleringstechnieken maken het voor eindgebruikers erg gemakkelijk om naar de bedrijfsgegevens te informeren. Deze tutorial legt alles uit over de dimensionale datamodellen in DW.
Doelgroep
- Datawarehouse / ETL-ontwikkelaars en testers.
- Databaseprofessionals met basiskennis van databaseconcepten.
- Databasebeheerders / big data-experts die datawarehouse / ETL-concepten willen begrijpen.
- Afgestudeerden / Freshers die op zoek zijn naar Data Warehouse-banen.
Wat je leert:
Dimensionale gegevensmodellen
Dimensionale datamodellen zijn de datastructuren die beschikbaar zijn voor de eindgebruikers in ETL-stroom, om de gegevens op te vragen en te analyseren. Het ETL-proces eindigt met het laden van gegevens in de beoogde dimensionale gegevensmodellen. Elk dimensionaal gegevensmodel is gebouwd met een feitentabel omgeven door tabellen met meerdere dimensies.
Stappen die moeten worden gevolgd bij het ontwerpen van een dimensionaal gegevensmodel:
Voordelen van dimensionale gegevensmodellering
Hieronder worden de verschillende voordelen van dimensionale gegevensmodellering genoemd.
- Ze zijn beveiligd om de continu veranderende DW-omgevingen te gebruiken.
- Met behulp van dimensionale datamodellen kunnen eenvoudig enorme gegevens worden opgebouwd.
- De gegevens van de dimensionale datamodellen zijn gemakkelijk te begrijpen en te analyseren.
- Ze zijn snel toegankelijk voor de eindgebruikers voor zoekopdrachten met hoge prestaties.
- Dimensionale gegevensmodellen stellen ons in staat om de gegevens hiërarchisch op te splitsen (of).
ER-modellering versus dimensionale gegevensmodellering
- ER-modellering is geschikt voor operationele systemen, terwijl dimensionale modellering geschikt is voor het datawarehouse.
- ER-modellering houdt gedetailleerde actuele transactiegegevens bij, terwijl dimensionale modellering de samenvatting van zowel huidige als historische transactiegegevens bijhoudt.
- ER-modellering heeft genormaliseerde gegevens, terwijl dimensionale modellering gede-normaliseerde gegevens heeft.
- ER-modellering gebruikt meer joins tijdens het ophalen van query's, terwijl bij dimensionale modellering een kleiner aantal joins wordt gebruikt, waardoor de queryprestaties sneller zijn bij dimensionale modellering.
Dimensionale datamodellering Mythen
Hieronder worden enkele van de bestaande mythes over dimensionale datamodellering gegeven.
- Dimensionale gegevensmodellen worden alleen gebruikt om de samenvatting van de gegevens weer te geven.
- Ze zijn afdelingsspecifiek in een organisatie.
- Ze ondersteunen geen schaalbaarheid.
- Ze zijn ontworpen voor het doel van eindgebruikersrapporten en vragen.
- We kunnen de dimensionale gegevensmodellen niet integreren.
Maattabellen
Dimensietabellen spelen een sleutelrol in het DW-systeem door alle geanalyseerde metrische waarden op te slaan. Deze waarden worden opgeslagen onder gemakkelijk te selecteren dimensionale attributen (kolommen) in de tabel. De kwaliteit van een DW-systeem hangt grotendeels af van de diepte van afmetingsattributen.
Daarom moeten we proberen om veel attributen samen met hun respectieve waarden in de dimensietabellen op te geven.
Laten we eens kijken naar de structuur van dimensietabellen !!
# 1) Maattabel Sleutel: Elke dimensietabel heeft een van de dimensiekenmerken als primaire sleutel om elke rij uniek te identificeren. Daarom kunnen de verschillende numerieke waarden van dat attribuut als primaire sleutels fungeren.
Als de attribuutwaarden hoe dan ook niet uniek zijn, kunt u opeenvolgend gegenereerde systeemnummers beschouwen als de primaire sleutels. Deze worden ook wel surrogaatsleutels genoemd.
Dimensionale datamodellen moeten de referentiële integriteitsbeperking hebben voor elke sleutel tussen dimensies en feiten. Feitentabellen hebben dus een referentiesleutelreferentie voor elke primaire / surrogaatsleutel in de dimensietabel om de referentiële integriteit te behouden.
Als dit is mislukt, kunnen de respectieve feitentabelgegevens niet worden opgehaald voor die dimensiesleutel.
# 2) Tafel is breed: We kunnen zeggen dat dimensietabellen breed zijn, omdat we op elk moment in de DW-cyclus een willekeurig aantal attributen aan een dimensietabel kunnen toevoegen. DW architect zal het ETL-team vragen om respectieve nieuwe attributen aan het schema toe te voegen.
In realtime scenario's kunt u dimensietabellen zien met 50 (of) meer attributen.
# 3) Tekstuele attributen: Dimensionale attributen kunnen van elk type zijn, bij voorkeur tekst (of) numeriek. Tekstuele attributen hebben echte zakelijke woorden in plaats van codes. Dimensietabellen zijn niet bedoeld voor berekeningen en daarom worden numerieke waarden zelden gebruikt voor dimensionale attributen.
# 4) Attributen zijn mogelijk niet direct gerelateerd: Alle attributen in een dimensietabel zijn mogelijk niet aan elkaar gerelateerd.
# 5) Niet genormaliseerd: Het normaliseren van een dimensietabel brengt meer tussentabellen in beeld, wat niet efficiënt is. Dimensietabellen zijn dus niet genormaliseerd.
Dimensionale kenmerken kunnen dienen als bron voor beperkingen in query's en kunnen ook als labels in de rapporten worden weergegeven. De zoekopdrachten worden efficiënt uitgevoerd als u rechtstreeks een attribuut uit de dimensietabel kiest en rechtstreeks naar de betreffende feitentabel verwijst zonder andere tussenliggende tabellen aan te raken.
# 6) Naar beneden boren en oprollen: Dimensiekenmerken hebben de mogelijkheid om de gegevens in te zoomen (of) wanneer dat nodig is.
# 7) Meerdere hiërarchieën: Een enkele dimensietabel met meerdere hiërarchieën is heel gebruikelijk. Een dimensietabel heeft een eenvoudige hiërarchie als er maar één pad bestaat van het onderste niveau naar het bovenste niveau. Evenzo zal het meerdere hiërarchieën hebben als er meerdere paden aanwezig zijn om van het onderste niveau naar het bovenste niveau te komen.
# 8) Weinig records: Dimensietabellen hebben minder records (in honderden) dan de feitentabellen (in miljoenen). Hoewel ze kleiner zijn dan de feiten, bieden ze alle input voor de feitentabellen.
Hier is een voorbeeld van een klantdimensietabel:
Als u de bovenstaande concepten begrijpt, kunt u beslissen of een gegevensveld kan fungeren als een dimensieattribuut (of niet) tijdens het extraheren van de gegevens uit de bron zelf.
Het basislaadschema voor een dimensie
Dimensies kunnen op twee manieren worden gemaakt, d.w.z. door de dimensiegegevens uit externe bronsystemen te extraheren (of). Het ETL-systeem kan de dimensies bouwen vanuit enscenering zonder tussenkomst van externe bronnen. Een ETL-systeem zonder enige externe verwerking is echter geschikter om dimensietabellen te maken.
Hieronder staan de stappen die bij dit proces betrokken zijn:
hoe u een jnlp-bestand opent
- Gegevens opschonen: Gegevens worden opgeschoond, gevalideerd en bedrijfsregels worden toegepast voordat ze in de dimensietabel worden geladen om de consistentie te behouden.
- Gegevens die in overeenstemming zijn: Gegevens uit andere delen van het datawarehouse moeten correct worden geaggregeerd als één waarde, met betrekking tot elk veld van de dimensietabel.
- Deel dezelfde domeinen: Zodra de gegevens zijn bevestigd, worden ze opnieuw opgeslagen in verzameltabellen.
- Gegevenslevering: Ten slotte worden alle dimensionale attribuutwaarden geladen met toegewezen primaire / surrogaatsleutels.
Soorten afmetingen
De verschillende soorten afmetingen worden hieronder ter referentie vermeld.
Laten we beginnen!!
# 1) Kleine afmetingen
Kleine dimensies in datawarehouse werken als opzoektabellen met minder rijen en kolommen. Gegevens in kleine afmetingen kunnen eenvoudig vanuit spreadsheets worden geladen. Indien gewenst kunnen kleine afmetingen gecombineerd worden tot een superdimensie.
# 2) Conforme afmeting
Een geconformeerde dimensie is een dimensie waarnaar op dezelfde manier kan worden verwezen bij elke feitentabel waaraan deze is gerelateerd.
Datumdimensie is het beste voorbeeld van een conforme dimensie, aangezien de kenmerken van de datumdimensie zoals jaar, maand, week, dagen enz. Dezelfde gegevens op dezelfde manier communiceren over een willekeurig aantal feiten.
Een voorbeeld van een conforme dimensie.
# 3) Ongewenste dimensie
Er zijn maar weinig attributen in een feitentabel, zoals vlaggen en indicatoren, kunnen naar een aparte junk-dimensietabel worden verplaatst. Deze attributen behoren ook niet tot andere bestaande dimensietabellen. Over het algemeen zijn de waarden van deze attributen gewoon een 'ja / nee' (of) 'waar / onwaar'.
Het creëren van een nieuwe dimensie voor elk afzonderlijk vlagattribuut maakt het complex door een groter aantal externe sleutels voor de feitentabel te creëren. Tegelijkertijd verhoogt het bewaren van al deze vlaggen en indicatorinformatie in feitentabellen ook de hoeveelheid gegevens die in feiten wordt opgeslagen, waardoor de prestaties afnemen.
Daarom is de beste oplossing hiervoor het creëren van een enkele rommeldimensie, aangezien een rommeldimensie in staat is om een aantal 'ja / nee' of 'waar / onwaar' -indicatoren te bevatten. Ongewenste dimensies slaan echter beschrijvende waarden op voor deze indicatoren (ja / nee (of) waar / onwaar), zoals actief en in behandeling, enz.
Op basis van de complexiteit van een feitentabel en zijn indicatoren, kan een feitentabel een of meer ongewenste dimensies hebben.
Een voorbeeld van Junk Dimension.
# 4) Rollenspel-dimensie
Een enkele dimensie waarnaar in een feitentabel kan worden verwezen voor meerdere doeleinden, staat bekend als rollenspeldimensie.
Het beste voorbeeld voor een rollenspeldimensie is weer een datumdimensietabel, aangezien hetzelfde datumkenmerk in een dimensie kan worden gebruikt voor verschillende doeleinden in een feit, zoals de datum van bestelling, datum van levering, transactiedatum, datum van annulering, enz.
Indien nodig kunt u vier verschillende weergaven op de datumdimensietabel maken met betrekking tot vier verschillende datumattributen van een feitentabel.
Een voorbeeld van een rollenspel-dimensie.
# 5) Gedegenereerde dimensies
Er zijn misschien weinig attributen die geen dimensies (metrieken) of feiten (metingen) kunnen zijn, maar ze hebben analyse nodig. Al dergelijke attributen kunnen worden verplaatst naar gedegenereerde dimensies.
Bijvoorbeeld, u kunt het bestelnummer, factuurnummer enz. beschouwen als gedegenereerde dimensieattributen.
Een voorbeeld van een gedegenereerde dimensie.
# 6) Langzaam veranderende afmetingen
Een langzaam veranderende dimensie is een dimensie waarbij gegevens op elk moment langzaam kunnen veranderen in plaats van periodiek met regelmatige tussenpozen. Gewijzigde gegevens in dimensietabellen kunnen op verschillende manieren worden verwerkt, zoals hieronder wordt uitgelegd.
U kunt het SCD-type selecteren om voor elk kenmerk in een dimensionale tabel afzonderlijk op een wijziging te reageren.
(i) Type 1 SCD
- In type 1 wanneer er een verandering is in de waarden van de dimensionale attributen, worden de bestaande waarden overschreven met de nieuw gewijzigde waarden, wat niets anders is dan een update.
- Oude gegevens worden niet bewaard voor historische referentie.
- Eerdere rapporten kunnen niet opnieuw worden gegenereerd omdat er geen oude gegevens zijn.
- Makkelijk te onderhouden.
- De impact op feitentabellen is meer.
Voorbeeld van type 1 SCD:
(Ii) Type 2 SCD
- Bij type 2 wordt, wanneer er een wijziging is in de waarden van de dimensionale attributen, een nieuwe rij ingevoegd met de gewijzigde waarden zonder de oude rijgegevens te wijzigen.
- Als er een refererende sleutel naar het oude record in een van de feitentabellen is, wordt de oude surrogaatsleutel overal automatisch bijgewerkt met een nieuwe surrogaatsleutel.
- De impact op de feitentabelwijzigingen is veel minder met de bovenstaande stap.
- Oude gegevens worden na de wijzigingen nergens meer in aanmerking genomen.
- Bij type 2 kunnen we alle veranderingen volgen die plaatsvinden in de dimensionale attributen.
- Er is geen limiet aan de opslag van historische gegevens.
- In type 2 is het toevoegen van enkele attributen aan elke rij, zoals gewijzigde datum, effectieve datum-tijd, einddatum-tijd, de reden voor de wijziging en de huidige vlag optioneel. Maar dit is belangrijk als het bedrijf wil weten hoeveel wijzigingen er in een bepaalde periode zijn aangebracht.
Voorbeeld van type 2 SCD:
(Iii) Type 3 SCD
- Bij type 3 wanneer er een verandering is in de waarden van de dimensionale attributen, worden nieuwe waarden bijgewerkt maar de oude waarden blijven geldig als tweede optie.
- In plaats van voor elke wijziging een nieuwe rij toe te voegen, wordt er een nieuwe kolom toegevoegd als deze nog niet bestond.
- Oude waarden worden in de hierboven toegevoegde attributen geplaatst en de gegevens van het primaire attribuut worden overschreven met de gewijzigde waarde zoals in type 1.
- Er is een limiet aan de opslag van historische gegevens.
- De impact op feitentabellen is meer.
Voorbeeld van type 3 SCD:
(iv) Type 4 SCD
- Bij type 4 worden de huidige gegevens in één tabel opgeslagen.
- Alle historische gegevens worden bijgehouden in een andere tabel.
Voorbeeld van type 4 SCD:
(v) Type 6 SCD
- Een dimensionale tabel kan ook een combinatie hebben van alle drie SCD-typen 1, 2 en 3, die bekend staat als een Type 6 (of) Hybride langzaam veranderende dimensie.
Feitentabellen
Feitentabellen slaan een reeks kwantitatief gemeten waarden op die worden gebruikt voor berekeningen. De waarden van de feitentabel worden weergegeven in de bedrijfsrapporten. In tegenstelling tot het tekstuele gegevenstype van de dimensietabellen, is het gegevenstype van feitentabellen aanzienlijk numeriek.
Feitentabellen zijn diep, terwijl dimensietabellen breed zijn, aangezien feitentabellen een groter aantal rijen en een kleiner aantal kolommen hebben. Een primaire sleutel die in de feitentabel wordt gedefinieerd, is voornamelijk om elke rij afzonderlijk te identificeren. De primaire sleutel wordt in feite ook wel een samengestelde sleutel genoemd.
Als de samengestelde sleutel ontbreekt in een feitentabel en als twee records dezelfde gegevens hebben, is het erg moeilijk om onderscheid te maken tussen de gegevens en om de gegevens in dimensietabellen te verwijzen.
Dus als er een juiste unieke sleutel bestaat als de samengestelde sleutel, is het goed om een volgnummer te genereren voor elk feitentabelrecord. Een ander alternatief is om een aaneengeschakelde primaire sleutel te vormen. Dit wordt gegenereerd door alle verwezen primaire sleutels van dimensietabellen rijgewijs samen te voegen.
Een enkele feitentabel kan worden omgeven door tabellen met meerdere dimensies. Met behulp van de externe sleutels die in feitentabellen bestaan, kan in de dimensietabellen naar de respectieve context (uitgebreide gegevens) van de gemeten waarden worden verwezen. Met behulp van vragen zullen de gebruikers drill-down en efficiënt oprollen uitvoeren.
Het laagste gegevensniveau dat in een feitentabel kan worden opgeslagen, staat bekend als Granulariteit. Het aantal dimensietabellen dat aan een feitentabel is gekoppeld, is omgekeerd evenredig met de granulariteit van die feitentabelgegevens. d.w.z. de kleinste meetwaarde heeft meer dimensietabellen nodig om te worden verwezen.
In een dimensionaal model onderhouden de feitentabellen een veel-op-veel-relatie met dimensietabellen.
Een voorbeeld van een Verkoopfeitentabel:
Laadplan voor feitentabellen
U kunt de gegevens van een feitentabel efficiënt laden door rekening te houden met de volgende punten:
# 1) Indexen neerzetten en herstellen
Indexen in feite tabellen zijn goede prestatieboosters bij het opvragen van de gegevens, maar ze vernietigen de prestaties tijdens het laden van de gegevens. Daarom, voordat u enorme gegevens in feitentabellen laadt, moet u eerst alle indexen op die tabel laten vallen, de gegevens laden en de indexen herstellen.
# 2) Afzonderlijke inserts van updates
Voeg invoeg- en update-records niet samen tijdens het laden in een feitentabel. Als het aantal updates kleiner is, verwerk dan inserts en updates afzonderlijk. Als het aantal updates groter is, is het raadzaam om de feitentabel af te kappen en opnieuw te laden voor snelle resultaten.
# 3) Partitioneren
Voer de fysieke partitionering van een feitentabel uit in minitabellen voor betere queryprestaties op bulkgegevens van feitentabellen. Behalve de DBA's en het ETL-team zal niemand op de hoogte zijn van de partities op feiten.
Als een voorbeeld , u kunt een tabel maandelijks, kwartaalgewijs, jaargewijs, etc. partitioneren. Bij het opvragen wordt alleen rekening gehouden met de gepartitioneerde gegevens in plaats van de hele tabel te scannen.
# 4) Parallel laden
webservices prestatietests met loadrunner
We hebben nu een idee over partities op feitentabellen. Partities op feiten zijn ook nuttig bij het laden van enorme gegevens in feiten. Om dit te doen, splitst u eerst de gegevens logisch op in verschillende gegevensbestanden en voert u de ETL-taken uit om al deze logische gegevensdelen parallel te laden.
# 5) Hulpprogramma voor bulkladen
In tegenstelling tot andere RDBMS-systemen, hoeft het ETL-systeem niet expliciet rollback-logboeken bij te houden voor storingen in het midden van de transactie. Hier gebeuren 'bulkloads' in feiten in plaats van 'SQL-inserts' om enorme gegevens te laden. Als in het geval een enkele belasting mislukt, kunnen de volledige gegevens eenvoudig opnieuw worden geladen (of) kunnen ze worden voortgezet waar ze waren gebleven met de bulkbelasting.
# 6) Een feitrecord verwijderen
Het verwijderen van een feitentabelrecord gebeurt alleen als het bedrijf dit expliciet wil. Als er feitentabelgegevens zijn die niet langer in de bronsystemen bestaan, kunnen die respectieve gegevens fysiek (of) logisch worden verwijderd.
- Fysiek verwijderen: Ongewenste records worden permanent uit de feitentabel verwijderd.
- Logisch verwijderen: Er wordt een nieuwe kolom aan de feitentabel toegevoegd, zoals ‘verwijderd’ van het type Bit (of) Boolean. Dit fungeert als een vlag om de verwijderde records weer te geven. U moet ervoor zorgen dat u de verwijderde records niet selecteert tijdens het opvragen van de feitentabelgegevens.
# 7) Volgorde voor updates en verwijderingen in een feitentabel
Als er gegevens moeten worden bijgewerkt, moeten de dimensietabellen eerst worden bijgewerkt, gevolgd door het bijwerken van de surrogaatsleutels in de opzoektabel, indien nodig, en daarna wordt de respectieve feitentabel bijgewerkt. Het verwijderen gebeurt in omgekeerde volgorde, omdat het verwijderen van alle ongewenste gegevens uit feitentabellen het gemakkelijk maakt om de gekoppelde ongewenste gegevens uit de dimensietabellen te verwijderen.
We moeten de bovenstaande volgorde in beide gevallen volgen, omdat dimensietabellen en feitentabellen de hele tijd referentiële integriteit behouden.
Soorten feiten
Op basis van het gedrag van feitentabellen worden ze gecategoriseerd als transactiefeitentabellen, momentopnamefeitentabellen en verzamelde momentopnamefeitentabellen. Al deze drie typen volgen verschillende functies met verschillende strategieën voor het laden van gegevens.
# 1) Transactiefeitentabellen
Zoals de naam aangeeft, slaan transactiefeitentabellen gegevens op transactieniveau op voor elke gebeurtenis die plaatsvindt. Dergelijke gegevens zijn gemakkelijk te analyseren op het niveau van de feitentabel zelf. Maar voor verdere analyse kunt u ook verwijzen naar de bijbehorende afmetingen.
Bijvoorbeeld, elke verkoop (of) aankoop die via een marketingwebsite plaatsvindt, moet in een transactiefeitentabel worden geladen.
Hieronder ziet u een voorbeeld van een transactiefeitentabel.
# 2) Periodieke feitentabellen met momentopnamen
Zoals de naam aangeeft, worden de gegevens in de periodieke momentopname feitentabel opgeslagen in de vorm van momentopnames (afbeeldingen) met periodieke intervallen, zoals voor elke dag, week, maand, kwartaal enz., Afhankelijk van de zakelijke behoeften.
Het is dus duidelijk dat dit de hele tijd een verzameling gegevens is. Daarom zijn momentopnamefeiten complexer in vergelijking met transactiefeitentabellen. Bijvoorbeeld, gegevens van alle prestatie-inkomstenrapporten kunnen worden opgeslagen in feitentabellen met momentopnamen voor gemakkelijke verwijzing.
Een voorbeeld van een periodieke feitentabel met momentopnamen wordt hieronder weergegeven.
# 3) Momentopnametabellen verzamelen
Door feitelijke tabellen met momentopnamen te verzamelen, kunt u gegevens in tabellen opslaan voor de gehele levensduur van een product. Dit werkt als een combinatie van de bovenstaande twee typen waarbij gegevens door elke gebeurtenis op elk moment als een momentopname kunnen worden ingevoegd.
In dit type worden extra datumkolommen en gegevens voor elke rij bijgewerkt met elke mijlpaal van dat product.
Een voorbeeld van een feitentabel voor accumulerende momentopnamen.
Naast de bovenstaande drie typen zijn hier nog een paar andere soorten feitentabellen:
# 4) Feiteloze feitentabellen: Een feit is een verzameling maatregelen, terwijl feit minder alleen gebeurtenissen (of) omstandigheden weergeeft die geen maatregelen bevatten. Een feitelijke feitentabel wordt voornamelijk gebruikt om een systeem te volgen. De gegevens in deze tabellen kunnen worden geanalyseerd en gebruikt voor rapportage.
Bijvoorbeeld, u kunt gegevens opzoeken van een werknemer die verlof heeft opgenomen en het soort verlof in een jaar, enz. Met al deze onduidelijke feitdetails in een feit, zal de tabel zeker de omvang van de feiten vergroten.
Een voorbeeld van een feitelijke feitentabel wordt hieronder weergegeven.
# 5) Conforme feitentabellen: Een geconformeerd feit is een feit waar op dezelfde manier naar verwezen kan worden bij elke datamart waaraan het gerelateerd is.
Specificaties van een feitentabel
Hieronder staan de specificaties van een feitentabel.
- Feit naam: Dit is een string die de functionaliteit van de feitentabel in het kort beschrijft.
- Bedrijfsproces: Gesprekken over het bedrijf moeten worden vervuld door die feitentabel.
- Vragen: Noemt een lijst met zakelijke vragen die door die feitentabel zullen worden beantwoord.
- Graan: Geeft het laagste detailniveau aan dat is gekoppeld aan die feitentabelgegevens.
- Dimensies: Maak een lijst van alle dimensietabellen die aan die feitentabel zijn gekoppeld.
- Maatregelen: De berekende waarden die zijn opgeslagen in de feitentabel.
- Laadfrequentie Vertegenwoordigt de tijdsintervallen om gegevens in de feitentabel te laden.
- Eerste rijen: Raadpleeg de eerste gegevens die voor het eerst in de feitentabel zijn ingevuld.
Voorbeeld van dimensionale gegevensmodellering
U kunt een idee krijgen van hoe dimensietabellen en feitentabellen kunnen worden ontworpen voor een systeem door te kijken naar het onderstaande dimensionale gegevensmodelleringdiagram voor verkopen en bestellingen.
Gevolgtrekking
Inmiddels zou u uitstekende kennis moeten hebben opgedaan over dimensionale datamodelleringstechnieken, hun voordelen, mythen, dimensietabellen, feitentabellen, samen met hun typen en processen.
Bekijk onze aanstaande tutorial voor meer informatie over datawarehouse-schema's !!
Bezoek hier om vanaf het begin te leren datawarehousing.
Aanbevolen literatuur
- Zelfstudie over datawarehousetesten met voorbeelden | ETL-testgids
- Voorbeelden van datamining: meest voorkomende toepassingen van datamining 2021
- Python DateTime-zelfstudie met voorbeelden
- Grondbeginselen van datawarehousing: een ultieme gids met voorbeelden
- Zelfstudie voor het testen van volumes: voorbeelden en tools voor het testen van volumes
- Top 10 van populaire datawarehouse-tools en testtechnologieën
- Datamining: proces, technieken en grote problemen bij gegevensanalyse
- Gegevensgestuurde tests uitvoeren in SoapUI Pro - SoapUI-zelfstudie # 14