martedì 8 febbraio 2011

ETL


Extract, Transform, Load (ETL) si riferisce al processo di estrazione, trasformazione e caricamento dei dati in un sistema di sintesi (data warehouse, data mart). I dati vengono estratti da sistemi sorgenti quali database transazionali (OLTP),comuni file di testo o da altri sistemi informatici (ad esempio, sistemi ERP o CRM). Subiscono quindi un processo di trasformazione, che consiste ad esempio nel selezionare solo quelli che sono di interesse per il sistema:
  1. Normalizzare i dati (per esempio eliminando i duplicati)
  2. Tradurre dati codificati
  3. Derivare nuovi dati calcolati
  4. Eseguire accoppiamenti (join) tra dati recuperati da differenti tabelle
  5. Raggruppare i dati

Tale trasformazione ha lo scopo di consolidare i dati (cioè rendere omogenei dati provenienti da sorgenti diverse) e di fare in modo che siano più aderenti alla logica di business del sistema di analisi per cui viene sviluppato. Vengono infine memorizzati nelle tabelle del sistema di sintesi (load). Occorre prestare particolare attenzione alla granularità delle informazioni da memorizzare nella struttura a valle. Queste infatti, non solo devono essere aggregate in modo da non avere un dettaglio eccessivo (cosa che potrebbe portare ad un decadimento delle prestazioni delle interrogazioni effettuate sul sistema), ma devono anche mantenere una granularità che consenta di effettuare le necessarie analisi sui dati.

Lo scopo principale di un’applicazione ETL (Estrazione, Trasformazione e Caricamento) è rendere disponibili i dati raccolti in azienda, provenienti dalle fonti più disparate, ai soggetti incaricati di assumere le decisioni, nella forma e secondo le tempistiche più idonee a supportare il processo decisionale. Il problema da risolvere è quello di integrare informazioni provenienti dalle fonti più disparate (sistemi ERP, mainframe, database relazionali e file di applicativi) e di muoverli tra i diversi ambienti presenti in azienda o, eventualmente, all’esterno di essa consentendo di indirizzare le scelte del management. I software di ETL permettono, infatti, di leggere i dati dalla loro fonte, ripulirli e formattarli in modo uniforme, e poi caricarli nel repository di destinazione per l'uso.

Gli ETL tuttavia, essendo strumenti "dedicati", forniscono risultati tangibili in termini di documentazione e di velocità di sviluppo, per contro necessitano di un gruppo di lavoro specializzato in questo "linguaggio" e quindi, in caso di turn over o licenziamento, la necessità di gestire anticipatamente la presenza in azienda di opportuni back-up con i relativi costi.


Nessun commento:

Posta un commento