Existe-t-il une différence entre data lake et data warehouse ?
L’intérêt toujours grandissant pour le « Big Data » conduit les entreprises à centraliser leurs données dans des bases de données de référence. Deux principales solutions s’offrent donc aux dirigeants pour le faire : la mise en place d’un Data Warehouse ou la construction d’un Data Lake.
Si ces deux approches permettent de stocker de gros volumes de données, elles ne sont pas pour autant identiques. Le but de cet article est de vous faire découvrir les principales différences qui existent entre le Data Lake et le Data Warehouse.
QU’EST-CE QU’UN DATA WAREHOUSE ?
Un Data Warehouse est un entrepôt de données (en français). C’est un dispositif technologique qui permet de collecter, d’ordonner et de stocker des informations se trouvant dans des bases de données opérationnelles.
On peut l’assimiler à un entrepôt dans lequel des bouteilles d’eau sont rangées sur des étagères. Ce n’est donc pas un simple outil, mais un vrai dispositif dont l’architecture est formée d’une base de données en interne ou en cloud (Amazon Redshift, Snowflake…), d’un outil ETL et d’un outil de BI.
Grâce au processus ETL (Extract Transform Load), les données collectées sont transformées (afin de correspondre au schéma du DWH) avant d’être intégrées dans la base de données. Il en résulte une grande sécurité. Cependant, les modifications des données stockées sont complexes et coûteuses.
QU’EST-CE QU’UN DATA LAKE ?
Le terme Data Lake signifie en français « Lac de Données ». Il s’agit également d’une méthode de stockage de données pour le Big Data. Contrairement au Data Warehouse qui évoque des compartiments, le Data Lake évoque le mélange et la fluidité.
Les données de tout ordre y sont stockées « en vrac » et dans leur état brut. Cependant, les technologies nécessaires à la construction d’un Data Lake (principalement le framework Hadoop) offrent un espace de stockage presque illimité et très peu onéreux.
Ici, les gouttes d’eau qui représentent les données sont mélangées et forment un « lac ». Cette méthode de stockage fonctionne grâce à l’approche ELT (Extract Load Trasnsform) qui permet de charger les données avant de les transformer.
DATA LAKE ET DATA WAREHOUSE : QUELLES DIFFÉRENCES ?
Le Data Warehouse est beaucoup plus ancien que le Data Lake. Il est utilisé depuis des dizaines d’années alors que les technologies liées au Data Lake sont encore récentes. On peut même dire que le Big Data est le parent du Data Lake, mais pas celui du Data Warehouse. Cependant, il existe des différences plus importantes entre ces deux méthodes de stockage de données.
LA STRUCTURE DES DONNÉES STOCKÉES
La principale différence entre les Data Lakes et les Data Warehouses réside dans la différence de structure entre les données transformées et les données brutes. En effet, les Data Lakes permettent de stocker rapidement de plus grandes quantités de données que les Data Warehouses. De plus, les Data Lakes permettent de stocker des données brutes alors que les Data Warehouses concernent des données transformées et nettoyées.
Les données brutes sont des données utilisées dans un but précis et qui n’ont pas encore été analysées. Leur stockage s’effectue donc en vrac dans un Data Lake et elles peuvent être non structurées, semi-structurées ou même structurées.
Par contre, les données stockées dans un Data Warehouse nécessitent un minimum de nettoyage et de structuration. Il faut d’abord les retravailler. Les données stockées à la fin ne sont plus donc à l’état de « données brutes », mais plutôt à celle de « données nettes ».
LE TYPE DE DONNÉES STOCKÉES
Le système de stockage dans le cas d’un Data Warehouse permet généralement d’économiser l’espace de stockage des serveurs en simplifiant le modèle de données. Les données qui ne sont pas exploitées dans un rapport défini ou pour répondre à des questions spécifiques peuvent donc être exclues de ce système de stockage.
Ainsi, l’analyse et la compréhension des données stockées requièrent un temps considérable lors du développement d’un Data Warehouse. Ce n’est pas le cas avec un Data Lake.
Le Data Lake permet de conserver toutes les données. Ici, il ne s’agit pas uniquement des données qui seront utilisées aujourd’hui, mais de toutes les données qui ont une utilité potentielle. Certaines données sont même stockées non parce qu’elles ont une quelconque utilité, mais parce qu’elles pourraient s’avérer utiles dans le futur.
Cette différence dans le type de données stockées s’explique par le fait que le matériel utilisé pour un Data Warehouse est généralement différent de celui utilisé pour un Data Lake.
LA FINALITÉ
Le traitement et la modification d’un Data Warehouse nécessitent du temps, des compétences métiers et de modélisation. Il s’agit d’ailleurs d’un des principaux inconvénients de cette méthode de stockage. Pendant le développement, un temps important doit être utilisé à l’avance pour effectuer une bonne structuration de l’entrepôt.
Cette conception d’entrepôt de données peut s’adapter à l’évolution et aux changements, mais le processus de chargement des données est complexe. De plus, un grand travail doit être effectué pour simplifier l’analyse et la génération des rapports.
Or, de nombreuses contraintes commerciales ne peuvent simplement pas attendre que l’équipe du Data Warehouse ait fini d’adapter son système pour y apporter des réponses.
Les Data Lakes, quant à eux, sont faciles à exploiter et à modifier puisqu’ils n’ont pas de structure. Les données peuvent être modifiées dans la mesure où ces systèmes de stockage de données ne sont soumis qu’à très peu de restrictions.
Un Data Lake s’adapte donc beaucoup plus facilement aux changements qu’un Data Warehouse. Les utilisateurs peuvent donc exploiter plus aisément les données afin d’apporter très rapidement des réponses à leurs questions.
Cette structuration des données dans le Data Lake est idéale par exemple pour l’Intelligence artificielle (IA), le Machine Learning, la modélisation prédictive, etc. Toutefois, une bonne gouvernance de données est indispensable pour éviter au lac de se transformer en marécage.
DATA LAKE ET DATA WAREHOUSE : QUELLE SOLUTION CHOISIR ?
Le type de base de données qui correspond le mieux à votre entreprise dépend non seulement des types de données à stocker, mais également des cas d’usages.
LES TYPES DE DONNÉES QU’IL FAUT STOCKER
Si vous souhaitez gérer et analyser de grandes quantités de données structurées, le Data Warehouse vous conviendra parfaitement. Une telle base de données permet de centraliser les données structurées pour en faire une analyse descriptive.
Plus concrètement, un Data Warehouse suffit largement pour analyser des données comme le nombre de vues sur vos vidéos et le nombre de requêtes sur un produit donné ou pour comprendre d’autres schémas commerciaux.
Cependant, les données structurées ne sont pas les seuls types de données que doit gérer une entreprise engagée dans un projet Big Data. Si la vôtre fait partie des 63 % des entreprises qui ont besoin de stocker des données non structurées (en moyenne 25 petabytes), un Data Lake sera une meilleure alternative à cause de sa capacité à stocker de gros volumes de données non structurées.
LES UTILISATEURS
On distingue trois grands profils d’utilisateurs de données :
Les utilisateurs opérationnels : Ce sont les équipes marketing, ventes, produit, digital, etc. qui représentent environ 80 % de l’effectif d’une entreprise. Le Data Warehouse leur permet une meilleure structuration des données et donc de comprendre et d’utiliser plus facilement ces données.
Les analystes de données : Ils représentent environ 10 % de l’effectif de l’entreprise et utilisent le Data Warehouse pour accéder à des données non intégrées dans le DWH et pour créer des rapports.
Les data scientists : Le Data Lake est leur terrain de jeu. Ces derniers sont présents en minorité dans l’entreprise et ont souvent besoin de données brutes. Ils se servent donc d’outils spécifiques (outils d’analyse statistique, analytique, de modélisation prédictive…) pour gérer et ordonner le chaos qui réside dans le lac de données.
En résumé, le Data Lake et le Data Warehouse sont deux approches complémentaires. Il est tout à fait possible d’avoir un Data Lake pour les besoins des data scientists et un Data Warehouse pour les utilisateurs opérationnels.