SSAS Tutorial: Hvad er SSAS Cube, Architecture & typer

โšก Smart opsummering

SSAS, SQL Server Analysis Services, er Microsoft's OLAP-server og analysemotor til opdeling af store datamรฆngder pรฅ tvรฆrs af dimensioner. Den leveres i to varianter, flerdimensionel og tabelformet, og forbruger aggregerede data fra et RDBMS til at bygge kuber og modeller til hurtig analyse.

  • ๐ŸงŠ Kerneformรฅl: SSAS er en flerdimensionel OLAP-server, der giver dig mulighed for at opdele store datamรฆngder.
  • ๐Ÿ›๏ธ Tre niveauer: Et RDBMS fรธder SSAS-kuber, og klienter lรฆser dem via dashboards og portaler.
  • ๐Ÿงฑ Nรธglebegreber: Datakilde, kube, dimension, niveau, faktatabel, mรฅling og skema definerer modellen.
  • ๐Ÿ”€ To varianter: Flerdimensionel bruger kuber og MDX; tabelform bruger relaterede tabeller og DAX.
  • ๐Ÿ’พ Lagringstilstande: SSAS understรธtter MOLAP-, HOLAP- og ROLAP-arkitekturer.
  • โš–๏ธ Tabulรฆr vs. flerdimensionel: Tabelform er enklere og lagres i hukommelsen; flerdimensionel form passer til et stjerneskema.
  • ๐Ÿ” Virksomhedspasform: Sikkerhed pรฅ rรฆkkeniveau, partitionering og OLAP gรธr den til en BI-motor for virksomheder.

SSAS-vejledning SQL Server-analysetjeneste

Hvad er SSAS?

SQL Server Analysis Services (SSAS) er en flerdimensionel OLAP-server samt en analysemotor, der giver dig mulighed for at opdele store mรฆngder data. Det er en del af Microsoft SQL Server og hjรฆlper med at udfรธre analyser ved hjรฆlp af forskellige dimensioner. Den har to varianter, flerdimensionel og tabelform. SSAS' fulde form er SQL Server Analysis Services.

Architecture af SSAS

Fรธrst vil vi lรฆre om SSAS-arkitekturen.

SSAS tre-lags arkitektur

Den arkitektoniske visning af SQL Server Analysis Services er baseret pรฅ en trelagsarkitektur, som bestรฅr af:

  1. RDBMS: data fra forskellige kilder som Excel, database og tekst kan trรฆkkes ved hjรฆlp af en ETL vรฆrktรธj ind i RDBMS.
  2. SSAS: Aggregerede data fra RDBMS sendes til SSAS-kuber ved hjรฆlp af analysetjenesteprojekter. SSAS-kuberne opretter en analysedatabase, som derefter kan bruges til mange formรฅl.
  3. Klient: Klienter kan tilgรฅ data ved hjรฆlp af dashboards, scorecards, portaler osv.

Historien om SSAS

Nu vil vi gennemgรฅ SSAS' historie:

  • MSOLAP-funktionen blev fรธrst inkluderet i SQL Server 7.0. Denne teknologi blev senere kรธbt fra et israelsk firma kaldet Panorama.
  • Den blev hurtigt en af โ€‹โ€‹de mest anvendte OLAP-motorer, fordi den var inkluderet som en del af SQL Server.
  • SSAS blev fuldstรฆndig renoveret med udgivelsen af MS SQL Server 2005.
  • Den version tilbรธd ogsรฅ en funktion til "underkuber" med Scope-sรฆtningen, hvilket รธgede funktionaliteten af โ€‹โ€‹SSAS-kuber.
  • SSAS 2008 R2- og 2012-versionerne fokuserede primรฆrt pรฅ forespรธrgselsydeevne og skalerbarhed.
  • In Microsoft I Excel 2010 er der kommet et tilfรธjelsesprogram kaldet PowerPivot, som bruger en lokal instans af Analysis Services med den nye xVelocity-motor til at รธge forespรธrgselsydelsen.

Vigtig SSAS-terminologi

Nu vil vi lรฆre nogle vigtige SSAS-terminologier:

  • Datakilde
  • Datakildevisning
  • Cube
  • Dimensionstabel
  • Dimension
  • Niveau
  • Faktatabel
  • Mรฅle
  • Planlรฆg

