Lezione 9
• Microsoft Analysis Services:
Principi e Funzionalità
MS Analysis Services (OLAP Server)
• E’ l’implementazione Microsoft di OLAP Server
• Offre buone prestazione per realtà aziendali
medie/grandi
• E’ integrato con MS SQL Server e si presenta come
un tool di servizi aggiuntivi del DBMS Server
• Utilizza un modello dati multi-dimensionale per
ottimizzare l’accesso ai dati mediante client OLAP
• Il sistema software sottostante viene riferito come
Analysis Server
Architettura di Analysis Server
Server
Client
Custom
Applications
Analysys
Manager
DSO
Client
Application
Client
Application
ADO MD
Source data
Relational
Database
ROLAP data
HOLAP
Cube
Data Storage
MOLAP
OLE DB
Analysis
Server
PivotTable
Service
Installazione di Visual Studio 2008/1
•Si utilizza per creare data cube OLAP tramite i progetti di Analysis Service
•Montare l’immagine ISO
•Selezionare Install Visual Studio 2008
Installazione di Visual Studio 2008/2
• Selezionare “Installazione Full”
Installazione di Visual Studio 2008/3
• Installazione completata
Configurazione Progetto
Microsoft Analysis Services
• File  New  Project  Analysis Services Projects
Visual Studio Analysis Services Project/1
• E’ progetto di Visual Studio che offre un tool grafico
user-friendly ed integra diversi editor specializzati
utili per progettare in modo completo un data cube
OLAP, tra cui:
• Cube Editor;
• Dimension Editor.
Visual Studio Analysis Services Project/2
Connessione ad Analysis Services da SQL
Server Management Studio
Permette di visualizzare le sorgenti Analysis Services “attive”
(cioè corrispondenti ai progetti Analysis Services realizzati)
Principi di Progettazione
di Data Cube OLAP
• Modellare la Realtà osservata in termini di Misure,
Dimensioni, Gerarchie
• Le Misure rappresentano i parametri di interesse e,
solitamente, sono dati numerici che possono essere
facilmente totalizzati e storicizzati
• Le Dimensioni rappresentano gli attributi rispetto ai
quali le Misure vengono prodotte. Es.: quale è stata la
Vendita totale del prodotto Pane nel mese di
Dicembre 2003 nella zona Provincia di Cosenza?
• Le Gerarchie vengono definite sulle Dimensioni
Best Practices
1. Selezionare il Processo Aziendale di interesse
2. Dichiarare la Grana
3. Identificare i Fatti
4. Scegliere le Dimensioni
ma soprattutto avere un modello concettuale a
supporto della progettazione:
Dimensional Fact Model
Dimensional Fact Model
Consente di modellare a livello concettuale lo schema
multi-dimensionale del data cube OLAP
category
brand
product
street
Sales
money
quantity
store
city
region
country
day
month
week
year
Modello Multi-Dimensionale dei Dati
•
Offre una visione chiara e intuitiva sulla
tecnologia OLAP:
S
W
Prodotto
N
Succo
Cola
Latte
Crema
Dentifricio
Sapone
Detersivo
1 2 3 4 5 6 7
Fatto: Vendite (importo)
Dimensioni: Prodotto, Regione, Tempo
Percorsi gerarchici di sintesi
Prodotto
Industria
Regione
Paese
Tempo
Anno
Categoria
Regione
Trimestre
Prodotto
Città
Mese
Settimana
Mese
Ufficio
Giorno
AdventureWorks
• L’esempio utilizzato è il database AdventureWorks sul quale
sono definiti una serie di data cube OLAP
• AdventureWorks è reperibile all’indirizzo:
http://msftdbprodsamples.codeplex.com
• Include il database AdventureWorks DW, già ottimizzato per
l’analisi OLAP ed un insieme di progetti VS Analysis Services
con data cube già implementati
•Al termine dell’installazione del database i progetti VS già
creati saranno memorizzati nel path:
C:\Program Files\Microsoft SQL
Server\100\Tools\Samples\AdventureWorks 2008R2 Analysis
Services Project\
Progettare un Data Cube OLAP con VS
Analysis Services Project
Passi per la creazione di un progetto VS Analysis
Services:
1. Aggiungere una Data Source
2. Definire le Views
3. Definire dimensioni e gerarchie
4. Definire le misure e creare il data cube OLAP
Aggiungere una Data Source/1
Dal Menu Solution Explorer di VS Project  Data
Source  New Data Source
Aggiungere una Data Source/2
Impostare il provider e l’origine dati
Aggiungere una View/1
•La tabella dei Fatti dall’origine dei dati di interesse e
le tabelle che coinvolgono le Dimensioni
appartengono alla View
• Esistono due modelli solitamente utilizzati per la
creazione di un data cube: modello a stella (star
schema) e modello a fiocco di neve (snowflake
schema)
Star Schema
Date
Product
Date
Month
Year
ProductNo
ProdName
ProdDesc
Category
QOH
Sales Fact Table
Date
Product
Store
StoreID
City
State
Country
Region
Store
Customer
unit_sales
dollar_sales
Cust
CustId
CustName
CustCity
CustCountry
Yen_sales
Measurements
Un’unica tabella delle dimensioni
Snowflake Schema
Year
Year
Product
Month
Month
Year
Date
Sales Fact Table
Date
Month
Date
Product
Store
City
City
State
State
Country
Country
Region
StoreID
City
State
Country
ProductNo
ProdName
ProdDesc
Category
QOH
Store
Cust
Customer
unit_sales
dollar_sales
CustId
CustName
CustCity
CustCountry
Yen_sales
Measurements
Più tabelle delle dimensioni correlate
Aggiungere una View/2
Dal Menu Solution Explorer di VS Project  Data
Source Views  New Data Source View
Aggiungere una View/3
Esempio di selezione della View:
Snowflake Schema della View Creata
Dimension Wizard/1
• Quando si progettano le dimensioni di un datacube OLAP si
possono utilizzare le dimensioni esistenti nel modello multidimensionale selezionato oppure creare nuove dimensioni
• Il wizard Dimension Wizard (dal Menu Solution Explorer di
Vs Project  Dimension  New Dimension) consente di
creare agevolmente una nuova dimensione
• Le Dimensioni Temporali sono di particolare interesse perché
offrono un “naturale” schema di aggregazione multi-livello di
dati: Anno, Mese, Settimana, Giorno, …
• Sulle Dimensioni si possono definire Gerarchie di Livelli
Dimension Wizard/2
Selezionare una tabella esistente:
Dimension Wizard/3
Creare la Dimensione “Customer” e scegliere la tabella
DimCustomer:
Dimension Wizard/4
Scegliere le tabelle dalla vista aventi un vincolo
relazionale con la tabella DimCustomer
Dimension Wizard/5
Scegliere gli attributi. Il tool mostra tutti gli attributi disponibili
(anche delle tabelle correlate scelte) e che saranno poi usati per
definire gerarchie
Editing di Dimensioni/1
Accedere alla Dimensione Customer creata:
Editing di Dimensioni/2
Creare una gerarchia trascinando nell’ordine desiderato gli attributi dimensionali
visualizzati nel panel di sinistra della sezione “Hierarchies” visualizzata nel
panel centrale
Dimensioni del Running
Example
Customer : Livelli { English Country Region Name,
State Province Name, City }
Time: Livelli {Calendar Year, Calendar Semester, English
Month Name}
Product: Livelli {English Product Category Name,
English Product Subcategory Name, English Product
Name}
Promotion:Livelli {English Promotion Category, English
Promotion Name, Discount Pct}
Modalità di Memorizzazione ed Elaborazione
di Data Cube OLAP
• Le modalità di Memorizzazioni possibili sono:
• OLAP Multi-dimensionale (MOLAP);
• OLAP Relazionale (ROLAP);
• OLAP Ibrido (HOLAP).
• MS Analysis Services rende disponible il tool
Configura Archiviazione per definire memorizzazione
ed elaborazione del datacube OLAP
• Memorizzazione ed Elaborazione sono parametri di
progetto critici
Creare un Data Cube OLAP/1
• Dal Menu Solution Explorer di VS Project  Cubes 
New Cubes
Creare un Data Cube OLAP/2
• Scegliere di usare le tabelle esistenti:
Creare un Data Cube OLAP/3
• Selezionare la tabella da cui estrarre le Misure, ovvero
la tabella dei fatti:
Creare un Data Cube OLAP/4
• Scegliere di utilizzare la Misura “Sales Amount”:
Creare un Data Cube OLAP/5
• Selezionare tutte le Dimensioni già create:
Creare un Data Cube OLAP/6
Cliccare su Finish per completare la creazione del data
cube:
Deployment su VS Analysis Project
Menu “Debug”  “Start Debugging” effettua il deployment del
progetto su MS Analysis Server
Processare Data Cube OLAP
Menu “Solution Explorer”  Cubes  “Process” effettua il
processing del data cube
Navigazione di Data Cube OLAP/1
Menu “Solution Explorer”  Cubes  attivare il data
cube creato:
Navigazione di Data Cube OLAP/2
Il tool mostra una serie di tab relativi al data cube,
utilizzabili per definire query multi-dimensionali e
analisi sofisticate su dati aggregati
Navigazione di Data Cube OLAP/3
L’ultimo tab a destra “Browser” consente di navigare il
data cube mediante una tabella Pivot e di visualizzare i
risultati aggregati di interesse
Navigazione di Data Cube OLAP/4
Esempio di navigazione con le dimensioni Customer e
Product