Tegenwoordig genereren organisaties dagelijks enorme hoeveelheden data. Bedrijven zijn zich bewust van het belang van data en slaan gegevens van verschillende afdelingen op om inzichten te verzamelen, en zo de organisatie te helpen betere beslissingen te nemen. Deze data kan oplopen tot petabytes (1.000.000 gigabytes), omdat ze uit meerdere bronnen worden verzameld en over het algemeen in een ongestructureerd format worden opgeslagen. Soms vertrouwen organisaties naast interne gegevens ook op externe gegevens om meer te weten te komen over hun concurrentie. Een datawarehouse maakt het mogelijk om data uit heterogene bronnen samen te voegen en op te slaan op één plek met als doel analyse, rapportage en business intelligence in plaats van het verwerken van transacties. Het is de samenvoeging van componenten en technologieën die helpt bij het creëren van een strategisch gebruik van data.

De enorme hoeveelheid data die is opgeslagen in een datawarehouse is afkomstig van verschillende afdelingen, zoals marketing, verkoop, financiën, klantgerichte apps, systemen van externe partners, enzovoort. Deze gegeven worden vervolgens getransformeerd en ingeladen zodat ze overeenkomen met de data die al beschikbaar is in het datawarehouse. Deze data wordt vervolgens toegankelijk gemaakt voor gebruikers.

Concept van datawarehousing

Datawarehousing is het proces waarbij data uit meerdere bronnen in een organisatie worden gesystematiseerd en op één plaats worden opgeslagen voor verdere analyse, rapportage en besluitvorming. Over het algemeen hebben organisaties een transactionele database die informatie bevat over alle dagelijkse activiteiten. Organisaties hebben ook andere databronnen – gerelateerd aan externe data of interne activiteiten. Gegevens uit al deze bronnen worden samengevoegd en opgeslagen in een datawarehouse via een ELT- of ETL-proces. Het datamodel van dit datawarehouse is zo ontworpen dat het haalbaar is om gegevens uit al deze bronnen te verzamelen en op basis daarvan besluiten te nemen.

Werking van een datawarehouse

Een datawarehouse is ontworpen als een centrale opslagplaats om bedrijfsgegevens uit verschillende bronnen te consolideren. De gegevens die erin stromen bestaat uit alle soorten en maten – gestructureerde, semigestructureerde en ongestructureerde data. Bovendien kan deze dat afkomstig zijn van verschillende bronnen, zoals interne applicaties, klantapplicaties en externe systemen.

Zodra de gegevens het datawarehouse binnenkomen, worden ze verder geladen, getransformeerd en verwerkt en worden er andere vooraf gedefinieerde stappen uitgevoerd om ze om te zetten in informatie die snel toegankelijk is en gebruikt kan worden voor het nemen van beslissingen. Consolidatie van grote hoeveelheden informatie in het datawarehouse kan een organisatie helpen bij het maken van een meer holistische analyse, om er zeker van te zijn dat alle beschikbare informatie al is overwogen voordat een beslissing wordt genomen.

De noodzaak van een Data Warehouse herkennen

Organisaties slagen er meestal niet in een Data Warehouse te implementeren, simpelweg omdat ze er geen duidelijke use case voor hebben kunnen vaststellen. Organisaties die een bedrijfsprobleem voor hun data herkennen, kunnen gefocust blijven op het vinden van een oplossing.

Hier zijn een paar belangrijke redenen waarom een Data Warehouse voordelen biedt:

  • Verbeterde besluitvorming: Data Warehousing verbetert de efficiëntie en snelheid van toegang tot data, waardoor gebruikers data-gedreven strategieën kunnen maken om zo beter te presteren dan de concurrentie.
  • Standaardisatie van data: Data Warehouses slaan gegevens op in een standaardformaat, waardoor het voor gebruikers eenvoudiger wordt om ze te analyseren en er toepasbare inzichten uit te halen. Standaardisatie van data verzameld uit verschillende heterogene bronnen vermindert het risico op fouten en verhoogt de algehele nauwkeurigheid.
  • Lagere kosten: Data Warehouses stellen gebruikers in staat om dieper in historische gegevens te duiken en het succes van eerdere initiatieven te garanderen. Ze kunnen ook koerscorrecties visualiseren om kosten te minimaliseren, groei te stimuleren en operationele efficiëntie te verhogen.

