Partager via


Présentation des configurations Databricks Azure

Azure Databricks est une plateforme basée sur le cloud qui combine les meilleures fonctionnalités de environnement et de la science des données. Il vous permet de créer, de gérer et d’analyser des pipelines de données à l’aide de Apache Spark, un framework open source rapide et évolutif pour le traitement des big data. Databricks fournit également un espace de travail collaboratif permettant aux scientifiques et aux ingénieurs des données de travailler ensemble sur des projets d’intelligence artificielle et de Machine Learning.

Si vous travaillez dans le secteur public ou gouvernemental, cette documentation d’architecture de référence fournit des conseils avisés sur l’utilisation de Azure Databricks avec une zone d’atterrissage souveraine ou un déploiement de zone d’atterrissage Azure avec initiatives de politique de base de souveraineté appliquées.

La documentation produit Databricks Azure offre des informations détaillées sur divers articles. Ce document complète la documentation en vous donnant des recommandations organisées sur les concepts et options clés pour la configuration d’un Azure Databricks Connecter.

Principales caractéristiques de Azure Databricks

Azure Databricks dispose d’un riche ensemble de fonctionnalités, mais pour cette architecture de référence, nous nous concentrons sur ses éléments d’infrastructure. Azure Databricks propose :

  • Carnets interactifs : utilisez des carnets pour écrire du code en Python, Scala, SQL ou R, et visualisez les résultats avec des tableaux et des graphiques. Partager et commentez les notebooks avec les membres de l’équipe et intégrez-les à des outils populaires comme GitHub et Azure DevOps.

  • Options de calcul : Azure Databricks fournit diverses options de calcul pour prendre en charge les charges de travail de engineering données, de science des données et d’analyse de données. Ces options incluent le calcul sans serveur évolutif à la demande pour les notebooks et les tâches, le calcul provisionné pour l’analyse polyvalente et les tâches automatisées, ainsi que les entrepôts SQL pour l’exécution des commandes SQL. Les pools d’instances offrent des instances inactives et prêtes à l’emploi pour réduire les temps de démarrage et de mise à l’échelle automatique, améliorant ainsi l’efficacité dans différents scénarios de traitement de données.

  • Intégration de données : accès facile à diverses sources et destinations de données, telles que le stockage Blob Azure, Azure Data Lake Storage, la base de données Azure SQL, Azure Synapse Analytics, Azure Cosmos DB, et bien plus encore. Utilisez Delta Lake, une solution de lac de données fiable et performante qui prend en charge les transactions ACID et l’application des schémas.

  • Machine Learning : créez, entraînez et déployez des modèles Machine Learning à l’aide de frameworks populaires tels que TensorFlow, PyTorch, Scikit-learn et XGBoost. Utilisez MLflow, une plateforme open source pour gérer le cycle de vie Machine Learning, pour suivre les expériences, enregistrer les métriques et déployer des modèles.

  • Sécurité de l’entreprise : accédez à vos données et traitez-les en toute sécurité, avec des fonctionnalités telles que le contrôle d’accès basé sur les rôles, le chiffrement, l’audit et la conformité. Intégrez Azure Databricks avec Microsoft Entra ID, Azure Key Vault et Azure Private Link pour la protection de l’identité et des données.

  • Gouvernance et partage des données : Unity Catalog simplifie le partage des données au sein des organisations et sécurise les analyses dans le cloud en fournissant une version gérée de Delta Sharing pour le partage externe et un modèle de gouvernance des données unifié pour les données lakehouse.

Architecture Databricks de haut niveau

Azure Databricks fonctionne à partir d’un plan de contrôle et d’un plan de calcul. L’architecture de référence recommande des options de configuration dans chacun de ces plans de contrôle. Le diagramme suivant décrit l’architecture globale de Azure Databricks.

Capture d’écran de l’architecture Databricks de haut niveau.

Plan de contrôle

Le plan de contrôle est le couche de Azure Databricks qui gère le cycle de vie des clusters et des travaux, ainsi que l’authentification et l’autorisation des utilisateurs et l’accès aux données. Le plan de contrôle inclut les services back-end gérés par Azure Databricks dans votre compte Azure Databricks. L’application Web est dans le plan de contrôle.

Le plan de contrôle s’exécute dans un abonnement Azure appartenant à Azure Databricks et communique avec les plans de calcul classiques et sans serveur via des API sécurisées. Le plan de contrôle fournit également l’interface Web et les API REST permettant aux utilisateurs d’interagir avec Azure Databricks.

Plan de calcul

Le plan de calcul est l’endroit où vos données sont traitées. Il existe deux types de plans de calcul : sans serveur et classique. Le plan de calcul sans serveur offre des ressources instantanées et élastiques, tandis que le plan de calcul classique s’appuie sur une infrastructure pré-provisionnée.

Plan de calcul sans serveur

