Qu’est-ce qu’un data lakehouse ?
Un data lakehouse est un système de gestion des données qui combine les avantages des lacs de données et des entrepôts de données. Cet article décrit le modèle architectural lakehouse et ce que vous pouvez le faire Azure Databricks.
Qu’est-ce qu’un data lakehouse utilisé pour ?
Un data lakehouse fournit des capacités de stockage et de traitement évolutives pour les organisations modernes qui souhaitent éviter un système isolé pour le traitement de différentes charges de travail, telles que le Machine Learning (ML) et le décisionnel (BI). Un data lakehouse permet d’établir une source unique de vérité, d’éliminer les coûts redondants et de garantir l’actualisation des données.
Les data lakehouses utilisent souvent un modèle de conception de données qui améliore, enrichit et affine les données de façon incrémentielle au fur et à mesure qu’elles passent par des couches de mise en lots et de transformation. Chaque couche du lakehouse peut inclure une ou plusieurs couches. Ce modèle est souvent appelé architecture en médaillon. Pour plus d’informations, consultez Qu’est-ce que l’architecture de lakehouse en médaillon ?
Comment fonctionne le lakehouse Databricks ?
Databricks est basé sur Apache Spark. Apache Spark fournit un moteur massivement évolutif qui s’exécute sur des ressources de calcul découplées du stockage. Pour plus d’informations, consultez Apache Spark sur Azure Databricks
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 du schéma.
- Unity Catalog : une solution de gouvernance affinée et unifiée pour les données et l’intelligence artificielle.
Ingestion de données
Au niveau de la couche d’ingestion, les données par lots ou de diffusion en continu arrivent à partir d’une variété de sources et dans divers formats. Cette première couche logique fournit un emplacement pour l’arrivée de ces données au 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 les données manquantes ou inattendues. Vous pouvez utiliser Unity Catalog pour enregistrer des tables en fonction de votre modèle de gouvernance des données et des limites d’isolation des données requises. Unity Catalog vous permet de suivre la traçabilité de vos données à mesure qu’elles sont transformées et affinées, ainsi que d’appliquer un modèle de gouvernance unifié pour conserver les données sensibles privées et sécurisées.
Traitement, organisation et intégration des données
Une fois votre vérification terminée, vous pouvez commencer à organiser et à affiner vos données. Les scientifiques des données et les praticiens du Machine Learning travaillent fréquemment avec des données à ce stade pour commencer à combiner ou à créer de nouvelles fonctionnalités et pour nettoyer les données. Une fois vos données soigneusement nettoyées, elles peuvent être intégrées et réorganisées dans des tables conçues pour répondre à vos besoins métier particuliers.
Une approche de schéma en écriture, combinée aux fonctionnalités d’évolution du schéma Delta, signifie que vous pouvez apporter des modifications à cette couche sans nécessairement avoir à réécrire la logique en aval qui sert les données à vos utilisateurs finaux.
Service de données
La couche finale sert des données nettoyées et enrichies aux utilisateurs finaux. Les tables finales doivent être conçues pour servir des données pour tous vos cas d’usage. Un modèle de gouvernance unifié signifie que vous pouvez effectuer la traçabilité des données jusqu’à votre source unique de vérité. Les dispositions de données, optimisées pour différentes tâches, permettent aux utilisateurs finaux d’accéder aux données pour les applications Machine Learning, l’ingénierie des données et les rapports décisionnels.
Pour en savoir plus sur Delta Lake, consultez Qu’est-ce que Delta Lake ? Pour en savoir plus sur Unity Catalog, consultez : Qu’est-ce que Unity Catalog ?
Fonctionnalités d’un lakehouse Databricks
Un lakehouse basé sur Databricks remplace la dépendance actuelle vis-à-vis des lacs et entrepôts de données pour les entreprises de données modernes. Voici quelques tâches clés que vous pouvez effectuer :
- Traitement des données en temps réel : traitez les données de diffusion en temps réel pour une analyse et une action immédiates.
- Intégration des 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 du schéma : modifiez le schéma de données au fil du temps pour vous adapter aux besoins métier changeants sans perturber les pipelines de données existants.
- Transformations de données : l’utilisation d’Apache Spark et Delta Lake apporte de la vitesse, de l’extensibilité et de la fiabilité à vos données.
- Analyse et création de rapports de données : exécutez des requêtes analytiques complexes avec un moteur optimisé pour les charges de travail d’entreposage de données.
- Machine Learning et l’IA : appliquez des techniques d’analytique avancées à toutes vos données. Utilisez le ML pour enrichir vos données et prendre en charge d’autres charges de travail.
- Contrôle de version et traçabilité des données : gérez l’historique des versions pour les jeux de données et suivez la traçabilité pour garantir la provenance et la traçabilité des données.
- Gouvernance des données : utilisez un système unifié unique pour contrôler l’accès à vos données et effectuer des audits.
- Partage de données : 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 la dérive en appliquant le Machine Learning aux données de surveillance lakehouse.
Lakehouse vs Lac de données vs Entrepôt de données
Depuis une trentaine d'années, les entrepôts de données alimentent le décisionnel (BI) et ont évolué en tant qu'ensemble de directives de conception pour les systèmes contrôlant le flux de données. Les entrepôts de données d’entreprise optimisent les requêtes pour les rapports de décisionnel, mais peuvent prendre des minutes, voire des heures, pour générer des résultats. Conçus pour les données peu susceptibles de fréquemment changer, les entrepôts de données cherchent à éviter les conflits entre les requêtes exécutées simultanément. De nombreux entrepôts de données s’appuient sur des formats propriétaires, ce qui limite souvent la prise en charge du Machine Learning. L’entrepôt de données sur Azure Databricks tire parti des fonctionnalités d’un lakehouse Databricks et Databricks SQL. Pour plus d’informations, consultez Qu’est-ce que l’entrepôt de données sur Azure Databricks ?.
Forts des progrès technologiques en matière de stockage des données et pilotés par l'augmentation exponentielle des types et des volumes de données, les lacs de données se sont généralisés au cours de la dernière décennie. Les lacs de données stockent et traitent les données de manière économique et efficace. Les lacs de données sont souvent définis en opposition aux entrepôts de données. Un entrepôt de données fournit des données propres et structurées à des fins d’analyse décisionnelle, tandis qu'un lac de données stocke de manière permanente et économique des données de toute nature et de tout format. De nombreuses organisations utilisent les lacs de données pour la science des données et le Machine Learning, mais pas pour le reporting décisionnel en raison de leur nature non validée.
Un data lakehouse combine les avantages des lacs de données et des entrepôts de données et fournit :
- Accès direct aux données stockées dans des formats de données standard.
- Protocoles d’indexation optimisés pour le Machine Learning et la science des données.
- Faible latence des requêtes et haute fiabilité pour le décisionnel et les analyses avancées.
En combinant une couche de métadonnées optimisées avec des données validées stockées dans des formats standard au sein d’un stockage d’objets cloud, le data lakehouse permet aux scientifiques des données et ingénieurs ML de créer des modèles à partir de données identiques à celles qui alimentent les rapports BI.
Étape suivante
Pour découvrir plus d’informations sur les principes et les meilleures pratiques pour l’implémentation et l’exploitation d’un lakehouse en tirant parti de Databricks, consultez Présentation du data lakehouse well-architected.