Terug naar de beginpaginaCentor Homepage

Ontwerp én beheer van Data Warehouses met hetzelfde programma!

Oracle vangt met Warehouse Builder twee vliegen in één klap

In een Data Warehouse worden gegevens opgeslagen en zodanig met elkaar in relatie gebracht dat een gebruiker snel de benodigde informatie in beeld krijgt. Oracle's nieuwste tool voor de bouw van dergelijke warehouses, is Oracle Warehouse Builder. Dit programma is onderdeel van Oracle9i Development Suite, is volledig in Java geschreven en werkt met een Repository die in een Oracle8i Enterprise Edition- of Oracle9i Enterprise Edition-database moet worden geïnstalleerd. In tegenstelling tot veel andere tools (zoals Informatica's Powermart en Microsoft's DTS) kan met Oracle Warehouse Builder niet alleen een Data Warehouse worden ontworpen, er kunnen ook gegevens mee worden ingevoerd!


Voor het ontwerpen van een Data Warehouse moet een aantal stappen worden genomen. Allereerst worden de metadata-definities van de bronomgeving(en) en de doelomgeving vastgesteld. Daarna wordt de 'mapping' van de bron- en doelgegevens bepaald. Op basis daarvan vindt een definiëring plaats van de ETL-processen.

Wat is ETL?
ETL staat voor 'Extraction, Transformation and Load'. Het omvat het gebied van het ontladen van data uit de database(s) - de bron! - het zuiveren en bewerken van oude data tot nieuwe, en het laden van de nieuwe gegevens in de nieuwe database - het doel! Oracle Warehouse Builder werkt zowel met relationele als met multi- dimensionale modellen. Maar het progamma kan ook worden gebruikt voor de aanpassing van het metadata-model: wijzigingen in de bron-database(s) worden vertaald naar aanpassingen in ETL-processen en doel-database(s). Een belangrijk verschil tussen Warehouse Builder en andere, op de markt verkrijgbare ETL-tools, is dat Warehouse Builder geen eigen ETL-engine heeft. Het maakt gebruik van de mogelijkheden van Oracle8i en Oracle9i (zoals PL/SQL, SQL Loader en 'External Tables'). Het ETL-proces wordt op die manier naar de data gebracht, en niet andersom.

Laten we de drie stappen waaruit het ETL-proces bestaat eens nader bekijken:

Extractie
Warehouse Builder gebruikt databaselinks om gegevens uit andere Oracle-databases over te halen naar de 'staging area' van de Data Warehouse. Maar men kan bijvoorbeeld ook gebruikmaken van ODBC (Open DataBase Connectivity, een door Microsoft ontwikkelde toegangsmethode voor databases). Zo kunnen gegevens uit databases worden gehaald die niet met Oracle zijn gemaakt.

Transformatie
Nadat de ruwe gegevens in het Data Warehouse zijn geladen, worden ze bewerkt op de wijze zoals gedefinieerd is in de ETL-tool. Hiervoor genereert Warehouse Builder PL/SQL-procedures die in de database worden uitgevoerd. Deze procedures bewerken de data en laden het resultaat in doeltabellen in de Data Warehouse.

Laden
Nadat de gegevens zijn getransformeerd, worden de bewerkte gegevens in het Data Warehouse geladen. Belangrijke functies die op een Data Warehouse kunnen worden losgelaten, zijn: 'dimensions', 'cubes', 'partitioning', 'summary management', 'indexing' en 'query rewrite'.

Nu het ontwerp gereed is, kunnen PL/SQL-scripts worden gegenereerd voor het ontladen, bewerken en laden van de gegevens van het Data Warehouse. Naast PL/SQL-scripts kunnen ook programma's worden gegenereerd die de programmeertaal ABAP ondersteunen. Dat komt goed van pas wanneer gewerkt wordt met SAP-systemen (software waarmee de hele toeleveringsketen van een bedrijf inzichtelijk kan worden gemaakt en beheerd).

Repository en MetaBase
De wijze waarop Oracle's Warehouse Builder is opgebouwd, wordt in figuur 1 geïllustreerd.


Met name de Repository en de MetaBase vereisen een toelichting. Als duidelijk is hoe deze twee componenten werken, kan de functie van Warehouse Builder in zijn geheel beter worden begrepen.

