Please enable JavaScript.
Coggle requires JavaScript to display documents.
Data Warehouse: database operativo 1 - Coggle Diagram
Data Warehouse: database operativo 1
Database Operativi (OLTP)
I database operativi sono quelli utilizzati dalle applicazioni aziendali quotidiane (gestione clienti, ordini, vendite, magazzino, ecc.).
Caratteristiche principali
Supportano le applicazioni software: sono ottimizzati per registrare transazioni (ordini, pagamenti, aggiornamenti).
Hanno grandi repository ma progettati per operazioni veloci su pochi record.
Aggiornamento in tempo reale: i dati vengono aggiunti, modificati e cancellati continuamente.
Modello dati multidimensionale?→ In realtà i database operativi seguono un modello relazionale normalizzato, non multidimensionale.(Il multidimensionale è tipico dei data warehouse.)
Richiedono query complesse per analisi: per fare analisi servono JOIN costosi → prestazioni basse.
Schemi a stella / fiocco di neve: questi sono usati nei DW, non nei DB operativi.
Non contengono molti dati storici: mantengono solo ciò che serve all’applicazione.
Limite
Ottimi per la gestione operativa, pessimi per l’analisi:
troppi aggiornamenti
struttura molto normalizzata
dati sparsi in molte tabelle
difficoltà ad integrare altre fonti
Il Data Warehouse (DW)
Il DW è una base dati progettata esclusivamente per analisi e supporto alle decisioni.
definizione
Raccolta di dati:
integrati (dati provenienti da più sistemi)
Unisce dati provenienti da:
database operativi
fonti esterne (social, marketing, open data…)
Rende coerenti codici, nomi, formati.
non volatili (non si modificano, si aggiungono nel tempo)
Una volta caricati, i dati:
non vengono modificati
non vengono cancellati
si accodano nuovi dati nel tempo(per garantire coerenza storica)
variabili nel tempo (contiene dati storici e traccia l’evoluzione)
Conserva dati storici per anni → analisi delle tendenze.
orientati al soggetto (vendite, clienti, prodotti…)
Organizza i dati per argomenti di analisi, non per processi operativi.
Esempio: una tabella “Vendite” contiene tutto per analizzare le vendite, non per gestire ordini.
Progettazione di un database (processo)
1. Specifica dei requisiti
Si raccolgono le esigenze degli utenti e si decide cosa deve contenere il database.
2. Progettazione concettuale
Si disegnano entità, relazioni e attributi usando il modello ER (Entity-Relationship).
3. Progettazione logica
Si trasformano entità e relazioni in tabelle relazionali:
definizione di chiavi primarie/esterne
normalizzazione
4. Progettazione fisica
Implementazione pratica nel DBMS (MySQL, PostgreSQL, Oracle, …):
indici
partizionamenti
ottimizzazioni
Risultato finale
Un database relazionale, altamente normalizzato per:
garantire coerenza
supportare aggiornamenti rapidi
→ Ma questo porta a molte tabelle e quindi query analitiche lente.
Perché allora serve un Data Warehouse
Perché il DW:
è denormalizzato (schema a stella / fiocco di neve) → query molto veloci
contiene dati integrati da tutti i sistemi
conserva storico
supporta analisi OLAP (aggregazioni, drill-down, pivot...)
è progettato per decision making, non per operazioni