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: [Link] del data warehouse in un sistema relazionale [Link] del DB Multidimensionale [Link] 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