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.

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.
Den arkitektoniske visning af SQL Server Analysis Services er baseret pรฅ en trelagsarkitektur, som bestรฅr af:
- 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.
- 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.
- 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.

