Qu'est-ce qu'un data lakehouse ?
Un data lakehouse est un système de gestion de données qui combine les avantages des data lakes et des data warehouses. Cet article décrit le modèle architectural lakehouse et ce que vous pouvez en faire sur Databricks.

À quoi sert un data lakehouse ?
Un data lakehouse offre des capacités de stockage et de traitement évolutives aux organisations modernes qui souhaitent éviter les systèmes isolés pour le traitement de différentes charges de travail, telles que le Machine Learning (ML) et la Business Intelligence (BI). Un data lakehouse peut aider à établir une source de référence unique, à éliminer les coûts redondants et à garantir la fraîcheur des données.
Les data lakehouses utilisent souvent un modèle de conception de données qui améliore, enrichit et affine progressivement les données au fur et à mesure qu'elles traversent les couches de staging et de transformations. Chaque couche du lakehouse peut inclure une ou plusieurs couches. Ce modèle est fréquemment désigné sous le nom d'architecture en médaillon. Pour plus d'informations, consultez Qu'est-ce que l'architecture medallion lakehouse ?
Comment fonctionne le lakehouse Databricks ?
Databricks est basé sur Apache Spark. Apache Spark permet un moteur massivement évolutif qui s'exécute sur des ressources compute découplées du stockage. Pour plus d'information, consultez la vue d'ensemble d'Apache Spark
Le lakehouse Databricks utilise deux Technologies clés supplémentaires :
- Delta Lake : une couche de stockage optimisée qui prend en charge les transactions ACID et l'application des schémas.
- Unity Catalog : une solution de gouvernance unifiée et granulaire pour les données et l'IA.
Ingestion des données
Au niveau de la couche d'ingestion, les données par batch ou en streaming proviennent d'une variété de sources et sous divers formats. Cette première couche logique fournit un endroit où ces données peuvent atterrir dans leur format brut. Lorsque vous convertissez ces fichiers en tables Delta, vous pouvez utiliser les capacités d'application des schémas de Delta Lake pour vérifier l'absence ou la présence de données inattendues. Vous pouvez utiliser Unity Catalog pour enregistrer des tables selon votre modèle de gouvernance des données et les limites d'isolation des données requises. Unity Catalog vous permet de suivre la lignée de vos données à mesure qu'elles sont transformées et affinées, et d'appliquer un modèle de gouvernance unifié pour maintenir la confidentialité et la sécurité des données sensibles.
Traitement, organisation et intégration des données
Une fois vos données vérifiées, vous pouvez start à les organiser et à les affiner. Les data scientists et les experts en Machine Learning travaillent fréquemment avec des données à ce stade pour start la combinaison ou la création de nouvelles fonctionnalités et effectuer le nettoyage de données. Une fois vos données entièrement nettoyées, elles peuvent être intégrées et réorganisées dans des tables conçues pour répondre à vos besoins commerciaux particuliers.
Une approche de schéma à l'écriture, combinée aux capacités d'évolution des schémas Delta, signifie que vous pouvez apporter des modifications à cette couche sans nécessairement avoir à réécrire la logique en aval qui fournit des données à vos utilisateurs finaux.
Service de données
La dernière couche sert des données propres et enrichies aux utilisateurs finaux. Les tables finales doivent être conçues pour servir des données pour tous vos use cases. Un modèle de gouvernance unifié signifie que vous pouvez suivre le data lineage jusqu'à votre source unique de vérité. Les Layouts de données, optimisés pour différentes tâches, permettent aux utilisateurs finaux d'accéder aux données pour les applications de Machine Learning, le Data Engineering, la Business Intelligence et les rapports.
Pour en savoir plus sur Delta Lake, consultez Qu’est-ce que Delta Lake dans Databricks ? Pour en savoir plus sur Unity Catalog, consultez Qu’est-ce que Unity Catalog ?
Fonctionnalités d'un lakehouse Databricks
Un lakehouse bâti sur Databricks remplace la dépendance actuelle aux data lakes et data warehouses pour les entreprises de données modernes. Certaines tâches clés que vous pouvez effectuer comprennent :
- Traitement des données en temps réel : traitez les données en streaming en temps réel pour une analyse et une action immédiates.
- Intégration de données : unifiez vos données dans un système unique pour permettre la collaboration et établir une source unique de vérité pour votre organisation.
- Évolution des schémas : modifier le schéma de données au fil du temps pour s’adapter à l’évolution des besoins métier sans perturber les pipelines de données existants.
- Transformations de données : L'utilisation d'Apache Spark et de Delta Lake apporte rapidité, évolutivité et fiabilité à vos données.
- Analyse et reporting de données : Exécutez des requêtes analytiques complexes avec un moteur optimisé pour les charges de travail d'entreposage des données.
- **Machine Learning et IA :** Appliquez des techniques d'analytique avancée à toutes vos données. Utilisez le ML pour enrichir vos données et prendre en charge d'autres charges de travail.
- Gestion des versions et data lineage des données : Maintenez l'historique des versions pour les datasets et suivez le data lineage pour assurer la provenance et la traçabilité des données.
- Gouvernance des données : Utilisez un système unique et unifié pour contrôler l'accès à vos données et effectuer des audits.
- Data Sharing : Facilitez la collaboration en permettant le partage de jeux de données organisés, de rapports et d’insights entre les équipes.
- Analytique opérationnelle : Surveillez les métriques de qualité des données, les métriques de qualité des modèles et le drift en utilisant le Contrôle qualité des données.
Lakehouse et Data Lake et Data Warehouse
Les data warehouses ont alimenté les décisions de business intelligence (BI) pendant environ 30 ans, ayant évolué comme un ensemble de lignes directrices de conception pour les systèmes contrôlant le flux de données. Les data warehouses d'entreprise optimisent les queries pour les rapports de BI, mais peuvent prendre des minutes, voire des heures, pour générer des résultats. Conçus pour des données qui sont peu susceptibles de changer fréquemment, les data warehouses cherchent à prévenir les conflits entre les queries exécutées simultanément. De nombreux data warehouses s'appuient sur des formats propriétaires, ce qui limite souvent la prise en charge du machine learning. L'entreposage des données sur Databricks tire parti des capacités d'un lakehouse Databricks et de Databricks SQL. Pour plus d'informations, consultez l'entreposage des données sur Databricks.
Propulsés par les avancées technologiques en matière de stockage de données et animés par des augmentations exponentielles des types et du volume de données, les data lakes se sont généralisés au cours de la dernière décennie. Les data lakes stockent et traitent les données à moindre coût et efficacement. Les data lakes sont souvent définis par opposition aux data warehouses : un data warehouse fournit des données propres et structurées pour l'analytique BI, tandis qu'un data lake stocke de manière permanente et à moindre coût des données de toute nature, dans n'importe quel format. De nombreuses organisations utilisent des data lakes pour la Data Science et le Machine Learning, mais pas pour les rapports BI en raison de leur nature non validée.
Le data lakehouse combine les avantages des data lakes et des data warehouses et offre les éléments suivants :
- Accès ouvert et direct aux données stockées dans des formats de données standard.
- Protocoles d'indexation optimisés pour le Machine Learning et la Data Science.
- Faible latence des query et haute fiabilité pour la BI et l'analytique avancée.
En combinant une couche de métadonnées optimisée avec des données validées stockées dans des formats standard dans le stockage d'objets cloud, le Data Lakehouse vous permet de travailler à partir des mêmes données et dans la même plateforme pour différents cas d'utilisation.
Étape suivante
Pour en savoir plus sur les principes et les meilleures pratiques d'implémentation et d'exploitation d'un lakehouse à l'aide de Databricks, consultez Introduction au framework Well-Architected de Databricks.