Datakilde

En datakilde er en slags forbindelsesstreng. Den etablerer en forbindelse mellem analysedatabasen og RDBMS.

Datakildevisning

En datakildevisning er en logisk model af databasen.

Cube

En kube er en grundlรฆggende lagringsenhed. Det er en samling af data, der er blevet aggregeret for at give forespรธrgsler mulighed for hurtigt at returnere data.

MOLAP

MOLAP er lavet af en datakube, der indeholder mรฅlinger og dimensioner, inklusive alle de medlemmer, der kan vรฆre i en hierarkisk relation. Det er et specifikt sรฆt regler, der hjรฆlper med at bestemme, hvordan bestemte celler beregnes i en sparse-kube, og hvordan mรฅlevรฆrdier akkumuleres inden for disse hierarkier.

Dimensionstabel

  • En dimensionstabel indeholder dimensionerne af en fakta.
  • De er forbundet med faktatabellen ved hjรฆlp af en fremmednรธgle.
  • Dimensionstabeller er de-normaliserede tabeller.
  • Dimensioner tilbyder karakteristika ved fakta gennem deres attributter.
  • Der er ingen fastsat grรฆnse for et givet antal dimensioner.
  • En dimension indeholder en eller flere hierarkiske relationer.

Dimension

En dimension giver konteksten omkring en forretningsproceshรฆndelse. Kort sagt giver den hvem, hvad og hvor en kendsgerning. I salgsprocessen vil dimensionerne for kendsgerningen "salgsnummer" vรฆre:

  • Hvem โ€“ kundernes navne.
  • Hvor โ€“ placering.
  • Hvad โ€“ produktnavn.

Med andre ord er en dimension et vindue til at se informationen i fakta.

Niveau

Hver type opsummering, der kan hentes fra en enkelt dimension, kaldes et niveau.

Faktatabel

En faktatabel er den vigtigste tabel i en dimensionsmodel. Den indeholder mรฅlinger eller fakta og en fremmed nรธgle til dimensionstabellen, for eksempel lรธnoperationer.

Mรฅle

Hver faktatabel indeholder en eller flere mรฅlinger, der skal analyseres. For eksempel kan en tabel med information om bogsalg mรฅle fortjenesten eller tabet for antallet af solgte bรธger.

Planlรฆg

database Et skema for et databasesystem er dets struktur beskrevet i et formelt sprog, understรธttet af databasestyringssystemet. Udtrykket "skema" refererer til organiseringen af โ€‹โ€‹data som en skabelon for, hvordan databasen er konstrueret.

Typer af modeller i SSAS

Nu vil vi lรฆre om typerne af modeller i SSAS.

Multidimensionel datamodel

flerdimensionel datamodel bestรฅr af en datakube. Det er en gruppe af operationer, der giver dig mulighed for at forespรธrge pรฅ vรฆrdien af โ€‹โ€‹celler ved at bruge kube- og dimensionsmedlemmer som koordinater. Den definerer regler, der bestemmer, hvordan mรฅlevรฆrdier akkumuleres inden for hierarkier, eller hvordan specifikke vรฆrdier beregnes i en sparse-kube.

Tabelmodellering

Tabelmodellering organiserer data i relaterede tabeller. Tabellerne er ikke angivet som "dimensioner" eller "fakta", og udviklingstiden er kortere med tabelmodellering, fordi alle relaterede tabeller kan tjene begge roller.

Tabelformet vs. flerdimensionel model

Driftsparametre tabular Flerdimensionel
Hukommelse Cache i hukommelsen Filbaseret lagring
Struktur Lรธs struktur Stiv struktur
Bedste funktion Data behรธver ikke at flytte fra kilden Bedst nรฅr data sรฆttes ind i et stjerneskema
Modeltype Relationel model Dimensionel model
Forespรธrgselssprog DAX MDX
Kompleksitet Simpelt Complex
Stรธrrelse Mindre Stรธrre

Nรธglefunktioner ved SSAS

