|
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
|