OLAP
Traduzione e Integrazione
delle Lezioni a cura di Sandro Gallo
Home Ricerca in DataBase Strutturati
Mysql Internals and Berkerley
DB
I sistemi informatici permettono di aumentare la
produttività delle organizzazioni automatizzandone la
gestione operativa quotidiana. Questi dati — se
opportunamente accumulati e analizzati — possono essere
utilizzati per la pianificazione e il supporto alle decisioni.
Una corretta gestione dei dati storici può essere
occasione di un grande vantaggio competitivo.
I sistemi di supporto alle decisioni (DSS)
costituiscono la tecnologia che supporta la dirigenza aziendale
nel prendere decisioni tattico-strategiche in modo efficace e
veloce, mediante particolari tipologie di elaborazione (per
esempio OLAP). I dati su cui operano i DSS sono
quelli accumulati per i processi operativi e gestionali. In
generale possiamo dire che esistono due tipi di elaborazione, in
base al sistema di gestione usato:
- Nei Transaction Processing Systems abbiamo le
On-Line Transaction Processing (OLTP) che sono le
tradizionali elaborazioni di transazioni, che realizzano i
processi operativi dell’azienda-ente. Le
caratteristiche delle OLTP sono:
- Operazioni predefinite, brevi e relativamente semplici.
- Ogni operazione coinvolge “pochi” dati.
- Dati di dettaglio, aggiornati.
- Le proprietà “acide” (atomicità,
correttezza, isolamento, durabilità) delle transazioni
sono essenziali.
- Nei Decision Support Systems abbiamo le On-Line
Analytical Processing (OLAP) che sono elaborazioni di
operazioni per il supporto alle decisioni. Le
caratteristiche delle OLAP sono:
- Operazioni complesse e casuali.
- Ogni operazione può coinvolgere molti dati.
- Dati aggregati, storici, anche non attualissimi.
- Le proprietà “acide” non sono rilevanti,
perché le operazioni sono di sola lettura.
I requisiti richiesti dai due tipi di applicazioni sono quindi
contrastanti, tanto che possono danneggiarsi a vicenda. Quindi
è importante separare gli ambienti delle due
applicazioni:

Un DataWareHouse è una base di dati utilizzata
principalmente per il supporto alle decisioni direzionali.
Le sue caratteristiche sono:
- E' integrata (aziendale e non dipartimentale).
I dati di interesse provengono da tutte le sorgenti informative
— ciascun dato proviene da una o più di esse. Il
data warehouse rappresenta i dati in modo univoco, riconciliando
le eterogeneità dalle diverse rappresentazioni:
- nomi
- struttura
- codifica
- rappresentazione multipla
- Con dati storici — con un ampio orizzonte temporale, e
indicazione (di solito) di elementi di tempo.
Le basi di dati operazionali mantengono il valore corrente delle
informazioni, quindi L’orizzonte temporale di interesse
è dell’ordine dei pochi mesi. Nel data warehouse
è di interesse l’evoluzione storica delle
informazioni, quindi l’orizzonte temporale di interesse
è dell’ordine degli anni
- Con dati usualmente aggregati — per effettuare stime e
valutazioni.
Nelle attività di analisi dei dati per il supporto alle
decisioni non interessa “chi” ma
“quanti”, non interessa un dato ma la somma, la
media, il minimo e il massimo, ... di un insieme di dati. Le
operazioni di aggregazione sono quindi fondamentali nel
warehousing e nella costruzione/mantenimento di un data
warehouse.
- Fuori linea — i dati sono aggiornati
periodicamente.
In una base di dati operazionale, i dati vengono acceduti,
inseriti, modificati, cancellati pochi record alla volta. Nel
data warehouse, abbiamo operazioni di accesso e interrogazione
— “diurne”, e operazioni di caricamento e
aggiornamento dei dati — “notturne”, che
riguardano milioni di record.
- E' mantenuta separatamente dalle basi di dati operazionali. I
motivi per questo sono diversi:
- Non esiste un’unica base di dati operazionale che
contiene tutti i dati di interesse.
- La base di dati deve essere integrata.
- Non è tecnicamente possibile fare l’integrazione
in linea.
- I dati di interesse sarebbero comunque diversi.
- Devono essere mantenuti dati storici e aggregati.
- L’analisi dei dati richiede per i dati organizzazioni
speciali e metodi di accesso specifici.
- Degrado generale delle prestazioni senza la separazione.
Una generica architettura per un datawarehouse è la
seguente:

