Maken moderne Business Intelligence producten een data warehouse overbodig?

blog-header

Moderne Business Intelligence producten, zoals PowerBI en Tableau, hebben vaak een analytische database waarmee er met een enorme snelheid kan worden geanalyseerd. De rol van een data warehouse lijkt daarmee tot een eind te komen. Het ontwikkelen van een data warehouse om informatie in een database te verzamelen lijkt daarbij vooral een tijdrovend IT-project. In dit artikel onderzoeken we de meerwaarde van een data warehouse.

Doel van het data warehouse

Historisch gezien is het data warehouse een centrale, relationele database waar informatie uit verschillende informatiegebieden (bronnen) wordt samengebracht met het doel om informatie-elementen op een uniforme wijze te rapporteren. Meestal is een groot deel van de data afkomstig uit één ERP-systeem en worden in het data warehouse de verschillende ERP-modules aan elkaar gekoppeld. De complexiteit die een data warehouse beoogt op te lossen zijn uniforme definities van de informatie-elementen, eenvoudig en efficiënt uitvraagbare modellen (ster-schema's) en complexe informatievraagstukken met betrekking tot historische veranderingen van data, zoals standen, veranderingen in standen en doorlooptijden en veranderingen in doorlooptijden.

Performance is niet optimaal

De discussie versmallen tot de snelheid om data uit te vragen is een goede manier om de meerwaarde van een data warehouse onderuit te halen. De performance van een traditioneel data warehouse is sterk afhankelijk van de snelheid waarmee data van disk is te lezen. Die snelheid is weer sterk afhankelijk van het aantal kolommen (breedte) van een tabel. In een poging om het efficiënter te maken is er in relationele data warehouses een soort mengvorm ontstaan waarbij men enerzijds aansluit bij relationele database modelleringstechnieken (meerdere tabellen maken) en anderzijds de wens om alles simpelweg in één tabel "plat te slaan". Analytische databases zijn veel minder afhankelijk van de disk snelheid en maken beter gebruik van in-memory en caching mogelijkheden. Overigens combineren moderne databases vaak relationele en analytische mogelijkheden.

Specifiek ontwerpen is kostbaar

Door bovengenoemde beperking van relationele databases vereist meer ontwerp- en ontwikkeltijd. De doorlooptijd om een nieuw "model" op te leveren is dan ook veel malen groter dan bij een analytische databases. Traditionele, relationele data warehouses zijn op dit punt minder flexibel dan analytische databases.

Analytische databases lossen deel van problemen op

Kijken we naar de doelstellingen van een data warehouse vanuit een informatiemanagement perspectief dan zien we dat analytische databases niet automatisch antwoord geven op complexere informatievragen. Daarnaast is het modelleren van uniforme definities voor informatie-elementen uit meerdere databronnen vaak een modelleringsvraagstuk die het best kan worden uitgevoerd in een relationele database in combinatie met software om de transformaties uit te voeren.

De ideale situatie is combineren!

De analytische database is een belangrijke toevoeging om het modelleren van modellen sterk te vereenvoudigen en de performance te verbeteren zonder dat daar specialistische kennis voor nodig is. Om aan complexe informatievraagstukken te kunnen voldoen is de combinatie van een relationele- en analytische database een ideale oplossing. De analytische database maakt het data warehouse in veel gevallen niet overbodig.