Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
www.devleap.it
Chi siamo
www.DevLeap.it Un gruppo di 5 persone con tanta voglia di
Studiare a fondo le tecnologie
Capire il behind the scenes Implementare soluzioni reali
www.devleap.it
Agenda
Modellazione di un DataWarehouse
Data Warehouse e Data Mart Componenti di un modello di Data Warehouse
www.devleap.it
Data Warehouse
Magazzino di dati a livello di impresa Insieme di strumenti per convertire un vasto insieme di dati in informazioni utilizzabili dallutente Obiettivi:
Possibilit di accedere a tutti i dati dellimpresa,
centralizzati in un solo database Coerenza e consolidamento dei dati Velocit nellaccesso alle informazioni Supporto per lanalisi dei dati
www.devleap.it
Data Mart
Magazzino di dati a livello dipartimentale E un segmento di un Data Warehouse E fisicamente realizzato come un Data Warehouse, ma con una finalit pi ristretta:
I dati coprono solo alcune aree aziendali
(ad es. vendite) Minori costi di realizzazione Risultati pi vicini nel tempo
www.devleap.it
www.devleap.it
Data Mining
www.devleap.it
Report
Report che analizzano i dati con una certa profondit storica Possono richiedere tempi di elaborazione elevati se i dati vanno aggregati Spesso ottenibili con soluzioni OLAP (minore tempo di elaborazione)
www.devleap.it
Cosa OLAP
OLAP: On Line Analytical Processing una tecnologia di Business Intelligence Sinonimo di termini usati in precedenza:
DSS: Decision Support System EIS: Executive Information System
www.devleap.it
Data Mining
Tecniche per aiutare gli utenti ad estrarre informazioni utili da grandi database Lutente finale non deve essere un esperto di statistica Utilizzato per generare ipotesi
www.devleap.it
time variant
www.devleap.it
www.devleap.it
www.devleap.it
Raccogliere informazioni
Spesso le informazioni necessarie sono gi raccolte e presentate in qualche report Chiedere ai decision-maker di compilare tabelle excel con le informazioni che vorrebbero avere
www.devleap.it
Chiamate al customer-service
Interventi di assistenza Produzione
www.devleap.it
Individuare le modalit di accesso periodico alle fonti dati per alimentare il Data Warehouse
www.devleap.it
Consolidare i dati
Decidere le trasformazioni da applicare ai dati per eliminare le differenze di:
valuta
notazione metrica fiscali
www.devleap.it
Base storica
Prima che il Data Warehouse diventi operativo, probabile che esistano delle operazioni una-tantum per creare una base storica iniziale Le trasformazioni iniziali possono differire da quelle periodiche di un sistema in produzione:
mole di dati da trasferire aggiornamento completo vs. incrementale
www.devleap.it
Data Warehouse
Clients
Query Data
www.devleap.it
Da OLTP a OLAP
Passando da un sistema transazionale ad un sistema di analisi, cambiano le caratteristiche di:
normalizzazione prestazioni su query e modifica dei dati
profondit storica
complessit delle query dettaglio degli eventi rilevati
www.devleap.it
Database OLTP
Caratteristiche di un database per un ambiente operativo:
Normalizzazione completa
Alto numero di tabelle e di associazioni Dati memorizzati al minimo livello di granularit
www.devleap.it
Database OLAP
Caratteristiche di un database per un ambiente analitico:
Entit denormalizzate
Disegno del database pi semplice (meno
tabelle e meno associazioni) per una comprensione pi facile da parte dellutente I dati memorizzati possono essere aggregati (riassuntivi) Le interrogazioni richiedono poche join Ottimizzato per la consultazione, per lutente read-only
www.devleap.it
Snowflake Schema
Un database OLAP pu essere realizzato sfruttando un generico database relazionale, ma esistono soluzioni specifiche diverse (OLAP Server)
www.devleap.it
Componenti di un modello DW
Tabella delle Dimensioni
Comuni
Dimensioni
Misure
Fatturato
Fatti
Tempo
www.devleap.it
Componenti di un modello DW
Tabella dei fatti
Contiene misure numeriche che descrivono un evento di business, come una vendita o una transazione bancaria
Fatto
Una riga nella tabella dei fatti; contiene uno o pi valori numerici che misurano un evento
Misura
Una colonna numerica della tabella dei fatti
Dimensione
Una entit di business che descrive il quando, chi, dove, come di un fatto (tempo, prodotto, cliente, ...) www.devleap.it
Star Schema
Lo Star Schema la modellizzazione pi semplice ed efficace dei componenti di un data warehouse Ogni tabella dei fatti associata ad N tabelle dimensionali Relazioni gerarchiche allinterno di una dimensione (per es. anno/mese/giorno) vengono mantenute in una sola tabella dimensionale
www.devleap.it
Star Schema
Employee_Dim
EmployeeKey EmployeeID
. . .
Time_Dim
TimeKey TheDate
Sales_Fact
Dimensional Keys TimeKey TimeKey EmployeeKey ProductKey CustomerKey ShipperKey RequiredDate
Product_Dim
ProductKey ProductID Multipart Key
. . .
. . .
Shipper_Dim
ShipperKey ShipperID
. . .
Measures
Customer_Dim
CustomerKey CustomerID
. . .
. . .
www.devleap.it
Star Schema
La tabella dei fatti pu contenere misure che si riferiscono a livelli di dettaglio differenti, in funzione della dimensione La tabella dei fatti pu contenere lo stesso dato pi volte (a livello di riepilogo giornaliero, mensile ed annuale)
www.devleap.it
Snowflake Schema
Primary Dimension Table
Sales_Fact
TimeKey EmployeeKey ProductKey CustomerKey ShipperKey RequiredDate
Product_Dim
ProductKey Product Name Product Size Product Brand ID
. . .
Product_Brand_Id
Product Brand Product Category ID
Product_Category_Id
Product Category Product Category ID
www.devleap.it
Star Comprensibilit del modello Numero di tabelle Complessit query Prestazioni query Easier Less Simpler Quicker
www.devleap.it
dettaglio
www.devleap.it
Definire le dimensioni
Definire caratteristiche delle dimensioni Identificare gerarchie Definire dimensioni convenzionali Condividere le dimensioni tra i Data Mart Definire altri tipi di dimensioni
www.devleap.it
abbreviazioni Creare colonne utili per i livelli di aggregazione Evitare valori mancanti o NULL Minimizzare il numero di righe che cambia nel tempo
www.devleap.it
Gerarchia Separata
Localit Negozio Continente Continente Paese Paese Regione Regione Citt Citt Negozio Negozio 01
www.devleap.it
individuali
Sales
Purchasing
www.devleap.it
www.devleap.it
lunghezza variabile Strano per nella tabella dei fatti avere campi cos, a meno che non siano degenerate dimension
Creare indici
www.devleap.it
Creare Database
Usare opzioni CREATE DATABASE
SIZE
MAXSIZE
FILEGROWTH
www.devleap.it
Creare tabelle
Creare una tabella Specificare NULL o NOT NULL
Quasi sempre NOT NULL
Valutare uso di NULL per misure con Analysis
Services
www.devleap.it
Creare constraints
Usare PRIMARY KEY
Non consente valori duplicati
www.devleap.it
time_dim_key
www.devleap.it
Creare indici
Creazione indici per data warehouse
Definire chiave primaria in tabelle dimensioni
Con Analysis Services si pu evitare multipart key Valutare uso di chiave surrogata Definire indici per ogni foreign key nella tabella dei fatti Valutare prestazioni se i dati si leggono una volta sola per alimentare i cubi di Analysis Services
Conclusioni
Il Data Warehouse un mezzo, non un fine
Facilmente interrogabile dallutente
www.devleap.it
Altre Informazioni
Dove posso ottenere maggiori informazioni
http://www.microsoft.com/sql
http://www.microsoft.com/sql/evaluation/bi
http://msdn.microsoft.com
Developer resources
Microsoft Developer Network http://www.devleap.it http://www.sqljunkies.com
www.devleap.it