Una differenza importante tra base di dati e
datawarehouse, come mostra il disegno, è che per
recuperare i dati il data warehouse usa sorgenti esterne, ad
esempio dati forniti da società specializzate in analisi.
I sistemi operazionali dell’organizzazione sono sistemi
transazionali (OLTP) orientati alla gestione dei processi
operazionali, non mantengono dati storici, ogni sistema gestisce
uno o più soggetti (ad esempio, prodotti o clienti), sono
spesso sistemi “legacy”.
Di contro, le attività necessarie ad alimentare un data
warehouse sono estrazione, cioè accesso ai dati
nelle sorgenti; pulizia, cioè rilevazione e
correzione di errori e inconsistenze nei dati estratti;
trasformazione, cioè trasformazione di formato,
correlazione con oggetti in sorgenti diverse; caricamento,
con introduzione di informazioni temporali e generazione dei dati
aggregati. Usa i dati provenienti da più basi di dati.
I metadati sono informazioni mantenute a supporto delle
attività di recupero delle informazioni. Si possono
definire come "Dati sui dati" e hanno il compito di:
- Dare descrizioni logiche e fisiche dei dati (nelle sorgenti e
nel DW).
- Fare corrispondenze e trasformazioni.
- Quantificare i dati.
Spesso sono non dichiarativi e immersi nei programmi.
Il Data Warehouse Server è il sistema dedicato alla
gestione warehouse. Può basarsi su diverse tecnologie:
- ROLAP: i dati sono memorizzati in DBMS relazionali
(schemi a stella)
- MOLAP: i dati sono memorizzati in forma
multidimensionale tramite speciali strutture dati tipicamente
proprietarie
Gli strumenti di analisi consentono di effettuare analisi dei
dati utilizzando il Data Warehouse server e offrono interfacce
amichevoli per presentare, in forma adeguata e facilmente
comprensibile, i risultati delle analisi.
Esistono due principali tipologie di analisi (e quindi di
strumenti): Analisi multidimensionale e Data mining.
I Data Mart sono un sottoinsieme logico dell’intero data
warehouse. Un data mart è la restrizione del data
warehouse a un singolo problema di analisi. Un data warehouse
è l’unione di tutti i suoi data mart. Un data mart
rappresenta un progetto fattibile (la realizzazione diretta di un
data warehouse completo non è invece solitamente
fattibile). Nella rappresentazione multidimensionale,
l’analisi dei dati avviene rappresentando i dati in forma
multidimensionale. I concetti rilevanti sono: fatto, un concetto
sul quale centrare l’analisi; misura, una proprietà
atomica di un fatto; dimensione, che descrive una prospettiva
lungo la quale effettuare l’analisi.

