Follow Us on Twitter

Introductie Oracle Data Integrator

Gepubliceerd in

Mei 2008 - In dit Whitebook laten we u kennismaken met Oracle Data Integrator, afgekort ODI. Na de overname van Sunopsis in oktober 2006 beschikt Oracle over deze ETL tool. Dit artikel laat zien hoe Oracle dit product plaatst, welke functionaliteiten het product biedt en wat de toegevoegde waarde is ten opzichte van de andere ETL tool van Oracle, OWB (Oracle Warehouse Builder).

Inleiding

Het integreren van data uit verschillende informatiesystemen speelt bij kennisintensieve organisaties een steeds grotere rol. Niet alleen bij het ontwerpen van een datawarehouse, maar ook tijdens de implementatie van een nieuw informatiesysteem kan het noodzakelijk zijn om data uit verschillende systemen bij elkaar te brengen. Dit mechanisme wordt ETL genoemd: Extract, Transform and Load.

Drie aspecten zijn hierin van belang:

  • de juiste data De data moet accuraat, betrouwbaar en relevant zijn.
  • de juiste plaats Alle verschillende informatiesystemen moeten kunnen profiteren van elkaar.
  • het juiste moment Informatie kan binnen no-time achterhaald zijn. Het tijdig beschikbaar stellen van gegevens is een van de belangrijkste uitdagingen.

E-LT architectuur

Traditionele ETL

Traditionele ETL tools halen de data eerst op vanuit de diverse bronnen (Extract), transformeren de data op een gesloten middle-tier ETL engine (Transform) en laden de getransformeerde data in het datawarehouse (Load). Hierbij wordt de transformatiestap rij voor rij uitgevoerd. Duidelijk is dat dit een grote belasting legt op enerzijds de performance van de laadprocedure en anderzijds op de capaciteit van de hard- en software. Daarnaast moet de data tweemaal over het netwerk gehaald worden: eenmaal tussen de bronsystemen en de ETL server en eenmaal tussen de ETL server en het datawarehouse. Als je dan ook nog de referentiële integriteit wil controleren tussen de getransformeerde brondata en de data die reeds aanwezig is in het datawarehouse, moet er ook nog een download plaatsvinden van het datawarehouse naat de ETL server.

E-LT

In de E-LT benadering wordt het transformatieproces op een andere manier uitgevoerd. Kort gezegd wordt deze gehele stap verplaatst naar het datawarehouse. De volgorde wordt dan: ophalen van de brondata (Extract), laden van de data in target database (Load) en transformeren van de data met gebruik van native SQL (Load).

De E-LT architectuur maakt meer gebruik van de kracht en de capaciteit van de RDBMS engine. De verwerkingscapaciteit wordt alleen beperkt door de gebruikte servers. Omdat er geen extra server of technologie aan te pas komt, biedt de E-LT architectuur optimale performance en schaalbaarheid en wordt het beheer van de integratie infrastructuur vergemakkelijkt.

Oracle Data Integrator Overview

ODI: technische architectuur

De volgende afbeelding geeft de architectuur van Oracle Data Integrator aan.

Oracle Data Integrator Architecture

Tijdens ontwikkeling maken beheerders en ontwikkelaars een verbinding met de repository van ODI. De repository is een uitgebreide, open en gedeelde metadata repository. De metadata van de ontsloten applicaties, het ETL proces en de verschillende versies van het ETL project worden hierin opgeslagen, evenals planning, scheduling en audit rapporten.

De Topology Manager is een grafische interface module waarin de gegevens over de fysieke en logische architectuur van de informatiesystemen worden beheerd. De lokatie, machine en data server beschrijving stelt Oracle Data Integrator in staat om een enkele ETL-proces uit te voeren in verschillende omgevingen.

De Designer is een tool om de data integriteit te controleren en de transformaties te maken. Het bevat functionaliteiten voor:

  • Automatisch reverse-engineeren van bestaande applicaties of databases
  • Grafische ontwikkeling en beheer van transformatie en integratie interfaces
  • Visualisatie van data flows in de interfaces
  • Automatische documentatie generatie
  • Aanpassen van de gegenereerde code

 

De Security Manager is een tool voor het beheren van gebruikers en permissies in Oracle Data Integrator.

De Operator is de module voor het beheer van de productie omgeving en voor monitoring.

De Agent wordt gebruikt om de gemaakte interfaces uit te voeren. Onderdeel van de Agent is de Scheduler waarmee de interfaces via een gedefinieerde planning kunnen worden uitgevoerd.

De Metadata Navigator is een thin client, browser based interface waarmee de ODI repository kan worden benaderd. Deze tool kan met name worden gebruikt voor geavanceerde impact analyse en cross-referencing. Het is ook mogelijk om met deze tool het gehele productie proces te beheren.

Het opzetten van een project

Onderstaande afbeelding toont een voorbeeld van een project in ODI.

Oracle Data Integrator Project

Aan de bronkant biedt ODI de mogelijkheid om verbinding te maken met verschillende soorten bronnen. Niet alleen de Oracle database wordt ondersteund, ook databases van andere leveranciers kunnen worden ontsloten. Anders dan in Oracle Warehouse Builder is ODI in staat om ook verschillende soorten bronnen te laden. Connectie naar deze bronnen gebeurt hetzij native, hetzij met ODBC of JDBC drivers.

