ARCHITECTURE
15/7/2024
data lakehousePhoto de Marie de Vesvrotte
Marie de Vesvrotte
Responsable Marketing

Data Lakehouse : définition et utilisation

Ce n’est qu’en 2020, qu’est introduit pour la première fois le concept de Lakehouse, un modèle unifié regroupant le Data Warehouse et le Data Lake. 

Data Lakehouse : une approche hybride

Un Lakehouse est une architecture de gestion de données qui vise à combler les lacunes du Data Warehouse et du Data Lake. Le Lakehouse vise à fournir la flexibilité et l'évolutivité d'un  lac de données avec la fiabilité, la performance et la gestion des données structurées d'un Data Warehouse.

Il offre une plateforme unifiée pour le stockage, la gestion et l'analyse de grandes quantités de données structurées, semi-structurées et non structurées. 

Comment fonctionne un Lakehouse ? 

Les Data Lakehouse reposent sur une conception innovante qui combine la structure et les fonctions de gestion des données du Data Warehouse et le stockage à faible coût et scalable du Data Lake.  

Le fonctionnement du Lakehouse repose sur deux couches principales : 

  • Couche de stockage (Lake Layer) : cette couche utilise un stockage à faible coût typique des Data Lake. Elle stocke les données brutes, structurées, semi-structurées et non structurées, de manière scalable et économique.
  • Couche de traitement (House Layer) : cette couche permet de traiter et d’interroger directement les données stockées dans la couche de stockage. Les données n'ont pas besoin d'être déplacées ou transformées dans un format propriétaire pour être analysées.

Imaginez que vous avez une immense bibliothèque :

bibliothèque

Data Lake : la grande réserve 

Vous avez une grande salle de stockage où vous pouvez entreposer tout type de documents sans les organiser de manière spécifique. Vous y mettez des livres, des journaux, des manuscrits, des magazines, des vidéos, etc. 

Cette salle est très flexible car vous pouvez stocker n'importe quoi, mais elle peut devenir rapidement chaotique et difficile à naviguer si vous ne savez pas exactement ce que vous cherchez.

Data Warehouse : la section organisée

À côté de cette grande réserve, vous avez une section de la bibliothèque où chaque document est soigneusement classé et organisé selon un système précis (par auteur, sujet, genre, etc.).

Cette section est très efficace pour retrouver des informations spécifiques et effectuer des recherches précises, mais elle est moins flexible car vous devez suivre un système strict d'organisation et de catalogage.

Lakehouse : la bibliothèque moderne 

Maintenant, imaginez une bibliothèque moderne qui combine les deux approches. Vous avez toujours la grande salle de stockage flexible (Data Lake) où vous pouvez déposer tout type de document sans contrainte.

En même temps, vous avez des systèmes automatisés et intelligents qui organisent les documents au fur et à mesure qu'ils arrivent et les classent dans la section organisée (Data Warehouse) de la bibliothèque.

Vous pouvez accéder à l'information brute pour des analyses exploratoires rapides, tout en ayant la possibilité de naviguer dans des données bien structurées pour des recherches et des analyses plus approfondies.

De plus, cette bibliothèque moderne utilise des technologies avancées pour gérer, indexer et sécuriser les données, rendant l'accès rapide et fiable, qu'il s'agisse de données brutes ou structurées.

Architecture d’un Data Lakehouse 

L'architecture d'un Data Lakehouse offre un modèle hybride qui combine la flexibilité d'un Data Lake et la structuration d'un Data Warehouse. Cette approche permet de bénéficier des avantages des deux systèmes tout en atténuant leurs limitations respectives.

Couche de stockage

La base d'un Data Lakehouse repose sur sa couche de stockage, qui accepte tout type de données, qu'elles soient structurées, semi-structurées ou non structurées. Cela inclut les fichiers, les vidéos, les images, les logs et les données IoT. Cette flexibilité de stockage est essentielle pour gérer et analyser des volumes massifs de données diversifiées.

Couche de métadonnées

Au-dessus de la couche de stockage se trouve la couche de métadonnées. Elle contient un catalogue unifié qui fournit des métadonnées détaillées pour chaque objet stocké. Ce catalogue est important pour l'organisation, la recherche et la gestion des données, permettant aux utilisateurs de localiser et de comprendre facilement les jeux de données disponibles.

Conformité ACID

