In via propedeutica all'analisi dell'andamento aziendale, con o senza la creazione di un data warehouse, l'integrazione dei dati dispersi nella miriade di sorgenti, strutturate o no, che caratterizzano il classico panorama aziendale è un
must, ed Oracle 11g non si tira di certo indietro di fronte a questa sfida: l'offerta è costituita dal prodotto
Oracle Data Integrator, che fu
annunciato nel febbraio 2007.
Questo componente della famiglia
Fusion Middleware offre un'architettura di integrazione ad alte prestazioni che Oracle ha significativamente ribattezzato
E-LT: sempre di
Extract,
Load e
Trasform si tratta, ma la società di Ellison ha voluto prendere le distanze dal generico acronimo ETL.
E-LT, parte caratterizzante dell'offerta derivante dall'acquisizione di Sunopsis, è un server ottimizzato per l'integrazione delle sorgenti dati di una vasta gamma di vendor, che comprende, ad oggi, una quarantina di nomi (fra cui IBM, Microsoft, Netezza, Sybase, Teradata, Trillium), ed è in grado di operare sia in modalità real-time che in batch, supportando tutti e tre i paradigmi di integrazione: guidato dai dati, guidato dagli eventi e guidato dai servizi.
Uno dei più noti problemi dell'integrazione di dati è quello di mantenere un set di metadati, che descriva ogni sorgente, onde poter tenere d'occhio, sia l'origine dei dati, che la loro natura, che i cambiamenti sottostanti:
E-LT viene incontro a questa esigenza, permettendo di creare
mappe dei dati tramite tool di modellazione dichiarativi e librerie di codice
pre-pacchettizzate e
pluggabili a richiesta, i cosiddetti
Knowledge Module.
La differenza rispetto ai tradizionali server di ETL sta nel fatto che la fase di trasformazione dei dati, quella più onerosa dal punto di vista delle risorse computazionali e dell'occupazione di memoria, viene trasferita sul server target invece di richiedere un engine proprietario su un server separato, cambiando a tutti gli effetti l'ordine di esecuzione delle fasi: i dati vengono estratti dalla sorgente, caricati sul server target, e lì avviene la loro trasformazione, operando con il SQL nativo di Oracle e, come già ricordato, con l'ausilio di tool dichiarativi (che generano automaticamente il flusso di dati necessario) e moduli
predisponibili di codice. Chi conosce il vecchio DTS, o i nuovi
Integration Services, di SQL Server, può farsi un'idea di come lavorano i tool dichiarativi di
Oracle Data Integrator. L'insieme dei
Knowledge Module implementa invece il modo in cui opera il processo di integrazione.
I servizi di integrazione di
Oracle Data Integrator sono altresì
message-oriented, con servizi di
publish-and-subscribe basati su JMS e BPEL, offrono un'interfaccia basata su Web Service per l'uso in ambito SOA (che viene usata anche dal
Metadata Navigator, un browser
web-based di accesso alle informazioni), e forniscono un set di regole dichiarative, oltre ad uno strumento di verifica, per mantenere l'integrità dei dati. L'architettura prevede altresì un monitor delle operation, un
Topology Manager per definire l'infrastruttura fisica e logica, ed un
Security Manager per l'accesso basato su permessi e ruoli, oltre ad una serie di agenti che operano le attività di estrazione sulle macchine client.
Il prodotto è multipiattaforma e richiede una JVM 1.5; è ben descritto in una
presentazione in italiano di
Sergio de Rosa, ed esistono anche una
technical overview ed una
descrizione dell'architettura.