You are on page 1of 33

I Sistemi a Supporto delle Decisioni

1 - INTRODUZIONE AI SISTEMI DSS

Introduzione
Storicamente i sistemi informativi aziendali si fondavano sullutilizzo di una singola base di dati sia per le attivit transazionali che per le attivit di analisi e pianificazione Negli ultimi anni lapproccio nella realizzazione dei sistemi informativi quello di realizzare sistemi diversi:
sistemi OLTP (On-Line Transaction Processing) dedicato alla gestione dei processi

transazionali
sistemi DSS (Decision Support System) dedicato alla gestione dei processi di analisi dei

dati

OLTP Singola base dati DSS

Sistemi di supporto alle decisioni (DSS)


Sistema in grado di fornire chiare informazioni agli utenti in modo che possano analizzare dettagliatamente una situazione e prendere decisioni sulle azioni da intraprendere
1. POLITICA: quali info memorizzare

5. ACCESSO: capacit di vedere, selezionare e manipolare i dati

PUNTI CHIAVE DSS

2. TRASFORMAZIONE: i dati vanno prima puliti e certificati

4. ANALISI: what if e complesse computazioni su grandi volumi di dati

3. MEMORIZZAZIONE: In modo da max flessibilit maneggevolezza e accessibilit

Sistemi OLTP vs Sistemi DSS


OLTP
Consistenza

DSS
Globale, certificazione dei dati caricati

Microscopica, tante piccole transazioni

Transazioni

Migliaia di transazioni al giorno, Una sola transazione al giorno ciascuna accede ad una piccola composta anche da milioni di porzione di dati record Fotografia istantanea di una organizzazione aziendale Mod. Entity Relation Gestisce versioni storiche dei dati Mod. Multidimensionale

Tempo Progetto DB

Architettura sistemi DSS

Data Integration: estrarre i dati dalle varie sorgenti OLTP, li trasforma e li organizza opportunamente.

Data Mart: database analitico progettato per soddisfare le esigenze di una specifica funzione aziendale.

Meta Dati: dati che forniscono informazioni sulle strutture dei dati e sulle rispettive relazioni esistenti allinterno di un singolo database o fra pi database.

Extraction, Transformation & Loading

Approcci: Top-Down Bottom-Up

Tipo di Meta Dati: Data integration metadata DSS metadata

Il ciclo di vita di un sistema DSS

Tecnologie

Pianificazione progetto

Selezione prodotti e installazione

Dati

Definizione Pianificazione progetto dei requisiti del business Modello multidimens. Progetto Fisico ETL Integrazione Manutenzione e crescita

Specifiche applicazioni utente

Sviluppo applicazioni utente

Applicazioni Utente Gestione del progetto

2 - IL MODELLO MULTIDIMENSIONALE

Nel modello multidimensionale le informazioni sono organizzate concettualmente in data-cube, composti da: categorie descrittive le dimensioni misure quantitative le celle

Cubo a due dimensioni

Cubo a tre dimensioni

Gli elementi del modello multidimensionale


Dimensioni: prospettive attraverso cui possibile analizzare gli aspetti dinteresse del business. Si compongono di una serie di ELEMENTI raggruppabili per classi di appartenenza dette ATTRIBUTI.

Attributi: variabili di classificazione o elementi descrittivi. Servono a definire il livello di aggregazione dei dati e impostare dei filtri sugli stessi.

Relazioni: permettono di stabilire che tipo di legame esiste fra gli elementi di attributi relativi ad una stessa dimensione.

Gli elementi del modello multidimensionale


Livello: Un particolare attributo che determina il livello di dettaglio dei dati allinterno di una dimensione. Livello mese

Livello anno

Gerarchie: sono un ordinamento logico di alcuni livelli allinterno di una stessa dimensione

Gli elementi del modello multidimensionale


Fatti: non sono altro che i dati oggetto di analisi di un business.

Tipicamente questi dati rappresentano le performance o i fattori chiave di un business. FATTI BASE e FATTI CALCOLATI.

Analisi multidimensionale

Roll-up & Drill-down


Permette di muoversi allinterno di una gerarchia scegliendo il livello di aggregazione, visualizzando dati maggiormente aggregati (roll-up) o maggiormente dettagliati (drill-down).

Analisi multidimensionale

Slice & Dice

Permette di visualizzare differentemente le medesime informazioni tagliando a fette e cubetti.