Het opzetten van een interface

In onderstaande afbeelding wordt een voorbeeld van een interface weergegeven.

Example Interface ODI

Nadat de bron- en target-objecten in de interface zij geplaatst, kan ODI de kolommen van deze objecten automatisch mappen op basis de naamgeving. Met name voor objecten met zeer veel kolommen kan dit veel tijd schelen.

Overige functionaliteiten

Changed data capture

In de conventionele data integratie benadering moet alle data aan het bronsysteem worden onttrokken, waarna de gehele dataset - mogelijkerwijs incrementeel - in het target systeem wordt geïntegreerd. Deze benadering kan inefficiënt blijken te zijn; een event-driven integratie zou beter kunnen werken. Een typisch voorbeeld is het geval wanneer een tabel met contactgegevens vanuit een CRM applicatie in een andere applicatie moet worden geladen. In dit geval maakt de hoeveelheid data - duizenden contacten - het onmogelijk om de integratie in het gegeven tijdsframe te realiseren. Het toepassen van handmatige geschreven business rules (zoals het filteren van de data op basis van een timestamp) zou een oplossing kunnen bieden, maar in dat geval moeten er misschien aanpassingen aan de applicaties plaatsvinden. Ook is het niet altijd zeker dat alle wijzigingen correct worden opgepikt. De Changed Data Capture (CDC) mogelijkheden van ODI zorgen ervoor dat nieuwe, gewijzigde en verwijderde data worden opgevangen en beschikbaar worden gemaakt aan het integratieproces.

CDC maakt gebruik van een publish-and-subscribe model. Een geïdentificeerde abonnee - meestal een integratieproces - abonneert zich op wijzigingen die zich voordoen in een datastore. Wijzigingen in de datastore worden opgevangen door het CDC framework en aangeboden aan de abonnee. Deze kan vervolgens op elk gewenst moment deze wijzigingen verwerken.

Oracle Data Integrator

ODI biedt twee methoden om de wijzigingen op te sporen: triggers en RDBMS log mining.

De eerste methode kan worden toegepast op de meeste RDBMS'en die gebruik maken van database triggers. Deze methode is geoptimaliseerd om de overhead op de bronsystemen te minimaliseren. Gewijzigde data die met behulp van database triggers worden opgevangen, worden niet gedupliceerd. Hierdoor wordt het aantal I/O activiteiten geminimaliseerd.

Bij de tweede methode wordt gebruik gemaakt van de RDBMS logs. Dit heeft weinig gevolgen voor de transactionele performance van het systeem. Deze methode kan worden toegepast op Oracle databases (met behulp van de Log Miner feature) en IBM DB2/400.

De Changed Data Capture framework is generiek en open, zodat deze door de gebruiker kan worden aangepast en door software van andere partijen kan worden gebruikt.

Service-oriented architecture

Oracle Data Integrator komt samen met de Oracle SOA Suite door drie service access mogelijkheden: data services, transformatie services en web services.

Data services zijn speciale web services waarmee toegang kan worden verkregen tot database tabellen. Gecombineerd met de Changed Data Capture mogelijkheden kunnen data services ook toegang verschaffen tot de gewijzigde records. Data services worden automatisch gegenereerd door Oracle Data Integrator en gedeployed als web service in een web container, meestal een Java applicatie server.

Oracle Data Integrator

Web services van derden kunnen worden aangeroepen in een Oracle Data Integrator workflow en zo worden gebruikt als onderdeel van het data integratie proces. Requests worden 'on the fly' gegenereerd.

Oracle Data Integrator

Conclusie

Met ODI heeft Oracle naast OWB een tweede ETL tool in handen. Beide producten werken volgens de E-LT architectuur, waardoor er geen aparte engine nodig is voor het uitvoeren van de transformaties. Gezien het wat meer open karakter van ODI (minder afhankelijkheid van de Oracle database), vullen ODI en OWB elkaar goed aan. Aangezien elk onderdeel van ODI in een apart scherm wordt geopend, is het een zeer overzichtelijk product. De ondersteuning voor CDC, die werd verwacht in OWB 10.2, wordt met ODI wel aangeboden. Hiermee kan de performance van de data integratie processen sterk worden verbeterd. In combinatie met de ondersteuning voor SOA is dit een goed argument om ODI als fundament van uw data integratie architectuur te kiezen.

Over de auteur
Paul Versluis is senior BI consultant bij AORTA BI Solutions en heeft 10 jaar ervaring als consultant in het bouwen en onderhouden van complexe datawarehouse omgevingen met behulp van Oracle Warehouse Builder. Om in projecten een zo’n optimaal mogelijk resultaat te behalen heeft Paul de laatste tijd veel ervaring opgedaan met het inrichten en optimaliseren van de onderliggende architectuur van OBI, de BI Server.

Waardering:
 

Reacties

Nieuwe reactie inzenden

De inhoud van dit veld is privé en zal niet openbaar worden gemaakt.

Meer informatie over formaatmogelijkheden

CAPTCHA
Deze vraag is om te testen of u een persoon bent en om spam te voorkomen
Image CAPTCHA
Enter the characters shown in the image.