Data Warehousing - Architettura
In questo capitolo, discuteremo il framework di analisi aziendale per la progettazione e l'architettura di un data warehouse.
Framework di analisi aziendale
L'analista aziendale ottiene le informazioni dai data warehouse per misurare le prestazioni e apportare modifiche critiche al fine di conquistare altri imprenditori sul mercato. Avere un data warehouse offre i seguenti vantaggi:
Poiché un data warehouse può raccogliere informazioni in modo rapido ed efficiente, può migliorare la produttività aziendale.
Un data warehouse ci fornisce una visione coerente dei clienti e degli articoli, quindi ci aiuta a gestire le relazioni con i clienti.
Un data warehouse aiuta anche a ridurre i costi monitorando le tendenze, i modelli su un lungo periodo in modo coerente e affidabile.
Per progettare un data warehouse efficace ed efficiente, dobbiamo comprendere e analizzare le esigenze aziendali e costruire un file business analysis framework. Ogni persona ha punti di vista diversi riguardo alla progettazione di un data warehouse. Queste visualizzazioni sono le seguenti:
The top-down view - Questa visualizzazione consente la selezione delle informazioni rilevanti necessarie per un data warehouse.
The data source view - Questa visualizzazione presenta le informazioni acquisite, archiviate e gestite dal sistema operativo.
The data warehouse view- Questa visualizzazione include le tabelle dei fatti e le tabelle delle dimensioni. Rappresenta le informazioni archiviate all'interno del data warehouse.
The business query view - È la visione dei dati dal punto di vista dell'utente finale.
Architettura del data warehouse a tre livelli
Generalmente un data warehouse adotta un'architettura a tre livelli. Di seguito sono riportati i tre livelli dell'architettura del data warehouse.
Bottom Tier- Il livello inferiore dell'architettura è il server del database del data warehouse. È il sistema di database relazionale. Usiamo gli strumenti e le utilità di back-end per inserire i dati nel livello inferiore. Questi strumenti e utilità di back-end eseguono le funzioni di estrazione, pulizia, caricamento e aggiornamento.
Middle Tier - Nel livello intermedio, abbiamo il server OLAP che può essere implementato in uno dei seguenti modi.
Da Relational OLAP (ROLAP), che è un sistema di gestione di database relazionali esteso. Il ROLAP mappa le operazioni su dati multidimensionali su operazioni relazionali standard.
Dal modello Multidimensional OLAP (MOLAP), che implementa direttamente i dati e le operazioni multidimensionali.
Top-Tier- Questo livello è il livello del client front-end. Questo livello contiene gli strumenti di query e gli strumenti di reporting, gli strumenti di analisi e gli strumenti di data mining.
Il diagramma seguente illustra l'architettura a tre livelli del data warehouse:
Modelli di data warehouse
Dal punto di vista dell'architettura del data warehouse, abbiamo i seguenti modelli di data warehouse:
- Magazzino virtuale
- Data mart
- Magazzino aziendale
Magazzino virtuale
La visualizzazione su un data warehouse operativo è nota come magazzino virtuale. È facile costruire un magazzino virtuale. La creazione di un magazzino virtuale richiede capacità in eccesso sui server di database operativi.
Data Mart
Il data mart contiene un sottoinsieme di dati a livello di organizzazione. Questo sottoinsieme di dati è prezioso per gruppi specifici di un'organizzazione.
In altre parole, possiamo affermare che i data mart contengono dati specifici per un particolare gruppo. Ad esempio, il data mart di marketing può contenere dati relativi ad articoli, clienti e vendite. I data mart sono limitati ai soggetti.
Punti da ricordare sui data mart -
Per implementare i data mart vengono utilizzati server basati su Windows o su Unix / Linux. Sono implementati su server a basso costo.
I cicli di data mart di implementazione vengono misurati in brevi periodi di tempo, ovvero in settimane anziché in mesi o anni.
Il ciclo di vita di un data mart può essere complesso nel lungo periodo, se la sua pianificazione e progettazione non sono a livello di organizzazione.
I data mart sono di piccole dimensioni.
I data mart sono personalizzati per reparto.
L'origine di un data mart è un data warehouse strutturato a livello di reparto.
I data mart sono flessibili.
Magazzino aziendale
Un magazzino aziendale raccoglie tutte le informazioni e gli argomenti che coprono un'intera organizzazione
Ci fornisce l'integrazione dei dati a livello aziendale.
I dati sono integrati da sistemi operativi e fornitori di informazioni esterni.
Queste informazioni possono variare da pochi gigabyte a centinaia di gigabyte, terabyte o oltre.
Load Manager
Questo componente esegue le operazioni richieste per estrarre e caricare il processo.
La dimensione e la complessità del gestore del carico varia tra le soluzioni specifiche da un data warehouse all'altro.
Architettura Load Manager
Il load manager svolge le seguenti funzioni:
Estrai i dati dal sistema di origine.
Carica veloce i dati estratti nell'archivio dati temporaneo.
Eseguire semplici trasformazioni in una struttura simile a quella nel data warehouse.
Estrai dati dall'origine
I dati vengono estratti dai database operativi o dai fornitori di informazioni esterni. I gateway sono i programmi applicativi utilizzati per estrarre i dati. È supportato dal DBMS sottostante e consente al programma client di generare SQL da eseguire su un server. Open Database Connection (ODBC), Java Database Connection (JDBC), sono esempi di gateway.
Caricamento veloce
Per ridurre al minimo la finestra di carico totale, i dati devono essere caricati nel magazzino nel più breve tempo possibile.
Le trasformazioni influiscono sulla velocità di elaborazione dei dati.
È più efficace caricare i dati nel database relazionale prima di applicare trasformazioni e controlli.
La tecnologia gateway si rivela inadatta, poiché tendono a non essere performanti quando sono coinvolti grandi volumi di dati.
Trasformazioni semplici
Durante il caricamento potrebbe essere necessario eseguire semplici trasformazioni. Dopo che questo è stato completato, siamo in grado di eseguire i controlli complessi. Supponiamo che stiamo caricando la transazione di vendita EPOS di cui abbiamo bisogno per eseguire i seguenti controlli:
- Elimina tutte le colonne che non sono necessarie all'interno del magazzino.
- Converti tutti i valori nei tipi di dati richiesti.
Responsabile del magazzino
Un responsabile del magazzino è responsabile del processo di gestione del magazzino. È costituito da software di sistema di terze parti, programmi C e script della shell.
Le dimensioni e la complessità dei responsabili del magazzino variano tra le soluzioni specifiche.
Architettura del responsabile del magazzino
Un responsabile del magazzino include quanto segue:
- Il processo di controllo
- Stored procedure o C con SQL
- Strumento di backup / ripristino
- Script SQL
Operazioni eseguite da Warehouse Manager
Un responsabile del magazzino analizza i dati per eseguire controlli di coerenza e integrità referenziale.
Crea indici, viste aziendali, viste delle partizioni rispetto ai dati di base.
Genera nuove aggregazioni e aggiorna le aggregazioni esistenti. Genera normalizzazioni.
Trasforma e unisce i dati di origine nel data warehouse pubblicato.
Eseguire il backup dei dati nel data warehouse.
Archivia i dati che hanno raggiunto la fine della loro vita catturata.
Note - Un responsabile del magazzino analizza anche i profili delle query per determinare l'indice e le aggregazioni sono appropriate.
Query Manager
Il gestore delle query è responsabile di indirizzare le query alle tabelle appropriate.
Indirizzando le query alle tabelle appropriate, è possibile aumentare la velocità di query e la generazione di risposte.
Il gestore delle query è responsabile della pianificazione dell'esecuzione delle query poste dall'utente.
Architettura di Query Manager
Lo screenshot seguente mostra l'architettura di un gestore di query. Include quanto segue:
- Reindirizzamento delle query tramite lo strumento C o RDBMS
- Procedura di archiviazione
- Strumento di gestione delle query
- Pianificazione delle query tramite lo strumento C o RDBMS
- Pianificazione delle query tramite software di terze parti
Informazioni dettagliate
Le informazioni dettagliate non vengono conservate online, ma vengono aggregate al livello di dettaglio successivo e quindi archiviate su nastro. La parte delle informazioni dettagliate del data warehouse conserva le informazioni dettagliate nello schema starflake. Le informazioni dettagliate vengono caricate nel data warehouse per integrare i dati aggregati.
Il diagramma seguente mostra un'impressione visiva di dove sono memorizzate le informazioni dettagliate e come vengono utilizzate.
Note - Se le informazioni dettagliate vengono conservate offline per ridurre al minimo lo spazio di archiviazione su disco, dobbiamo assicurarci che i dati siano stati estratti, puliti e trasformati nello schema Starflake prima di essere archiviati.
Informazioni di riepilogo
Le informazioni di riepilogo sono una parte del data warehouse che archivia le aggregazioni predefinite. Queste aggregazioni vengono generate dal responsabile del magazzino. Le informazioni di riepilogo devono essere trattate come transitorie. Cambia in movimento per rispondere ai mutevoli profili di query.
I punti da notare sulle informazioni di riepilogo sono i seguenti:
Le informazioni di riepilogo velocizzano le prestazioni delle query comuni.
Aumenta il costo operativo.
Deve essere aggiornato ogni volta che vengono caricati nuovi dati nel data warehouse.
Potrebbe non essere stato eseguito il backup, poiché può essere generato fresco dalle informazioni dettagliate.