Datawarehouses dienen als flexibele en schaalbare dataopslagplaatsen om de data van een onderneming te centraliseren en het analyseren van informatie te vergemakkelijken. Bedrijven blijven datawarehouses in hoog tempo omarmen.

Hieronder volgt een lijst met zes ‘best practies’ voor datawarehouses die bedrijven kunnen helpen bij hun eisen om te voldoen aan de time-to-value voor data analytics en business intelligence.

  1. Stakeholders vroegtijdig en regelmatig betrekken
    Een datawarehouse moet voldoen aan de eisen van verschillende belanghebbenden, zoals afdelingsmanagers, bedrijfsanalisten en data-scientists, omdat ze allemaal toegang moeten hebben tot de informatie in het warehouse om analyses uit te voeren en rapporten te genereren. Door feedback van deze stakeholders op te nemen, vergroot je de kans dat de besluitvormers van een organisatie de benodigde informatie tot hun beschikking hebben om weloverwogen keuzes te maken en verklein je de kans dat ze later een grote hervorming moeten doorvoeren. Zonder de steun van het management kan een datawarehouse-project nooit van de grond komen of zelfs halverwege worden afgebroken.
  2. Integratie van data governance
    Als data van slechte kwaliteit wordt ingevoerd in een warehouse, dan is het centraliseren ervan voor analyses vruchteloos – de resultaten van analyses zullen onnauwkeurig en misleidend zijn – ‘garbage in, garbage out’. Om dit te voorkomen, moeten organisaties een robuust proces voor data governance implementeren waarbij alle afdelingen samenwerken om het beleid voor beveiliging, samenwerking en bewaring van hun data te definiëren op basis van zakelijke en wettelijke vereisten.
  3. Gebruikersrollen definiëren
    Het definiëren van gebruikersrollen om te bepalen wie gegevens mag lezen, schrijven en bijwerken binnen een datawarehouse is van groot belang. Zonder de juiste processen en toegangscontrole zullen gebruikers na verloop van tijd de datapijplijn onderuit halen door hun werkzaamheden niet te coördineren, vooral bij grote organisaties waar veel analisten met het datawarehouse werken. Bedrijven moeten er echter ook voor zorgen dat hun gebruikerscontroles niet te beperkend zijn, omdat te bureaucratische systemen de productiviteit remmen door experimenten en iteraties te blokkeren.Organisaties moeten de juiste balans vinden tussen beveiliging en de operationele flexibiliteit die nodig is om analisten effectief te laten werken. Als onderdeel van deze balans zou een onderneming analisten sandboxes kunnen laten opzetten voor het testen van wijzigingen in datastructuren en kunnen eisen dat vooraf goedkeuring wordt verkregen voordat gewijzigde gegevens worden samengevoegd.
  4. Het begrijpen van het schemaontwerp van het datawarehouse
    Een organisatie moet zijn schema’s ontwerpen om de business requirements aan te laten sluiten op de  datawarehousetechnologie die wordt geïmplementeerd. Tegenwoordig maakt de schaalbaarheid van datawarehouses in de cloud het mogelijk om gegevens te denormaliseren zodat de zoeksnelheid toeneemt zonder beperkingen van resources.
  5. Frequente iteratie en testen
    Een agile benadering van de ontwikkeling en het onderhoud van een datawarehouse kan de prestaties van de repository verbeteren en ervoor zorgen dat die zich kan aanpassen aan de steeds veranderende eisen van een organisatie. Het toepassen van korte ontwikkeltrajecten met kleine, goed gedefinieerde taken en testplannen kan ervoor zorgen dat ontwikkelteams sneller feedback krijgen van relevante belanghebbenden. Vervolgens kunnen ze voortdurend itereren om hun systemen en processen te upgraden. Dit zorgt voor een snelle feedbackloop voor productontwikkeling en maakt het mogelijk om problemen met het warehouse te identificeren en op te lossen voordat dit gevolgen heeft voor de dienstverlening aan de gebruiker.
  6. Effectief gebruik van ELT en datawarehouses in de cloud
    ETL (extract, transform, load) en ELT (extract, load, transform) zijn twee processen die worden gebruikt voor het binnenhalen van gegevens uit de bron, het zo nodig transformeren ervan en het opslaan in het datawarehouse. Door de transformatiestap naar het einde van het proces te verplaatsen, maakt ELT het mogelijk om gegevens op te nemen en snel te beginnen met een data-analyse. Cloud data warehouses zijn geschikt voor gebruik met ELT, omdat hun schaalbare CPU-capaciteit de datatransformatie na het laden kunnen afhandelen. Cloud data warehouses hebben verschillende andere voordelen in vergelijking met hun lokale tegenhangers.Omdat ELT gegevens in het doel-systeem laadt voordat ze worden getransformeerd, moet een onderneming een tool voor datamodellering hebben om data voor te bereiden voor gebruik in analyses. De data engineers die datawarehouses ontwerpen en onderhouden, moeten zich laten begeleiden door materiedeskundigen om eindgebruikers te voorzien van data in een formaat dat voldoet aan hun eisen.