L'un des principes clés de l'architecture du Data Lakehouse est la conformité ACID (Atomicité, Cohérence, Isolation, Durabilité) pour les transactions de bases de données. Cela garantit que les transactions sont traitées de manière fiable et que les données restent cohérentes même en cas d'erreurs ou de pannes.

Couche de traitement

Dans un Data Lakehouse, la couche de traitement permet un accès direct pour les requêtes, assurant ainsi des temps de réponse rapides pour les analyses. Cette couche est indépendante des outils spécifiques utilisés, permettant ainsi à divers outils d'examiner les données préparées sans contraintes. De plus, l'architecture permet à plusieurs parties de lire et d'écrire simultanément des données dans le système, facilitant une collaboration et une utilisation efficaces.

Couche API

La couche API du Data Lakehouse est conçue pour le traitement des tâches et les analyses avancées. Elle fournit des interfaces programmatiques permettant aux développeurs et aux analystes de construire et d'exécuter des applications analytiques complexes, en exploitant pleinement les capacités du système.

Couche de consommation de données

Enfin, la couche de consommation de données offre un accès à toutes les métadonnées et données stockées dans le Data Lakehouse. Elle permet aux utilisateurs finaux, aux analystes et aux applications d'accéder aux informations nécessaires pour leurs besoins analytiques et décisionnels, tout en garantissant une gestion sécurisée et contrôlée des données.

Voici ci-après une visualisation synthétique de l’architecture d’un Data Lakehouse : 

architecture data lakehouse

Le Data Lakehouse : la solution au marécage de données 

Le Data Lakehouse intègre des fonctionnalités avancées d’entrepôts de données pour empêcher le marécage de données, un problème commun aux Data Lakes traditionnels. 

Contrairement aux Data Lakes, où les données peuvent être ingérées sans structure prédéfinie, le Data Lakehouse permet de définir et d'appliquer des schémas aux données. Les utilisateurs peuvent imposer une structure aux données dès leur ingestion, garantissant une meilleure qualité et intégrité des données.

Le Data Lakehouse offre également des fonctionnalités de gestion du cycle de vie des données, permettant d'identifier, de classer, d'archiver et de supprimer des données selon des règles prédéfinies. Ce processus automatisé garantit que les données obsolètes ou non pertinentes sont régulièrement éliminées, réduisant ainsi le risque de marécage de données.

Enfin, en intégrant des capacités de traitement des transactions (ACID), le Data Lakehouse assure la fiabilité et la consistance des données lors des opérations de lecture et d'écriture. 

Les avantages d’un Data Lakehouse  

Une plateforme de données unifiée

Un Data Lakehouse offre une plateforme unifiée capable de gérer des données structurées, semi-structurées et non structurées. Cette approche élimine le besoin de maintenir deux systèmes distincts, simplifiant ainsi la gestion des données. 

Collaboration et accès simplifiés

L'architecture d'un Data Lakehouse permet à plusieurs parties prenantes de lire et d'écrire simultanément des données dans le système. Cela favorise une collaboration efficace et une utilisation optimisée des ressources disponibles. Les équipes peuvent travailler de manière synchronisée sans se soucier des conflits d'accès ou des limitations de la plateforme.

Gouvernance des données améliorée

Un Data Lakehouse intègre des fonctions de gouvernance des données robustes. Cela inclut des mécanismes de versioning et de suivi des modifications, assurant une gestion précise et sécurisée des données. Les contrôles de sécurité avancés, tels que le chiffrement, permettent de répondre aux exigences de conformité réglementaire.

Flexibilité et évolutivité

À l'instar des Data Lakes, les Data Lakehouses offrent une certaine flexibilité en permettant de stocker toutes les données telles quelles, sans besoin de transformation préalable. Par ailleurs, la capacité de mise à l'échelle horizontale permet de répondre efficacement aux besoins croissants de stockage et de traitement.

Optimisation des performances

Les Data Lakehouses sont équipés de fonctionnalités avancées d’indexation et d’optimisation des requêtes. Ces outils permettent de traiter les données plus rapidement et efficacement, répondant aux besoins des utilisateurs en termes de performance.  

Rentabilité accrue

Un autre avantage clé des Data Lakehouses est leur rentabilité. Il est possible de supprimer facilement les données inutiles, réduisant ainsi les besoins en stockage. De plus, l'infrastructure des Data Lakehouses sépare le calcul et le stockage, permettant d'ajouter du stockage supplémentaire sans avoir à augmenter proportionnellement la puissance de calcul. Cette caractéristique permet une gestion plus économique des ressources et des coûts.

Rond violet avec fleche vers le haut