Le calcul sans serveur est idéal pour les requêtes ad hoc, les blocs-notes et les charges de travail de courte durée. Par exemple, vous pouvez utiliser le calcul sans serveur pour exécuter des commandes SQL dans des blocs-notes ou exécuter des tâches légères. Dans le plan de calcul sans serveur, les ressources s’exécutent dans un calcul couche au sein du compte Databricks Azure.

Azure Databricks crée un plan de calcul sans serveur dans la même région Azure que le plan de calcul classique de votre espace de travail. Il exploite un pool de serveurs, situés dans le compte de Databricks, exécutant des conteneurs Kubernetes qui peuvent être attribués à un utilisateur en quelques secondes. Pour plus d’informations, voir Annonce de Databricks Serverless SQL : une plateforme instantanée, gérée, sécurisée et prête pour la production pour les charges de travail SQL - Le blog de Databricks.

La plate-forme de calcul étend rapidement le cluster avec davantage de serveurs lorsque les utilisateurs exécutent des rapports ou des requêtes simultanément pour gérer la charge simultanée. Databricks gère l’ensemble de la configuration du serveur et effectue automatiquement les correctifs et les mises à niveau selon les besoins. Le calcul sans serveur est facturé à l’utilisation (par exemple, par exécution de requête ou par exécution de tâche).

L’image montre un plan de calcul sans serveur.

Chaque serveur exécute une configuration sécurisée et tous les traitements sont sécurisés par trois couches d’isolation : le conteneur Kubernetes hébergeant l’environnement d’exécution, la machine virtuelle hébergeant le conteneur et le réseau virtuel pour l’espace de travail. Chaque couche est isolé dans un espace de travail sans partage ni trafic inter-réseaux autorisé.

Les conteneurs utilisent des configurations renforcées, les machines virtuelles sont arrêtées et non réutilisées, et le trafic réseau est limité aux nœuds du même cluster. Toutes les données de calcul sont éphémères, dédiées exclusivement à cette charge de travail et effacées en toute sécurité une fois la charge de travail terminée.

Tout le trafic entre vous, le plan de contrôle, le plan de calcul et les services cloud est acheminé via le réseau mondial de Azure, et non via l’Internet public. Le plan de calcul sans serveur pour les entrepôts sans serveur SQL n’utilise pas la connectivité de lien privé back-end Azure configurable par le client. Le plan de contrôle Databricks Azure se connecte au plan de calcul sans serveur avec mTLS avec un accès IP autorisé uniquement pour l’adresse IP du plan de contrôle.

Tout le stockage connecté est protégé par le cryptage AES-256 standard de l’industrie et tout le trafic entre l’utilisateur, le plan de contrôle, le plan de calcul et les services cloud est crypté avec au moins TLS 1.2. Les entrepôts sans serveur SQL n’utilisent pas de clés gérées par le client pour les disques gérés.

Les charges de travail n’ont aucun privilège ni aucune information d’identification pour les systèmes en dehors du champ d’application de cette charge de travail et l’accès aux données s’effectue via des jetons de courte durée (une heure). Ces jetons sont transmis de manière sécurisée à chaque charge de travail spécifique.

Depuis juin 2024, le calcul confidentiel Azure n’est pas pris en charge pour le calcul sans serveur, mais votre charge de travail est protégée par plusieurs couches d’isolation, comme indiqué dans le diagramme d’isolation du calcul sans serveur Azure.

Pour plus d’informations, voir Déployez vos charges de travail en toute sécurité sur des calculs sans serveur.

Plan de calcul classique

Le plan de calcul classique convient aux tâches de longue durée, aux charges de travail de production et aux besoins en ressources constants. Par exemple, vous pouvez utiliser le calcul provisionné pour les pipelines ETL, la formation Machine Learning et les tâches Connecter.

Un plan de calcul classique dispose d’une isolation naturelle car il s’exécute dans votre propre abonnement Azure. De nouvelles ressources de calcul sont créées et configurées dans le réseau virtuel de chaque espace de travail dans votre abonnement Azure. Les ressources de calcul restent constantes jusqu’à ce qu’elles soient explicitement modifiées et sont facturées en fonction du type d’instance et de la durée. Les clusters peuvent utiliser des clés gérées par le client pour les disques gérés et les instances ponctuelles sont prises en charge.

Azure Les administrateurs Databricks peuvent utiliser des stratégies de cluster pour contrôler de nombreux aspects des clusters, notamment les types d’instances disponibles, les versions de Databricks et les tailles d’instances.

L’injection de réseau virtuel Databricks est une fonctionnalité qui vous permet de déployer les ressources du plan de calcul classique Databricks dans votre propre réseau virtuel. Cette fonctionnalité vous aide à connecter des Databricks à d’autres services de manière plus sécurisée à l’aide de points de terminaison de service ou de points de terminaison privés. Vous pouvez également utiliser le peering de réseau virtuel pour associer le réseau virtuel exécuté par votre espace de travail Databricks Azure à un autre réseau virtuel Azure.