De Repository is een belangrijk onderdeel van Warehouse Builder. Het is opgesplitst in een Design- en een Runtime-gedeelte. De software communiceert echter niet rechtstreeks met de Repository, maar via de MetaBase. De MetaBase biedt de producenten en consumenten van de metadata diensten aan. Het functioneert dus als een centraal punt waar alle ontvangsten en distributies van metadata bijeenkomen. Oracle's Warehouse Builder communiceert uitsluitend via de MetaBase Application Programming Interface (API) en Software Development Kit (SDK) met de Repository. Rechtstreekse SQL-toegang tot de Repository is niet mogelijk. Hiervoor heeft Oracle een aantal publieke inzagemogelijkheden ('views') gedefinieerd. Die worden door de rapporten van Warehouse Builder ondersteund en via Oracle Portal beschikbaar gesteld.

De MetaBase biedt een aantal geavanceerde diensten aan; diensten die niet mogelijk zouden zijn als gegevens rechtstreeks uit een database worden opgevraagd en/of als manipulaties direct op metadata worden toegestaan. De MetaBase is opgebouwd volgens het concept van First Class Object (FCO) en Second Class Object (SCO). Een FCO definieert een groep objecten die voor de gebruiker gecombineerd worden tot één betekenisvol object. Een FCO bestaat uit één of meer SCO's. Als er mutaties op een SCO worden uitgevoerd, slaat de hele FCO op slot. Hiervoor zorgt de MetaBase. Deze laat de aangepaste metadata pas aan andere gebruikers zien wanneer het slot wordt opgeheven.

Van oud naar nieuw Het inlezen van metadata van externe systemen is de eerste stap in het ontwerpproces. Maar uiteindelijk moeten oude datastructuren worden omgezet in een nieuwe gegevensstructuur. Warehouse Builder ondersteunt dit op vijf manieren:

  • Het direct inlezen van metadata uit onder andere: de SAP R/3 Business Object Repository, 'flat files', Oracle Applications-datamodellen, Oracle Designer Repository en CA Erwin Import;
  • Het laden van eigen metadata uit andere Warehouse Builder Repository's;
  • Direct toegang verkrijgen tot de eigen Oracle Database Catalog;
  • Het gebruik van Open DataBase Connectivity (ODBC); en
  • Het inlezen vanuit externe applicaties die de OMG-CWM standaard (Object Meta Group - Common Warehouse Model) volgen, zoals bijvoorbeeld Business Objects en Crystal Reports.

De Warehouse Builder kan de impact van wijzigingen in metadata in kaart brengen. Vervolgens voert het programma de wijzigingen door in verschillende ETL-scripts, maar ook in de structuur van de doel-database (inclusief het genereren van update-scripts!).

Tools voor design
Warehouse Builder beschikt over een aantal mogelijkheden voor het ontwerpen van Data Warehouses. We bespreken er vier:

  • Relational Design. Met deze tool kan de ontwerper schematisch relationele modellen ontwerpen. De functionaliteit van Relational Design vertoont een overlap met Oracle Designer.
  • Met Dimensional Design kunnen multidimensionale modellen worden ontworpen. Het is mogelijk meerdere hiërarchieën per dimensie te definiëren, inclusief de koppeling met zgn. 'Fact'-tabellen.
  • ETL-design. Hiermee kunnen de ETL-processen op een grafische wijze worden gemodelleerd.
  • Business Intelligence Design, bedoeld voor de definiëring van metadata ten behoeve van de Oracle Discoverer End User Layer.

De wijze waarop de Warehouse Builder, geïntegreerd in Oracle9i Development Suite, het opzetten van Data Warehouses ondersteunt, is indrukwekkend. Er is geen ander tool ter wereld waarmee Data Warehouses op die manier kunnen worden ontworpen en beheerd. Bovendien zorgt de bundeling van krachten met Oracle9i ervoor dat grote hoeveelheden gegevens in de database kunnen worden opgeslagen. Overigens zijn binnen Oracle9i meer functies beschikbaar voor Data Warehousing. De Enterprise Edition beschikt bijvoorbeeld over de Business Intelligence-opties 'Oracle OLAP' en 'Oracle Data Mining'.

Voor meer informatie hierover, wordt verwezen naar de website van Whitehorses. Gebruik de volgende twee hyperlinks:
http://www.whitehorses.nl/whitebooks/030101i.html http://www.whitehorses.nl/whitebooks/030202i.html


 

Whitehorses

Alles over Datawarehousing

OWB at OTN

Automating ETL using OWB

OWB Weblog

Data Warehouse Boeken