Forskellen mellem stjerne og snefnug-skema

Datalagring er et system designet til at gemme og organisere data i centrale oplagringssteder inklusive data fra andre kilder. Det er et kernekoncept for forretningsinformation i relationelle databasemodeller, der anvender analytiske teknikker til at integrere forretningsdata i en central database.

Der er to almindelige arkitektoniske modeller, der bruges til datalagring:

  • Stjerneplan
  • Snowflake-skema

Begge er de almindelige flerdimensionelle databasemodeller, der bruges til at imødekomme behovene i store databaser til analyseformålene i rigtige datalager.

Vi præsenterer en objektiv sammenligning mellem de to for bedre at forstå, hvilken der er bedre end den anden.

Hvad er stjerneskema?

Det er den mest almindelige og bredt accepterede arkitektoniske model, der bruges til at udvikle datalager og datamarker, hvor dataene er organiseret i fakta og dimensioner. Det er den enkleste arkitektoniske model, hvor en faktabord bruges til at henvise til flere dimensionstabeller, der imiterer et stjernemønster.

Som navnet antyder, ligner diagrammet en stjerne med faktatabellen i midten og flere dimensionstabeller, der stråler ud fra det, hvilket skaber et stjerne-lignende mønster.

Det er også kendt som Star Join Schema, og det gemmer alle attributter af en dimension i en denormaliseret faktabord for hurtigt at navigere gennem store multidimensionelle datasæt, der tegner sig for hurtige forespørgsler for forespørgsler.

Hvad er Snowflake-skema?

Det er en udvidelse af stjerneskemaet med ekstra funktionaliteter. I modsætning til stjerneskema normaliseres dimensionstabellerne i snefnugsskema i flere relaterede tabeller.

Den arkitektoniske model repræsenterer et logisk arrangement af tabeller i et mange-til-en-forholdshierarki, hvor flere dimensionstabeller normaliseres til subdimensionstabeller, der ligner et snefnuglignende mønster, derav navnet.

Det er en mere kompleks version af stjerneskemaet med flere sammenføjninger mellem dimensionstabeller, der tegner sig for langsom behandlingstid for at hente data, hvilket betyder langsomme forespørgselstider. Det minimerer dataredundans, hvilket igen forbedrer forespørgselens ydeevne.

Forskel mellem Star og Snowflake-skema

Arkitektur af stjerne og snefnug-skema

I relationelle databaser er stjerneskema den enkleste arkitektoniske model, der bruges til at udvikle datavarehuse og multidimensionelle datamarkter. Som navnet antyder ligner modellen en stjerne med punkter, der stråler fra midten, hvilket betyder, at faktabordet er centrum og punkterne er dimensionstabellerne. Ligesom andre dimensionelle modeller består det af data i form af kendsgerninger og dimensioner. Snowflake-skema er derimod den mere komplekse arkitektoniske model, der henviser til en multidimensionel database med logisk arrangement af borde i form af en snefnug.

Dimensionstabel

Snowflake-skemaet ligner temmelig meget stjerneskemaet, medmindre det kan have mere end en dimensionstabeller, som yderligere normaliseres i flere relaterede tabeller, der benævnes underdimensionstabeller. Det repræsenterer flere niveauer af forhold, der forgrener sig i et snefnugmønster. Stjerneskema lagrer dog alle relaterede attributter af en dimension i en denormaliseret dimensionstabel, hvilket gør det let at forstå og håndtere enklere forespørgsler.

Forretningsmodel af stjerne- og snefnugsskema

En dimensionstabel kan ikke indeholde duplikerede rækker i relationelle databasemodeller for den enkle kendsgerning, at den kan skabe tvetydigheder ved hentning. Hver tabel skal have en kolonne eller en kombination af kolonner kaldet den primære nøgle, der identificerer alle tabelposter unikt. En fremmed nøgle er en kolonne eller en gruppe kolonner, der giver et link mellem to tabeller. I stjerneskema har hver dimensionstabel en primær nøgle, der er relateret til en fremmed nøgle i faktatabellen. Forretningshierarkiet i et snefnugsskema er repræsenteret ved en primær nøgle / fremmed nøgleforhold mellem dimensionstabeller.

Dataintegritet i stjerne- og snefnugsskema

Den vigtigste forskel mellem de to relationelle databasemodeller er normalisering. Dimensionstabellerne i stjerneskema er ikke normaliserede, hvilket betyder, at forretningsmodellen vil bruge relativt mere plads til at gemme dimensionstabeller, og mere plads betyder mere overflødige poster, som i sidste ende ville forårsage inkonsekvens. Snowflake-skema minimerer på den anden side dataredundans, fordi dimensionstabeller normaliseres, hvilket tegner sig for langt mindre redundante poster. Forretningshierarkiet og dens dimensioner bevares gennem referencemæssig integritet, hvilket betyder, at relationer kan opdateres uafhængigt i datalager.

Forespørgselsydelse

Stjerneskemaet har færre sammenføjninger mellem dimensionstabel og faktabord sammenlignet med snefnugsskemaet, der har flere sammenføjninger, der tegner sig for mindre forespørgselkompleksitet. Fordi dimensionerne i et stjerneskema er forbundet gennem en central faktatabel, har det klare sammenføjningsstier, hvilket betyder hurtige forespørgselstider, og hurtig responstid betyder bedre ydelse. Snowflake-skema har et højere antal forbindelser, så længere svar på forespørgsler på forespørgsler, hvilket resulterer i mere komplekse forespørgsler, som i sidste ende kompromitterer ydelsen.

Stjerneskema vs. snefnugsskema: Sammenligningstabel


Resumé af stjernevers Snowflake-skema

Begge er de mest almindelige og bredt vedtagne arkitektoniske modeller, der bruges til at udvikle databaselager og datamarkter. Imidlertid har hver forretningsmodel sin rimelige andel af fordele og ulemper. Mens stjerneskema er den enkleste flerdimensionelle model, der bruges til at organisere data i fakta og dimensioner, er det ideelt til at udvikle datamarkter, der involverer mindre komplekse forhold. Snowflake-skema er en logisk repræsentation af tabeller i en multidimensionel database, hvor dimensionerne er gemt i underdimensionstabeller. Den største forskel mellem de to er normalisering. Dimensionstabellerne i et snefnugsskema normaliseres fuldstændigt i flere opslagstabeller, mens dimensionstabellerne i et stjerneskema denormaliseres til et centralt faktabord.