Analisi multidimensionale Lab. Sistemi Informativi Economico-Aziendali LSA Knowledge Data Sources...
-
Upload
edmondo-di-stefano -
Category
Documents
-
view
213 -
download
0
Transcript of Analisi multidimensionale Lab. Sistemi Informativi Economico-Aziendali LSA Knowledge Data Sources...
Lab. Sistemi Informativi Economico-Aziendali
Analisi multidimensionale
LSA
Knowledge
Data Sources
Warehouse
Consolidated
Data
Prepared Data
p(x) = 0.02
Data Mining Models
Data Consolidation
Selection and Preprocessing
Data Mining & OLAP Cubes
Interpretation and Evaluation
5 lezioni
2 lezioni
3 lezioni
4 lezioni OLAP
4 lezioni DM
Analisi OLAP(On-Line Analytical Processing)
LSA - Laboratorio di Sistemi Informativi Economico-Aziendali
Salvatore Ruggieri
Dipartimento di Informatica, Università di Pisa
Lab. Sistemi Informativi Economico-Aziendali
Analisi multidimensionale
Sorgente: OLAP Report
Lab. Sistemi Informativi Economico-Aziendali
Analisi multidimensionale
Datawarehouse, data marts, cubi
Data warehouse
OLAP Cubes
OLAP Cubes
Data mart: vista del dw di interesse ad un singolo processo di business
Data mart ordini, clienti, contabilità, risorse umane, finanza Organiz. : datamart come collezione di tabelle fatti e dimensioni
OLAP Cube: struttura di memorizzazione/visualizzazione dei fatti come celle di un ipercubo con un asse per ciascuna dimensione
Data mart ordini: cubi su acquisti, vendite e magazzino
Lab. Sistemi Informativi Economico-Aziendali
Analisi multidimensionale
Schema di un data mart: elementi
Un fatto è un evento di interesse (vendite, spedizioni, acquisti) Specificato da attributi dimensioni e misure
Una dimensione determina il contesto in cui è avvenuto il fatto fatto vendita: prodotto, negozio, cliente, tempo
La dimensione può essere organizzata in una gerarchia di livelli dimensione tempo: gerarchia giorno esatto, mese, anno
Ogni possibile contesto è detto membro della dimensione membri dim. tempo: 20 Feb. 2004, Febbraio 2004, 2004, ecc.
Dimensioni comuni a più cubi/data mart sono dette condivise o conformate
Una misura descrive quantitativamente il fatto fatto vendita: numero unità vendute, prezzo unitario, sconto
Tabella dei fatti: collezione di fatti, uno per ogni riga della tabella, con colonne per le dimensioni e per le misure dei fatti
Tabella di una dimensione: collezione dei membri della dimensione e delle loro relazioni gerarchiche
Lab. Sistemi Informativi Economico-Aziendali
Analisi multidimensionale
Star Schema
DateMonthYear
Date
CustIdCustNameCustCityCustCountry
Cust
Sales Fact Table
Date
Product
Store
Customer
unit_sales
dollar_sales
Yen_sales
Measurements
ProductNoProdNameProdDescCategoryQOH
Product
StoreIDCityStateCountryRegion
Store
Chiavi Esterne
Lab. Sistemi Informativi Economico-Aziendali
Analisi multidimensionale
Snowflake schema
DateMonth
Date
CustIdCustNameCustCityCustCountry
Cust
Sales Fact Table
Date
Product
Store
Customer
unit_sales
dollar_sales
Yen_sales
Measurements
ProductNoProdNameProdDescCategoryQOH
Product
MonthYear
MonthYear
Year
CityState
City
CountryRegion
CountryStateCountry
State
StoreIDCity
Store
Lab. Sistemi Informativi Economico-Aziendali
Analisi multidimensionale
Gerarchie e aggregati di misure
Nord Centro Sud
All
Milano Torino Firenze Roma Napoli Palermo
All
Zona
Città
Misura: numero di abitantiAggregato: SUMAggregato: AVG
2000 800 600 3000 1200 400
2800 1400 3600 1800 1600 800
8000 1333
Lab. Sistemi Informativi Economico-Aziendali
Analisi multidimensionale
Gerarchie: bilanciate
Nord Centro Sud
All
Milano Torino Firenze Roma Napoli Palermo
All
Zona
Città
CittàCittà ZonaZona
Milano Nord
Firenze Centro
Torino Nord
… …
Lab. Sistemi Informativi Economico-Aziendali
Analisi multidimensionale
Gerarchie: non bilanciate
Rossi Bianchi Neri
All
Tizio Caio Sempronio
All
Dirigenti
Impiegati
FiglioFiglio PadrePadre
Tizio Rossi
Neri NULL
Sempronio Bianchi
… …
Lab. Sistemi Informativi Economico-Aziendali
Analisi multidimensionale
Gerarchie: ragged
Dollari Euro
All
New York
Los Ang.
Paris Rome
All
Moneta
Città San Marino
Lab. Sistemi Informativi Economico-Aziendali
Analisi multidimensionale
Analysis Manager: editor di cubi
Lab. Sistemi Informativi Economico-Aziendali
Analisi multidimensionale
Modello di memorizzazioneROLAP (Relational OLAP):
utilizza le funzionalità di un’engine relazionale estesi in modo da permettere la materializzazione degli aggregati performance scalabilità
MOLAP (Multidimensional OLAP): array multidimensionale su disco/memoria
efficiente su dati di dimensioni ridotte problemi di performance su dati sparsi
HOLAP (Hybrid OLAP): trade-off tra le due soluzioni precedenti
fatti su tabella relazionale aggregazioni su array multidimensionale
Lab. Sistemi Informativi Economico-Aziendali
Analisi multidimensionale
Analysis Manager: elab. di cubi
Lab. Sistemi Informativi Economico-Aziendali
Analisi multidimensionale
Toscana
Navigazione
sum
Milk Bread … ... sum
Jan 96
… ...
sum
Feb 96
ProductStore
Time
OrangeRoma
PisaFirenze
All ProductsJanuary 96, Pisa.
Ogni dimensione contiene una gerarchia di valoriuna cella del cubo contiene valori aggregati (count, sum, max, etc.)
LazioAll
Lab. Sistemi Informativi Economico-Aziendali
Analisi multidimensionale
Navigazione di un cubo
prodotto
magazzino
tempo
Il manager regionale esamina la vendita dei prodotti in tutti i periodi relativamenteai propri mercati
Il manager di prodotto esamina la vendita di un prodotto in tutti i periodo e in tutti i mercati
Il manager finanziario esamina la vendita dei prodotti in tutti i mercati relativamente al periodo corrente e quello precedente
Il manager strategico si concentra su una categoria di prodotti, un’area regionale e un orizzonte temporale medio
Lab. Sistemi Informativi Economico-Aziendali
Analisi multidimensionale
Roll-up e drill-down
ProductStore
Time
All
Time
All
Time
ProductAll
All
AllAll
Drill-Down
Roll-up
Roll-up
Drill-Down
Drill-Down
Roll-up
Lab. Sistemi Informativi Economico-Aziendali
Analisi multidimensionale
Slice and Dice
ProductStore
Month
Slice
ProductStore
Month
Lab. Sistemi Informativi Economico-Aziendali
Analisi multidimensionale
Altre operazioni
Drill through: visualizza tutti i fatti relativi ad una cella del cubo Pivot: rotazione degli assi del cubo Drill across: collegamento ad altro cubo via dimensioni condivise
Prodotti FornitoriClienti
Tempo
Store
Vendite
Acquisti
Lab. Sistemi Informativi Economico-Aziendali
Analisi multidimensionale
Analysis Manager: browsing
Lab. Sistemi Informativi Economico-Aziendali
Analisi multidimensionale
Analysis Manager: misure calcolate
Lab. Sistemi Informativi Economico-Aziendali
Analisi multidimensionale
Analysis Manager: misure calcolate
Sintassi:
EXP ::= Numeric | ( Member, Numeric )Numeric ::= Measure | funzione_numeric(Parametri) | Numeric + Numeric | Numeric - Numeric
| Numeric / Numeric | Numeric * Numeric
Member ::= funzione_member(Parametri)
Semantica:
( Member, Numeric ) l’espressione Numeric è valutata sul membro Member
([Product].CurrentMember.Parent,[Measures].[Quantity]) è la misura Quantity valutata sul padre del membro corrente rispetto alla dimensione Product
(ParallelPeriod([Time].[Year], 1), [Measures].[Quantity] ) è la misura Quantity valutata nello stesso periodo dell’anno precedente
Lab. Sistemi Informativi Economico-Aziendali
Analisi multidimensionale
Accesso ai dati multidimensionali
API Microsoft OLE DB for OLAP, ADO.MD, ADO MD.NET
Linquaggio MDX (MultiDimensional Expressions) JOLAP
Java OLAP Interface, JSR-69
Formato di interscambio XML for Analysis www.xmla.org
Client di visualizzazione Excel Explorer Data Analyser DBMiner …
Lab. Sistemi Informativi Economico-Aziendali
Analisi multidimensionale
Excel
Lab. Sistemi Informativi Economico-Aziendali
Analisi multidimensionale
Data Analyser
Lab. Sistemi Informativi Economico-Aziendali
Analisi multidimensionale
DBMiner 2.0
Lab. Sistemi Informativi Economico-Aziendali
Analisi multidimensionale
Cubi e SQL: GROUP BY WITH CUBE
-- fatti selezionati dalla clausola WHERE-- e aggregati dalla clausola GROUP BY -- su tutte le possibili (2^3) combinazioni di prodotto,
dimensione e tempo
SELECT F.product_id, F.customer_id, F.time_id, SUM(F.store_sales*F.unit_sales)
FROM dbo.sales_fact_1997 AS F WHERE F.customer_id < 20 AND F.product_id < 200GROUP BY F.product_id, F.customer_id, F.time_id WITH CUBE
Lab. Sistemi Informativi Economico-Aziendali
Analisi multidimensionale
Cubi e SQL: GROUP BY WITH ROLLUP
-- fatti selezionati dalla clausola WHERE-- e aggregati dalla clausola GROUP BY -- su prodotto, dimensione e tempo-- su prodotto e dimensione-- su prodotto-- su tutti I dati
SELECT F.product_id, F.customer_id, F.time_id, SUM(F.store_sales*F.unit_sales)
FROM dbo.sales_fact_1997 AS F WHERE F.customer_id < 20 AND F.product_id < 200GROUP BY F.product_id, F.customer_id, F.time_id WITH
ROLLUP