Analisi multidimensionale

Rotazione dei dati

Permette di ruotare molto velocemente la vista bidimensionale dellanalisi.

Progetto logico del database


Obiettivo: realizzare una corrispondenza biunivoca fra come le persone vedono i dati del loro business e come questi vengono memorizzati in un sistema informativo. Definizione di database multidimensionale: Un sistema software progettato espressamente per rendere la memorizzazione e il recupero di una grande mole di dati conveniente ed efficiente. Caratteristiche: Linguaggio dinterrogazione Accesso multiutente Calcoli multidimensionali La dimensione tempo Sparsit

Tipi di tabelle
Lookup Tables: contengono semplicemente lidentificatore di un elemento e la relativa descrizione, permettono di rappresentare attributi di una dimensione. Relationship Tables: contengono le chiavi di 2 o pi attributi, in modo da rappresentare le relazioni esistenti fra questi. Fact Tables: contengono i fatti del business e le chiavi degli attributi che determinano la loro dimensionalit

Star schema

Caratteristiche dello STAR SCHEMA: Pesantemente denormalizzato Grande ridondanza dei dati 1 sola lookup table per ogni dimensione Permette di ridurre il numero di join

Fissata la struttura della Fact table, esistono 3 differenti tipi di star schema derivanti da altrettante diverse strutture di Lookup tables.

Star Schema
STAR SCHEMA (TYPE 1) Le lookup tables contengono solamente gli identificatori dei vari attributi della dimensione. Se si vogliono visualizzare in un report pi descrizioni della stessa dimensione bisogna utilizzare self join. STAR SCHEMA (TYPE 2) I singoli attributi sono rappresentati attraverso le loro descrizioni. Supero problema di self join Occorre utilizzare campi di testo per qualificare i livelli superiori attraverso un livello inferiore.

Star Schema

STAR SCHEMA (TYPE 3) La soluzione a entrambi i problemi precedenti deriva dalla combinazione delle caratteristiche dello schema 1 e dello schema 2.

Pro: 1. Basso numero di tabelle. 2. Alta comprensibilit dello schema. 3. Semplice generazione delle query SQL.

Contro: 1. Impossibilit di rappresentare le relazioni molti-a-molti. 2. Necessit di cambiare la struttura delle tabelle di lookup al variare degli attributi e/o dei livelli allinterno di una dimensione.

Snowflake Schema

Caratteristiche dello SNOWFLAKE SCHEMA: Maggiore normalizzazione Bassa ridondanza nei dati 1 Looktable per ogni attributo della dimensione

Lookup Table: contiene PK, una descrizione e FK per rappresentare le relazioni esistenti tra i vari livelli

Fact Table: contiene sempre dati appartenenti allo stesso livello di aggregazione. La chiave composta dalle singole chiavi dei livelli delle diverse dimensioni

Snowflake Schema
SNOWFLAKE SCHEMA (TYPE 1) Le lookup tables contengono , solamente la FK del livello immediatamente superiore. SNOWFLAKE SCHEMA (TYPE 2) Lookup tables ottenute denormalizzando gli identificatori dei livelli superiori. SNOWFLAKE SCHEMA (TYPE 3) Le lookup tables ottenute denormalizzando anche le descrizioni.

Contiene al massimo le risorse di memorizzazione. grande numero di join.

Richiede maggiore spazio di memorizzazione Riduce il numero di join.

Richiede il maggior spazio di memorizzazione Elimina totalmente le join.

Snowflake Schema

VALUTAZIONI FINALI
Pro: 1. Alta flessibilit e scalabilit 2. Supporto delle relazioni molti-a-molti. 3. Fact table contenenti dati omogenei

Contro: 1. Alto numero di tabelle. 2. Schema pi complicato e meno leggibile 3. Difficolt di generazione delle istruzioni SQL.

Ottimizzazione di un Data Warehouse

Principi per massimizzare le performance: Pre-aggregazione dei dati Creazione di varie fact table (SUMMARY TABLE) contenenti dati a differenti livelli di aggregazione

Svantaggio: Maggior utilizzo dello spazio su disco dovuto alla ridondanza introdotta.

Ottimizzazione di un Data Warehouse


