Che cosa è e come funziona il processo di ETL (Estrazione, Trasformazione, Caricamento)

Che cosa è e come funziona il processo di ETL (Estrazione, Trasformazione, Caricamento)

Definito il disegno del data warehouse (DWH), deve essere realizzato l’ETL dei dati. Come specificato anche in letteratura, l’ETL è un processo che può essere suddiviso in sotto-processi, ovvero:

  1. Estrazione: è la prima fase di tale processo, grazie alla quale i dati vengo estratti da una sorgente o da differenti fonti. Esistono due tipologie di estrazione: statica, che viene effettuata quando il data warehouse deve essere popolato per la prima volta, a differenza dell’estrazione incrementale, usata per l’aggiornamento periodico del data warehouse, che cattura solamente i cambiamenti avvenuti dall’ultima estrazione;
  2. Trasformazione: in questa fase i dati vengono manipolati; tipici esempi di trasformazioni sono l’eliminazione dei valori nulli, che potrebbero portare a risultati errati durante le analisi, la concatenazione di valori, come il nome dell’utente con il suo cognome, oppure la gestione delle chiavi esterne, riguardante la loro generazione e il lookup;
  3. Caricamento: in questa fase i dati vengono caricati nel data warehouse. Esistono due differenti tipologie, ovvero si parla di caricamento in modalità batch, in cui i dati vengono integralmente riscritti sostituendo i precedenti, o in modalità incrementale periodica grazie alla quale si rilevano e inseriscono nel data warehouse solo i cambiamenti avvenuti a partire dall’ultimo caricamento.

Che cosa è e come funziona il processo di ETL (Estrazione, Trasformazione, Caricamento)

Pentaho Data Integration

Per realizzare le fasi del processo di ETL la suite di Pentaho fornisce lo strumento denominato Pentaho Data Integration.

I concetti chiave di tale strumento sono due:

  1. Trasformazione: processo atomico che realizza una singola fase dell’etl. è composta da differenti step, ognuno dei quali è una singola operazione. Una caratteristica della trasformazione è che ogni step per essere attivato non necessita della terminazione dello step precedente; infatti si attiva non appena quest’ultimo inizia a produrre degli output. Il lavoro dei differenti step è quindi asincrono. I vari step sono collegati tra loro attraverso dei connettori denominati hop.
  2. Job: può essere costituito da una o più trasformazioni. Generalmente vengono utilizzati per identificare il flusso di lavoro, ovvero quale è l’ordine delle trasformazioni che devono essere eseguite in sequenza.

Pentaho Data Integration è formato da vari componenti, tra i quali Spoon, lo strumento grafico che permette di creare job e trasformazioni, producendo come output finale dei file XML. Prevede una serie di step predefiniti già presenti al suo interno, organizzati per categorie in base alle loro funzionalità, ma è possibile anche creare degli step personalizzati utilizzando il linguaggio Java, dando allo sviluppatore la possibilità di personalizzare job e trasformazioni.

Pubblicato da Vito Lavecchia

Lavecchia Vito Ingegnere Informatico (Politecnico di Bari) Email: [email protected] Sito Web: www.vitolavecchia.altervista.org

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *