Idées de solution
Cet article présente une idée de solution. Votre architecte cloud peut s’appuyer sur ces conseils pour visualiser les principaux composants d’une implémentation typique de cette architecture. Utilisez cet article comme point de départ pour concevoir une solution bien conçue qui répond aux exigences spécifiques de votre charge de travail.
Cette solution décrit l’architecture moderne des données. Azure Databricks forme le cœur de la solution. Cette plateforme fonctionne en toute transparence avec d’autres services, tels qu’Azure Data Lake Storage Gen2, Microsoft Fabric et Power BI.
Apache® et Apache Spark™ sont soit des marques déposées, soit des marques commerciales d’Apache Software Foundation aux États-Unis et/ou dans d’autres pays. L’utilisation de ces marques n’implique aucune approbation de l’Apache Software Foundation.
Architecture
Téléchargez un fichier Visio de cette architecture.
Dataflow
Azure Databricks ingère des données brutes de streaming à partir d’Azure Event Hubs à l’aide de tables Delta Live.
Fabric Data Factory charge les données de lot brutes dans Data Lake Storage Gen2.
Pour le stockage des données :
Data Lake Storage Gen2 héberge des données de tous types (structurées, non structurées et semi-structurées). Il stocke également les données par lots et en streaming.
Delta Lake forme la couche organisée du lac de données. Il stocke les données affinées dans un format open source.
Azure Databricks fonctionne bien avec une architecture en médailles qui organise les données en couches :
- Bronze : contient les données brutes.
- Argent : contient les données filtrées et nettoyées.
- Or : stocke les données agrégées qui sont utiles pour l’analytique métier.
La plateforme analytique ingère les données à partir de sources de données en streaming et par lots disparates. Les scientifiques des données utilisent ces données pour effectuer les tâches suivantes :
- Préparation des données.
- Exploration des données.
- Préparation du modèle.
- Entraînement du modèle.
MLflow gère le suivi des paramètres, des métriques et des modèles dans les exécutions de code de science des données. Les possibilités de développement sont flexibles :
- Le code peut être en SQL, Python, R et Scala.
- Le code peut utiliser des bibliothèques et frameworks open source connus, tels que Koalas, Pandas et scikit-learn, qui sont préinstallés et optimisés.
- Les praticiens peuvent optimiser les performances et le coût grâce à des options de calcul mononœud et à multinœud.
Les modèles Machine Learning sont disponibles dans plusieurs formats :
- Azure Databricks stocke les informations sur les modèles dans le registre de modèles MLflow. Le registre rend les modèles disponibles via des API de traitement par lots, de streaming et REST.
- La solution peut également déployer les modèles sur Azure Kubernetes Service (AKS) ou les services web Azure Machine Learning.
Les services qui utilisent les données se connectent à une source de données sous-jacente unique pour garantir la cohérence. Par exemple, les utilisateurs peuvent exécuter des requêtes SQL sur le lac de données avec Azure Databricks SQL Warehouses. Ce service :
- Fournit un éditeur de requête et un catalogue, l’historique des requêtes, un tableau de bord de base et des alertes.
- Utilise la sécurité intégrée qui comprend des autorisations au niveau des lignes et des colonnes.
- Utilise un moteur Delta de technologie Photon pour accélérer les performances.
Les utilisateurs peuvent mettre en miroir des jeux de données gold à partir du catalogue Databricks Unity dans Fabric. la mise en miroir Databricks dans Fabric permettre aux utilisateurs de s’intégrer facilement sans déplacement de données ni réplication de données.
Power BI génère des rapports et des tableaux de bord analytiques et historiques à partir de la plateforme de données unifiée. Ce service utilise ces fonctionnalités quand il fonctionne avec Azure Databricks :
- Un connecteur Azure Databricks intégré pour la visualisation des données sous-jacentes.
- Les pilotes JDBC (Java Database Connectivity) et ODBC (Open Database Connectivity) optimisés.
- Avec la mise en miroir Databricks dans Fabric, vous pouvez tirer parti de Direct Lake pour charger vos modèles sémantiques PBI pour des requêtes de performances plus élevées.
La solution utilise Unity Catalog et les services Azure pour la collaboration, les performances, la fiabilité, la gouvernance et la sécurité :
Databricks Unity Catalog fournit des fonctionnalités de contrôle d’accès, d’audit, de traçabilité et de découverte de données centralisées dans les espaces de travail Azure Databricks.
Microsoft Purview fournit des services de découverte des données, une classification des données sensibles et des insights de gouvernance sur le patrimoine de données.
Azure DevOps offre une intégration continue et un déploiement continu (CI/CD) et d’autres fonctionnalités de gestion de versions intégrées.
Azure Key Vault gère les secrets, les clés et les certificats de manière sécurisée.
Le provisionnement Microsoft Entra ID et SCIM fournit l’authentification unique (SSO) pour les utilisateurs et groupes Azure Databricks. Azure Databricks prend en charge l’attribution automatique d’utilisateurs avec Microsoft Entra ID pour les tâches suivantes :
- Création d’utilisateurs et de groupes.
- Attribuer un niveau d’accès à chaque utilisateur
- Supprimer des utilisateurs et leur refuser l’accès
Azure Monitor collecte et analyse la télémétrie des ressources Azure. En identifiant les problèmes de manière proactive, ce service optimise les performances et la fiabilité.
Microsoft Cost Management fournit des services de gouvernance financière pour les charges de travail Azure.
Composants
Cette solution utilise les composants suivants :
Composants principaux
Azure Databricks est une plateforme d’analytique des données qui utilise des clusters Spark pour traiter des flux de données volumineux. Il nettoie et transforme les données non structurées, les combine avec des données structurées et peut entraîner et déployer des modèles Machine Learning. Dans cette architecture, Databricks sert d’outil central pour l’ingestion, le traitement et le service des données, fournissant un environnement unifié pour gérer l’ensemble du cycle de vie des données.
Azure Databricks SQL Warehouse sont des ressources de calcul qui vous permettent d’interroger et d’explorer des données sur Databricks. Dans cette architecture, vous pouvez tirer parti des points de terminaison SQL pour vous connecter directement à vos données à partir de Power BI.
Azure Databricks Delta Live Tables est une infrastructure déclarative permettant de créer des pipelines de traitement de données fiables, maintenables et testables. Dans cette architecture, Delta Live Tables vous aide à définir des transformations à effectuer sur vos données et à gérer l’orchestration des tâches, la gestion des clusters, la surveillance, la qualité des données et la gestion des erreurs dans Databricks.
Microsoft Fabric est une plateforme d’analytique et de données de bout en bout conçue pour les entreprises qui ont besoin d’une solution unifiée. La plateforme offre des services tels que l’ingénierie des données, Data Factory, Data Science, Real-Time Analytics, l’entrepôt de données et les bases de données. Dans cette architecture, nous mettons en miroir les tables de catalogue Unity dans Fabric et utilisons Direct Lake dans Power BI pour de meilleures performances.
Data Factory dans Microsoft Fabric vous permet d’utiliser une expérience d’intégration de données moderne pour ingérer, préparer et transformer des données à partir d’un ensemble complet de sources de données dans Fabric. Dans cette architecture, nous tirons parti des connecteurs intégrés à plusieurs sources de données pour l’ingestion rapide dans ADLS ou OneLake, où Databricks récupérera et transformera ultérieurement les données de lot.
Event Hubs est une plateforme de streaming Big Data entièrement gérée. En tant que paaS (Platform as a Service), il fournit des fonctionnalités d’ingestion d’événements. Dans cette architecture, Event Hubs est utilisé pour la diffusion en continu de données, auxquelles Databricks peut se connecter et traiter à l’aide de Spark Streaming ou delta Live Tables.
Data Lake Storage Gen2 est un lac de données évolutif et sécurisé pour les analyses hautes performances. Il gère plusieurs pétaoctets de données et prend en charge des centaines de gigaoctets de débit. ADLS peut stocker des données structurées, semi-structurées et non structurées. Dans cette architecture, nous utilisons ADLS pour stocker des données de traitement par lots et de diffusion en continu.
Machine Learning est un environnement cloud qui vous aide à créer, déployer et gérer des solutions d’analyse prédictive. Avec ces modèles, vous pouvez prévoir le comportement, les résultats et les tendances. Dans cette architecture, AML peut tirer parti des données transformées par Databricks pour l’apprentissage et l’inférence de modèles.
AKS est un service Kubernetes hautement disponible, sécurisé et complètement managé. AKS facilite le déploiement et la gestion des applications conteneurisées. Dans cette architecture, AKS est utilisé pour héberger des modèles Machine Learning dans un environnement conteneurisé pour l’inférence évolutive.
Delta Lake est une couche de stockage qui utilise un format de fichier ouvert. Cette couche s’exécute sur le stockage cloud, par exemple Data Lake Storage Gen2. Delta Lake prend en charge le versioning des données, la restauration et les transactions pour la mise à jour, la suppression et la fusion de données. Dans cette architecture, Delta fonctionne comme format de fichier principal pour l’écriture et la lecture de données à partir d’ADLS.
MLflow est une plateforme open source permettant de gérer le cycle de vie du Machine Learning. Ses composants supervisent les modèles de Machine Learning pendant l’entraînement et l’exécution. Dans cette architecture, similaire à AML, vous pouvez tirer parti de MLflow dans Databricks pour gérer votre cycle de vie ML, notamment l’entraînement et l’inférence à l’aide des données du catalogue Unity que vous venez de transformer dans Databricks.
Composants de création de rapports et de gouvernance
Databricks Unity Catalog fournit des fonctionnalités centralisées de contrôle d’accès, d’audit, de traçabilité et de découverte des données dans les espaces de travail Azure Databricks. Dans cette architecture, Unity Catalog fonctionne comme l’outil principal dans Databricks pour gérer et sécuriser l’accès aux données.
Power BI est une collection de services logiciels et d’applications. Ces services créent et partagent des rapports qui se connectent et visualisent des sources de données non liées. Avec Azure Databricks, Power BI peut fournir une détermination de la cause racine et une analyse des données brutes. Dans cette architecture, Power BI est utilisé pour créer des tableaux de bord et des rapports qui fournissent des insights sur les données traitées par Databricks et Fabric.
Microsoft Purview gère les données locales, multiclouds et SaaS (software as a service). Ce service de gouvernance gère les cartes de paysage des données. Les fonctionnalités incluent la découverte automatisée des données, la classification des données sensibles et la traçabilité des données. Dans cette architecture, Purview est utilisé pour analyser et suivre les données ingérées dans le catalogue Unity, Fabric, Power BI et ADLS.
Azure DevOps est une plateforme d’orchestration DevOps. Cette suite SaaS fournit des outils et des environnements pour la création, le déploiement et la collaboration sur des applications. Dans cette architecture, Azure DevOps est utilisé pour automatiser le déploiement de l’infrastructure Azure. En outre, vous pouvez tirer parti de GitHub pour l’automatisation et le contrôle de version du code Databricks, pour une meilleure collaboration, le suivi des modifications et l’intégration avec des pipelines CI/CD.
Azure Key Vault stocke et contrôle l’accès aux secrets tels que les jetons, mots de passe et clés API. Key Vault crée et contrôle également des clés de chiffrement et gère les certificats de sécurité. Dans cet architecure, AKV est utilisé pour stocker des clés SAS à partir d’ADLS. Ces clés sont ensuite utilisées dans Databricks et d’autres services pour l’authentification.
Microsoft Entra ID offre des services de gestion des identités et des accès basés sur le cloud. Ces fonctionnalités permettent aux utilisateurs de se connecter et d’accéder aux ressources. Dans cet architecure, Entra ID est utilisé pour authentifier et autoriser les utilisateurs et les services dans Azure.
SCIM vous permet de configurer l’approvisionnement sur le compte Azure Databricks à l’aide de l’ID Microsoft Entra. Dans cette architecture, elle est utilisée pour gérer les utilisateurs accédant aux espaces de travail Databricks.
Azure Monitor collecte et analyse des données dans les environnements et ressources Azure. Ces données incluent la télémétrie des applications, comme les métriques de performances et les journaux d’activité. Dans cette architecture, Azure Monitor est utilisé pour surveiller l’intégrité des ressources de calcul dans Databricks et Azure Machine Learning, ainsi que d’autres composants qui envoient des journaux à Azure Monitor.
Microsoft Cost Management gère les dépenses cloud. En utilisant des budgets et des recommandations, ce service organise les dépenses et montre comment réduire les coûts. Dans cette architecture, Microsoft Cost Management est utilisé pour surveiller et contrôler le coût de l’ensemble de la solution.
Détails du scénario
Les architectures de données modernes répondent à ces critères :
- Unification des charges de travail de données, d’analytique et d’intelligence artificielle.
- Exécution efficace et fiable à n’importe quelle échelle.
- Fourniture d’insights par le biais de tableaux de bord analytiques, de rapports opérationnels ou d’analytiques avancées.
Cette solution décrit une architecture de données moderne qui atteint ces objectifs. Azure Databricks forme le cœur de la solution. Cette plateforme fonctionne de façon transparente avec d’autres services. Ensemble, ces services offrent une solution qui présente les qualités suivantes :
- Simple : l’analytique unifiée, la science des données et le Machine Learning simplifient l’architecture des données.
- Ouverte : la solution prend en charge le code open source, les standards ouverts et les frameworks ouverts. Elle fonctionne également avec les langages de programmation, les bibliothèques et les environnements de développement intégrés (IDE) connus. Par le biais des connecteurs natifs et des API, la solution fonctionne également avec un large choix d’autres services.
- Collaborative : les ingénieurs Données, les scientifiques des données et les analystes travaillent en collaboration avec cette solution. Ils peuvent utiliser des tableaux de bord, des IDE, des notebooks collaboratifs et d’autres outils pour accéder aux données sous-jacentes communes et les analyser.
Cas d’usage potentiels
Le système créé par Swiss Re Group pour sa division Property & Casualty Reinsurance a inspiré cette solution. Outre le secteur de l’assurance, tout domaine qui utilise le Big Data ou le Machine Learning peut tirer parti de cette solution. Voici quelques exemples :
- Secteur de l’énergie
- Vente et e-commerce
- Banque et finances
- Médecine et soins de santé
Étapes suivantes
- Tutoriel : Créer un pipeline de données de bout en bout dans Databricks
- tutoriel : Exécuter vos premières tables delta dynamiques
Ressources associées
Pour découvrir les solutions associées, consultez les informations suivantes :
Guides sur l’architecture connexe
- Superviser Azure Databricks avec Azure Monitor
- Comparer les produits de Machine Learning de Microsoft
- Choisir une technologie de traitement du langage naturel
- Sélectionner une technologie de traitement de flux