210 likes | 371 Views
Sorgenti di dati. Siamo in grado di accedere in modo uniforme a: File di testo CSV FLV ARFF File XML ROW ELEMENTS RDBMS ODBC JDBC OLE DB. Interpretation and Evaluation. Data Mining & OLAP Cubes. Selection and Preprocessing. Data Consolidation. p(x) = 0.02. Warehouse.
E N D
Lab. Sistemi Informativi Economico-Aziendali Sorgenti di dati • Siamo in grado di accedere in modo uniforme a: • File di testo • CSV • FLV • ARFF • File XML • ROW • ELEMENTS • RDBMS • ODBC • JDBC • OLE DB
Lab. Sistemi Informativi Economico-Aziendali Interpretation and Evaluation Data Mining & OLAP Cubes Selection and Preprocessing Data Consolidation p(x) = 0.02 Warehouse Patterns & Models Prepared Data Consolidated Data Knowledge Data Sources LSA 4 lezioni OLAP 4 lezioni DM 3 lezioni 2 lezioni 5 lezioni
Extract Transform and Load LSA - Laboratorio di Sistemi Informativi Economico-Aziendali Salvatore Ruggieri Dipartimento di Informatica, Università di Pisa
Lab. Sistemi Informativi Economico-Aziendali Cos’è l’ETL L’ETL (extract transform and load) è il processo di estrazione, trasformazione e consolidamento di dati da sorgenti eterogenee in un data warehouse. Supportato da tools grafici: • Microsoft SQL Server 2000 DTS (Data Transformation Services) • DB2 Warehouse Manager • Oracle Warehouse Builder • Business Objects Data Integrator
Lab. Sistemi Informativi Economico-Aziendali Operazioni ETL • Extract: accesso alle sorgenti di dati • Interne vs Esterne, Localizzazione e formato • Transform: trasformazione, pulizia e integrazione dei dati • Selezione • dati non necessari, duplicati, corrotti, fuori dai limiti (eta=999) • Valori mancanti • default, valor medio, filtro • Codifiche e normalizzazioni • dei dati al fine di risolvere differenti formati (CSV,ARFF), misure (metri, pollici), codici (codice fiscale o id per identificare clienti), rapp. tempo (formato data) • Splitting/merging • di attributi (attributo Indirizzo vs attributi Via+Citta+CAP+Stato)
Lab. Sistemi Informativi Economico-Aziendali Operazioni ETL • Chiavi surrogate • gen. chiavi indipendenti da quelle operazionali • Aggregazione di dati • Grana “ordini” (id, quantità, prezzo) a grana “cliente” (id, numero ordini, fatturato), differenti grane di tempo • Attributi derivati • calcolati a partire da quelli disponibili (margine di utile nelle vendite) • Qualità dei dati • Dati criptici, contraddittori, dummy values • Ruggeri Salvatore è (?) Ruggieri Salvatore • Dip. Informatica Corso Italia 40 è (?) Dip. Informatica Via Buonarroti 2 • 56100 è il CAP di tutti i clienti della Banca X • Join • di sorgenti di dati relazionate (prezzo di vendita e costo di acquisto) • Merge-Purge • fusione di dati da diverse sorgenti (anagrafica clienti, anagrafica fornitori, dati ISTAT)
Lab. Sistemi Informativi Economico-Aziendali Operazioni ETL • Load • Data staging area • Area con risultati intermedi, parzialmente o totalmente trasformati • Initial Load • caricamento iniziale dei dati sul datawarehouse • Incremental load • Append • aggiunta nuovi dati (nuovi clienti) • Merge distruttivo • aggiornamento dati esistenti con nuovi dati (nuovo indirizzo di cliente esistente) • Merge costruttivo • aggiunta nuovi dati marcando quelli esistenti (si mantiene vecchio e nuovo indirizzo di cliente esistente) • Full refresh • caricamento dati eliminando quelli esistenti
Lab. Sistemi Informativi Economico-Aziendali Processo ETL • Gestione del processo di ETL • Sequenza di operazioni • Scheduling • Metadati • Sorgenti, trasformazioni, caricamenti • Infrastruttura • HW, SW, Personale
Lab. Sistemi Informativi Economico-Aziendali DTS Designer Il DTS designer permette di creare, modificare e configurare un DTS package utilizzando un interfaccia grafica con funzionalità drag and drop.
Lab. Sistemi Informativi Economico-Aziendali DTS Designer Task toolbar Connection properties DTS workflow Data toolbar
Lab. Sistemi Informativi Economico-Aziendali DTS Package Un DTS Package specifica un insieme di connessioni, task e vincoli utili alla soluzione di un problema di ETL.
Lab. Sistemi Informativi Economico-Aziendali DTS Package
Lab. Sistemi Informativi Economico-Aziendali DTS connection È una connessione ad una sorgente e/o destinazione di dati. Esempi: • SQL Server, Access, Excel • File testo • Sorgenti ODBC • Sorgenti OLE DB
Lab. Sistemi Informativi Economico-Aziendali DTS task È una funzionalità eseguita in un singolo passo Esempi: • Esecuzione di una query SQL su una connessione • Trasformazione di dati da una connessione ad un’altra • Copia di oggetti da una connessione ad un’altra • Esecuzione di programmi esterni
Lab. Sistemi Informativi Economico-Aziendali DTS workflow È un insieme di vincoli di precedenza imposti sull’ordine di esecuzione dei singoli task Esempio • Vincoli di precedenza: un task può essere eseguito solo dopo che un altro è terminato con successo. • N.B.: I task non vincolati tra di loro possono essere eseguiti in qualsiasi ordine (anche in parallelo).
Lab. Sistemi Informativi Economico-Aziendali Esempi di DTS
Lab. Sistemi Informativi Economico-Aziendali Esercitazione: da db operazionale …
Lab. Sistemi Informativi Economico-Aziendali … ad uno snowflake schema
Lab. Sistemi Informativi Economico-Aziendali Esercitazione: • Sorgenti di dati: • ETLSource.mdb per tutte le tabelle tranne • Product e Suppliers, le quali sono accessibili via FTP come file di testo • ETLSource.mdb non specifica alcuna chiave primaria / esterna
Lab. Sistemi Informativi Economico-Aziendali Esercitazione (continued): • Successivamente ad una ristrutturazione aziendale: • il nuovo organigramma (tabella Employee) è disponibile via FTP come file di testo • include altro personale • non mantiene i precedenti codici EmployeeID • Aggiornare la tabella Employee ed, eventualmente, le altre tabelle necessarie