Andere data warehouse best practices

Naast de belangrijkste werkwijzen die hierboven zijn genoemd, zijn er verschillende andere factoren die het succes van een datawarehouse-implementatie bepalen. Enkele van de belangrijkste zijn de volgende.

  • Metadata management – Documentatie van metadata met betrekking tot alle bron-tabellen, staging tabellen en afgeleide tabellen is uiterst belangrijk voor het verkrijgen van bruikbare inzichten uit de data. De ELT-tool kan zo ontworpen worden dat zelfs de data lineage van de data wordt vastgelegd. Sommige van de veelgebruikte ELT tools presteren ook goed in het bijhouden van data lineage.
  • Loggen – Loggen is vaak een aspect dat over het hoofd wordt gezien. Het hebben van een gecentraliseerde opslagplaats waar logs kunnen worden geïnspecteerd en geanalyseerd draagt in hoge mate bij aan het snel debuggen en het creëren van een robuust ELT proces.
  • Data ‘concatenation’ – De meeste ELT tools hebben de mogelijkheid om data aaneen te schakelen in de extractie- en transformatiefase. Het is voordelig om te onderzoeken of dure joins nodig zijn in de ELT-tool of dat de database dat afhandelt. In de meeste gevallen zijn databases beter geoptimaliseerd voor het afhandelen van joins.
  • Compartimentering van transactie databases – Transactie databases moeten gescheiden worden gehouden van extractie jobs en het is altijd het beste om deze uit te voeren op een staging- of een replicatietabel zodat de performance van de primaire operationele database storingsvrij blijft.
  • Statusbewaking en waarschuwingen – Voortdurende bewaking van het ETL/ELT proces en het inbouwen van de voorziening voor waarschuwingen is belangrijk om de betrouwbaarheid van het systeem te garanderen.
  • Tijdig herstel – Zelfs met de beste bewaking, logging en fouttolerantie kunnen deze complexe systemen storingen vertonen. De mogelijkheid om dergelijke fouten in naar voorgaande fases te herstellen moet ook worden overwogen tijdens het ontwerpen van het datawarehouse proces.

Samengevat

Het succes van een project als de implementatie van een datawarehouse is sterk afhankelijk van inzicht in de business, haar IT-behoeften en haar pijnpunten. Begrip van al deze aspecten helpt de organisatie de structuur aan te brengen die nodig is om succesvol te zijn in datawarehousing. Voordat je begint met de ontwikkeling van een datawarehouse, is het raadzaam om de bovenstaande best practices voor datawarehouses nog eens door te nemen om tijd te besparen bij de projectontwikkeling en kostenoptimalisatie te bereiken.