Indicizzazione e chiavi numeriche Per velocizzare le operazioni di join raccomandato lutilizzo delle chiavi numeriche. Creare accuratamente gli indici per aumentare le prestazioni in lettura causa rallentamento nel processo di aggregazione. Partizionamento Suddivide le tabelle troppo grandi secondo determinate regole
Pro: 1) Tempo risposta query migliorato. 2) Operazioni di backup e recovery incrementale accelerate 3) Tempo richiesto per caricare i dati in tabelle indicizzate diminuisce. Contro: 1) Maggior numero di operazioni di join e union. 2) Maggior difficolt nella generazione delle query SQL.

3 - ARCHITETTURE OLAP

Architettura ROLAP
Sistema di memorizzazione
DB RELAZIONALE DB MULTIDIM. CLIENT-FILES

Tipo motore OLAP

MOTORE RELAZIONALE MOTORE MULTIDIM. MOTORE CLIENT MULTIDIM.

Vantaggi 1. Supporta un gran volume di informazioni base. 2. Permette lutilizzo di thinclient e laccesso attraverso Internet

Svantaggio 1. Richiede tecniche ad hoc di progettazione del database. 2. Le performance sono altamente dipendenti dal tipo di schema utilizzato. 3. Non permette di effettuare complesse computazioni finanziarie.

Architettura MOLAP
Sistema di memorizzazione
DB RELAZIONALE DB MULTIDIM. CLIENT-FILES

Tipo motore OLAP

MOTORE RELAZIONALE MOTORE MULTIDIM. MOTORE CLIENT MULTIDIM.

Vantaggi: 1. Ottime performance sulle operazioni proprie dellanalisi multidimensionale. 2. Permette lutilizzo di thin-client e laccesso attraverso Internet. 3. Supporta analisi predefinite lungo la dimensione tempo. 4. I dati analitici sono memorizzati in una struttura persistente, riduzione dello stress del sistema per effettuare calcoli e aggregazioni a run-time. Svantaggi: 1. Limita le capacit di Drill-down. 2. Mancanza di standard fra i vari prodotti commerciali. 3. Costi di gestione e di sviluppo aggiuntivi, essendo una tecnologia specifica per lanalisi. 4. Non utilizzabile con grandi volumi di dati atomici (> 10 Gbyte).

Architettura DOLAP
Sistema di memorizzazione
DB RELAZIONALE DB MULTIDIM. CLIENT-FILES

Tipo motore OLAP

MOTORE RELAZIONALE MOTORE MULTIDIM. MOTORE CLIENT MULTIDIM.

Vantaggi 1) Semplice da installare e da gestire. 2) Economico da implementare e da mantenere. 3) Ogni utente pu crearsi semplicemente una propria vista dei dati. Svantaggi: 1) Analisi limitate ai soli dati importati. 2) Alto traffico di rete generato dallimportazione delle informazioni. 3) Impossibilit di accesso tramite internet. 4) Il volume dei dati che pu essere mantenuto sul desktop molto limitato. 5) Necessitano di un client potente, non possibile usare thin-client.

Architettura HOLAP
Sistema di memorizzazione
DB RELAZIONALE DB MULTIDIM. CLIENT-FILES

Tipo motore OLAP

MOTORE RELAZIONALE MOTORE MULTIDIM. MOTORE CLIENT MULTIDIM.

Vantaggi 1. Supporta lanalisi multidimensionale su grandi volumi di dati 2. Nessuna limitazione sui drilldown per lanalisi in profondit.

Svantaggi: 1. Costoso da comprare, da implementare e da gestire. 2. Richiede tecniche ad hoc di progettazione del database.

ROLAP vs MOLAP
Vantaggi Memorizzazione dati sparsi Scalabilit SQL avanzato Struttura dei dati intuitiva Accesso ai dati efficiente Densit di memorizzazione per dati compatti Svantaggi

ROLAP

Meno intuitivo Accesso ai dati pi lento

MOLAP

Cattiva gestione dati sparsi Mancanza di una base di ricerca

Conclusioni
Principi su cui si base larchitettura HOLAP: 1.Costruzione del data warehouse in un sistema relazionale 2.Utilizzo del DB Multidimensionale 3.Integrazione automatizzata dei due sistemi

Obiettivo: utilizzare al meglio i componenti caratteristici dei due sistemi, utilizzando un DB relazionale per gestire grandi moli di dati e mitigare i problemi di sparsit. Il DB multidimensionale viene utilizzato per la sua grande efficienza nel gestire le informazioni aggregate e le computazioni multidimensionali.

Grazie per lattenzione