Bij het laden van data in het datawarehouse, dient er een keuze gemaakt te worden of je data incrementeel inlaad of volledig. Om hierin een keuze te maken beschrijven we de verschillende opties.

Volledig laden

Bij het volledig laden van je data, zal in het datawarehouse eerst alle data verwijderd worden. De volgende stap is dat alle data weer uit de bronnen wordt opgehaald en verwerkt wordt in het datawarehouse.

Volledig laden kost vaak meer tijd en heeft een grotere belasting op het netwerk en betrokken servers. Voordeel is dat je altijd complete data hebt, waar bij incrementeel laden wel eens een mismatch in data kan ontstaan.

Vaak wordt er gestart met dagelijks een full load bij kleine hoeveelheden data. Wanneer de data hoeveelheid toeneemt zal het omslagpunt gevonden moeten gaan worden wanneer incrementeel laden sneller is.

Incrementeel laden Het incrementeel laden van data betekent dat je niet alle data opnieuw ophaalt maar alleen wat echt nodig is. In dit geval worden er drie controles uitgevoerd:

  1. Controle op records die nieuw zijn
  2. Controle op records die gewijzigd zijn
  3. Controle op records die verwijderd zijn

Afhankelijk van de data kan gekozen worden om één of meerdere controles uit te voeren. Heb je bijvoorbeeld een feitentabel met kassatransacties, dan is het controleren van nieuwe records voldoende, aangezien een kassatransactie niet kan wijzigen of verwijderd wordt. Hierbij er van uit gaande dat het retouren van producten een nieuwe kassatransactie is.

Heb je echter data dat wel kan wijzigen of verwijderd kan worden, dan is het verstandig om alle drie de controles uit te voeren.

Incrementeel laden alternatief

Een alternatief voor incrementeel laden is semi-volledig laden. In deze situatie verwijder je voor een x aantal dagen records uit je feitentabel en herlaad je alle data vanaf die dag tot en met nu in.

Zo kun je bijvoorbeeld alle data tot 90 dagen terug verwijderen en vanaf dat moment alles opnieuw inladen. Voorwaarde hierbij is dat in het bedrijfsproces geen wijzigingen in data worden doorgevoerd verder dan 90 dagen terug. Hou hier rekening mee bij de opzet hier van.

Het voordeel van deze optie is dat je de snelheid van incrementeel laden benut, maar toch een gedeeltelijk volledige lading uitvoert.

Volledig en incrementeel laden combineren

Het is ook mogelijk om een combinatie toe te passen. In veel gevallen zie je dat dimensies incrementeel geladen. Er wordt dan een controle uitgevoerd op nieuwe en gewijzigde records. Records die verwijderd zijn uit de bron blijven vaak in dimensies nog wel bestaan omdat er nog een mogelijke relatie bestaat naar historische data of niet verwijderde data uit feitentabellen.

Voor feitentabellen kun je vervolgens een keuze maken tussen een volledig, incrementeel of semi-volledig. Bepaal aan de hand van de soort data en hoeveelheid data wat het beste past.

Daarnaast kan het verstandig zijn bij het toepassen van incrementeel laden om in het weekend alsnog een volledige verversing uit te voeren of het aantal dagen dat je data verwijderd en opnieuw laad te verhogen van 90 dagen naar bijvoorbeeld 365 dagen. Omdat in het weekend er vaak minder met BI wordt gewerkt, heb je een langere periode om de data te laden.