Le operazioni sui dati multidimensionali sono:
- Slice & dice — seleziona e proietta.
- Roll up (o drill up)— aggrega i dati
- Drill down — disaggrega i dati
- (Pivot — re-orienta il cubo)
I dati vengono infine visualizzati in veste grafica, in maniera
da essere facilmente comprensibili. Si fa uso di: tabelle,
istogrammi, grafici, torte, superfici 3D, bolle, …
Nella implementazione MOLAP i dati sono memorizzati
direttamente in un formato dimensionale (proprietario). Le
gerarchie sui livelli sono codificate in indici di accesso alle
matrici. Nella implementazione ROLAP uno schema
dimensionale (schema a stella) è composto da :
- Una tabella principale, chiamata tabella fatti, che memorizza
i fatti e le sue misure ( le misure più comuni sono
numeriche, continue e additive)
- Due o più tabelle ausiliarie, chiamate tabelle
dimensione. Una tabella dimensione rappresenta una dimensione
rispetto alla quale è interessante analizzare i fatti;
memorizza i membri delle dimensioni ai vari livelli.Gli attributi
sono solitamente testuali, discreti e descrittivi.
Una tabella dimensione memorizza i membri di una dimensione: la
chiave primaria è semplice, gli altri campi memorizzano i
livelli della dimensione, ed è tipicamente denormalizzata.
La tabella fatti memorizza le misure (fatti) di un processo; la
chiave è composta da riferimenti alle chiavi di tabelle
dimensione, gli altri campi rappresentano le misure. Ed è
in BCNF. Un fatto è additivo se ha senso sommarlo rispetto
a ogni possibile combinazione delle dimensioni da cui dipende.
L’additività è una proprietà
importante, perché le applicazioni del data warehouse
devono solitamente combinare i fatti descritti da molti record di
una tabella fatti.
Le interrogazione assumono solitamente il seguente formato
standard:
SELECT D1.L1,.., Dn.Ln, Aggr1(F.M1),.., Aggrk(F.Ml) FROM
Fatti as F, Dimensione1 as D1, .., DimensioneN as Dn WHERE
Join-predicate(F,D1) and .. and Join-predicate(F,Dn) and
selection-predicate GROUP BY D1.L1, ..., Dn.Ln ORDER BY D1.L1,
..., Dn.Ln
Lo schema per la progettazione di un data warehouse è il
seguente:

Le informazioni in ingresso necessarie alla progettazione di un
data warehouse sono:
- Requisiti, cioè le esigenze aziendali di analisi.
- Descrizione delle basi di dati, con una documentazione
sufficiente per la loro comprensione.
- Descrizione di altre sorgenti informative: l’analisi
richiede spesso la correlazione con dati non di proprietà
dell’azienda ma comunque da essa accessibili, ad esempio
dati ISTAT o sull’andamento dei concorrenti.
L'analisi delle sorgenti informative comprende:
- Selezione delle sorgenti informative, cioè una
analisi preliminare del patrimonio informativo aziendale, la
correlazione del patrimonio informativo con i requisiti,
l'identificazione di priorità tra schemi.
- Traduzione in un modello di riferimento, che è
l'attività preliminare alla correlazione e
all’integrazione di schemi (si svolge meglio con
riferimento a schemi concettuali).
- Analisi delle sorgenti informative, cioè
l'identificazione di fatti (concetti su cui basare
l’analisi), misure (proprietà atomiche dei fatti) e
dimensioni (concetti su cui aggregare le misure).
Il reverse engineering è l’attività di
comprensione concettuale di uno schema di dati, a cui segue la
rappresentazione di uno schema relazionale in un modello
concettuale. Uno schema ER è più espressivo di uno
schema relazionale. Il reverse engineering di schemi relazionali
è svolto in modo semiautomatico dagli strumenti di
progettazione CASE. L’integrazione di sorgenti
informative è l’attività di fusione dei
dati rappresentati in più sorgenti in un’unica base
di dati globale che rappresenta l’intero patrimonio
informativo aziendale. L’approccio è orientato alla
identificazione, analisi e risoluzione di conflitti
terminologici, strutturali, di codifica. L’integrazione
delle sorgenti informative ha prodotto una descrizione globale
del patrimonio informativo aziendale.
Ora ci occupiamo della progettazione del data warehouse che
comprende tre fasi:
- Concettuale: completare la rappresentazione dei
concetti dimensionali necessari per l’analisi.
- Logica: identificare il miglior compromesso tra la
necessità di aggregare i dati e quella di
normalizzarli.
- Fisica: individuare la distribuzione dei dati e le
relative strutture di accesso.
Se il database è multidimensionale introduciamo elementi
dimensionali nella base di dati integrata. La nostra
attività sarà rivolta a:
- identificazione di fatti, misure e dimensioni,
- ristrutturazione dello schema concettuale,
- rappresentazione di fatti mediante entità,
- individuazione di nuove dimensioni,
- raffinamento dei livelli di ogni dimensione,
- derivazione di un grafo dimensionale,
- progettazione logica e fisica.
Home Ricerca in DataBase Strutturati
Mysql Internals and Berkerley
DB