De vรฆsentlige funktioner i SSAS er:

  • Den tilbyder bagudkompatibilitet pรฅ API-niveau.
  • Du kan bruge OLE DB til OLAP til klientadgangs-API'en og MDX som forespรธrgselssprog.
  • SSAS hjรฆlper dig med at bygge MOLAP-, HOLAP- og ROLAP-arkitekturer.
  • Det giver dig mulighed for at arbejde i klient-server-tilstand eller offline-tilstand.
  • Du kan bruge SSAS-vรฆrktรธjet med forskellige guider og designere.
  • Oprettelse og styring af datamodeller er fleksibel.
  • Du kan tilpasse applikationer med omfattende support.
  • Den tilbyder en dynamisk struktur, ad hoc-rapporter, delte metadata og sikkerhedsfunktioner.

SSAS vs. PowerPivot

Parameter SSAS powerpivot
Hvad er det SSAS Multidimensional er "Corporate BI" Microsoft PowerPivot er "selvbetjenings-BI"
Deployment Implementeret til SSAS Implementeret til SharePoint
Bruges til Visual Studio-projekt Excel
Stรธrrelse Begrรฆnset til hukommelse Kapacitet begrรฆnset til 2 GB
Partition stรธtte Understรธtter partitionering Ingen skillevรฆgge
Forespรธrgselstype DirectQuery og Vertipaq Tillader kun Vertipaq-forespรธrgsler
Admin vรฆrktรธjer Serveradministrationsvรฆrktรธjer (f.eks. SSMS) Excel- og SharePoint-administrator
Sikkerhed Rรฆkkeniveau- og dynamisk sikkerhed Arbejdsbog fil sikkerhed

Fordele ved SSAS

Fordelene ved SSAS er:

  • Hjรฆlper dig med at undgรฅ ressourcekonflikt med kildesystemet.
  • Det er et ideelt vรฆrktรธj til numerisk analyse.
  • SSAS muliggรธr opdagelse af datamรธnstre, der mรฅske ikke er umiddelbart synlige, ved hjรฆlp af de datamining-funktioner, der er indbygget i produktet.
  • Det tilbyder et samlet og integreret overblik over alle dine forretningsdata til rapportering, KPI-scorecardanalyse og data mining.
  • SSAS tilbyder online analytisk behandling (OLAP) af data fra forskellige datakilder.
  • Det giver brugerne mulighed for at analysere data med en rรฆkke vรฆrktรธjer, herunder SSRS og Excel.

Ulemper ved at bruge SSAS

  • Nรฅr du har valgt en sti (tabelformet eller flerdimensionel), kan du ikke migrere til den anden version uden at starte forfra.
  • Du har ikke tilladelse til at flette data mellem tabelformede og flerdimensionelle kuber.
  • Tabelbaseret opsรฆtning kan vรฆre risikabel, hvis kravene รฆndres midtvejs i projektet.

Bedste praksis for brug af SSAS

  • Optimer design af kube- og mรฅlegruppe.
  • Definer nyttige aggregeringer.
  • Brug partitioneringsmetoden.
  • Skriv effektiv MDX.
  • Brug forespรธrgselsmotorens cache effektivt.
  • Skaler ud, nรฅr du ikke lรฆngere kan skalere op.

Ofte Stillede Spรธrgsmรฅl

Vรฆlg tabelform for enklere modeller i hukommelsen og hurtigere udvikling med DAX. Vรฆlg flerdimensionel for store stjerneskema-lagre, der krรฆver komplekse beregninger og MDX. Migrering mellem dem betyder at starte forfra.

MOLAP lagrer aggregater i en kube for hurtig lรฆsning, ROLAP efterlader data i den relationelle kilde, og HOLAP er en hybrid, der holder detaljer relationelle og aggregater i kuben.

DAX er formel- og forespรธrgselssproget for tabelmodeller og minder meget om Excel-formler. MDX er forespรธrgselssproget for flerdimensionelle kuber og fungerer med medlemmer, tupler og sรฆt.

AI kan foreslรฅ, hvilke mรฅlinger og dimensioner der skal modelleres, udarbejde DAX eller MDX ud fra et almindeligt spรธrgsmรฅl og afdรฆkke mรธnstre i kubedata, som en manuel gennemgang kan overse, sรฅsom uventede korrelationer.

En faktatabel indeholder de mรฅlbare tal og fremmednรธgler, mens en dimensionstabel indeholder de beskrivende attributter, der bruges til at filtrere og gruppere disse tal, f.eks. produkt, kunde eller dato.

Opsummer dette indlรฆg med: