Gérer le calcul serverless

Cette page explique comment gérer l’accès au calcul serverless et comment mettre en place des limites de débit serverless. Les administrateurs d’espaces de travail gèrent le calcul serverless en utilisant des objets de calcul serverless intégrés. Un objet de calcul serverless est un type de ressource qui définit la limite d’autorisation pour les charges de travail serverless. Votre espace de travail obtient automatiquement deux objets de calcul par défaut :

  • Calcul interactif par défaut : contrôle l’accès aux notebooks et à Databricks Connect.
  • Calcul automatisé par défaut : contrôle l’accès aux tâches et aux pipelines déclaratifs Spark sur Lakeflow.

Par défaut, tous les utilisateurs de l’espace de travail peuvent utiliser sur les deux objets, de sorte que les charges de travail existantes continuent à s’exécuter sans aucune modification. Un administrateur d’espace de travail peut supprimer des utilisateurs ou des groupes d’un objet pour restreindre l’accès. Un utilisateur qui perd l’accès voit l’option de calcul serverless comme indisponible dans ses surfaces de produit.

Gérer l’accès à l’informatique sans serveur

Pour contrôler qui a accès au calcul serverless, les administrateurs de l’espace de travail peuvent modifier les autorisations sur les objets de calcul interactif par défaut et de calcul automatisé par défaut . Les administrateurs de l’espace de travail disposent de l’autorisation Gérer par défaut, mais ils peuvent accorder l’autorisation à n’importe quel utilisateur. Ces objets de calcul par défaut ne peuvent pas être renommés ou supprimés.

Onglet Serverless de la page Calcul répertoriant les objets de calcul interactifs et automatisés par défaut

Chaque objet de calcul serverless prend en charge deux niveaux d’autorisation :

Autorisation Vous permet de
Peut être utilisé Exécutez des charges de travail sur cette ressource de calcul
Peut gérer Exécuter des charges de travail sur ce calcul et modifier les autorisations du calcul

Vous pouvez également gérer par programmation les autorisations des objets de calcul sans serveur à l’aide de l’API Account Access Control.

Restreindre l’accès à l’interactif sans serveur

Pour limiter qui peut utiliser Serverless pour les notebooks et Databricks Connect :

  1. Cliquez sur Calcul dans la barre latérale de l’espace de travail.
  2. Dans l’onglet Serverless, cliquez sur le menu kebab Icône du menu kebab. à côté de Calcul interactif par défaut, puis cliquez sur Modifier les autorisations.
  3. Supprimez le groupe Tous les utilisateurs ou le groupe qui inclut tous les utilisateurs de l’espace de travail.
  4. Ajoutez uniquement les utilisateurs, groupes ou principaux de service spécifiques que vous souhaitez autoriser.

Si vous révoquez les autorisations serverless interactives d’un utilisateur, les notebooks déjà attachés à serverless ne pourront plus se connecter lorsque l’utilisateur exécutera une cellule, et l’option Serverless n’apparaîtra plus parmi les options disponibles dans le sélecteur de calcul du notebook. S’ils tentent d’exécuter Databricks Connect, la demande de connexion échoue avec une erreur indiquant que l’utilisateur n’a pas accès à serverless.

Restreindre l’accès aux tâches serverless et aux pipelines serverless

Pour limiter les utilisateurs pouvant utiliser serverless dans les travaux et les pipelines :

  1. Cliquez sur Calcul dans la barre latérale de l’espace de travail.
  2. Dans l’onglet Serverless, cliquez sur l’icône du menu kebab Icône du menu kebab. située à côté de Calcul automatisé par défaut, puis cliquez sur Modifier les autorisations.
  3. Supprimez le groupe Tous les utilisateurs ou le groupe qui inclut tous les utilisateurs de l’espace de travail.
  4. Ajoutez uniquement les utilisateurs, groupes ou principaux de service spécifiques que vous souhaitez autoriser.

Si vous révoquez les permissions automatisées serverless d’un utilisateur, tous les jobs ou pipelines existants de l’utilisateur fonctionnant sur serverless ne fonctionneront pas. L’utilisateur voit un message d’erreur s’il tente d’exécuter un travail sur serverless.

Avant de révoquer l’accès d’un utilisateur au calcul automatisé par défaut, auditez les travaux et pipelines dont disposent les utilisateurs concernés. La requête suivante identifie les charges de travail serverless récentes pour un utilisateur spécifique :

SELECT *
FROM system.billing.usage
WHERE usage_date >= date_add(now(), -30)
  AND billing_origin_product IN ('JOBS', 'DLT')
  AND identity_metadata.run_as = '<user_email>';

Vérifiez la usage_metadata colonne pour afficher les ressources affectées, telles que les ID de travail et les ID de pipeline.

Auditer l’utilisation du serverless

Les enregistrements de facturation sans serveur incluent un serverless_compute_id champ dans usage_metadata. Utilisez-la pour suivre l’objet de calcul sur lequel une charge de travail s’est exécutée :

SELECT
  usage_metadata.serverless_compute_id,
  identity_metadata.run_as,
  SUM(usage_quantity) AS total_dbus
FROM system.billing.usage
WHERE billing_origin_product IN ('JOBS', 'DLT', 'INTERACTIVE')
  AND usage_metadata.serverless_compute_id IS NOT NULL
  AND usage_date >= date_add(now(), -30)
GROUP BY 1, 2
ORDER BY 3 DESC;

Fonctionnalités de contrôle d’accès au calcul sans serveur prises en charge

Les fonctionnalités suivantes sont intégrées aux contrôles d’accès au calcul sans serveur.

Interactive (calcul interactif par défaut)

  • Notebooks et notebooks serverless avec GPU
  • Databricks Connect

Automatisé (calcul automatisé par défaut)

  • Tâches et tâches GPU sans serveur
  • Pipelines déclaratifs Spark sur Lakeflow

Fonctionnalités de contrôle d’accès au calcul serverless non prises en charge

Les fonctionnalités suivantes ne sont pas intégrées aux contrôles d’accès au calcul sans serveur :

  • Databricks SQL (DBSQL)
  • Inférence par lots (ai_query())
  • Service de modèles
  • Points de terminaison avec débit provisionné de l’API Foundation Model
  • Lakebase
  • Databricks Apps
  • Évaluation de l’agent et données synthétiques
  • Indexation pour la recherche vectorielle
  • Optimisation prédictive
  • Lakehouse Monitoring
  • Contrôle d’accès précis sur le calcul dédié. L’accès au calcul dédié détermine si un utilisateur peut utiliser un contrôle d’accès à grain précis.

Pour toute fonctionnalité non répertoriée ici, contactez votre équipe de compte Azure Databricks pour vous demander son état.

Limitations du contrôle d’accès sans serveur

Important

En cas de perturbation du service, les vérifications d’accès peuvent échouer à s’ouvrir, et des utilisateurs qui se verraient autrement refuser l’accès pourraient être en mesure de lancer des charges de travail serverless. Cette fonctionnalité vise à aider à réguler l’accès au calcul sans serveur. N’utilisez pas cette fonctionnalité pour garantir un plafond absolu de dépenses sur les montants facturés finaux. Azure Databricks n’est pas responsable des coûts encourus par les charges de travail qui s’exécutent lors d’un tel événement.

  • Vous ne pouvez pas renommer ou supprimer des objets de calcul par défaut.
  • Une tâche ou un pipeline déjà configuré pour s’exécuter en mode serverless cesse de fonctionner pour tout utilisateur qui perd l’autorisation Peut utiliser du Calcul automatisé par défaut. Passez en revue les charges de travail actives avant de supprimer l’accès d’un utilisateur.
  • Le calcul d’arrière-plan (tâches initiées par le système) n’est pas soumis aux contrôles d’accès aux ressources de calcul serverless.

Fixez des limites de débit pour le calcul serverless

Important

Les limites de tarif sont en aperçu privé. Pour rejoindre cette préversion, contactez votre équipe de compte Azure Databricks. Après avoir rejoint l’aperçu, les administrateurs de l’espace de travail peuvent l’activer depuis la page des prévisualisations en utilisant le réglage Limitant de Débit de Calcul Serverless .

Une limite plafonne les dépenses d’une charge de travail automatisée en restreignant jusqu’où elle peut être mise à l’échelle automatiquement. Les administrateurs d’espaces de travail peuvent créer des objets de calcul automatisés personnalisés et attribuer à chacun une limite de fréquence. Lorsqu’une charge de travail s’exécute sur un objet de calcul ayant une limite de débit, l’autoscaler serverless ne fait pas évoluer les exécuteurs Spark de la charge de travail au-delà de la taille définie sur l’objet.

Les limites de taux ne s’appliquent qu’aux charges de travail automatisées (jobs et pipelines déclaratifs Spark sur Lakeflow). Les charges de travail interactives (notebooks et Databricks Connect) ne sont pas limitées par le débit.

Une limite de taux s’exprime sous forme de taille. Chaque taille correspond à un plafond approximatif du nombre de DBU qu’une charge de travail peut consommer par heure. La limite de taux limite uniquement l’autoscaling de Spark Executor. Il ne limite pas les autres composants d’une charge de travail, comme le pilote, les machines virtuelles REPL, les GPU, ou les actualisations de tableaux matérialisés et de streaming.

La limite de taux s’applique par charge de travail. Chaque tâche et chaque pipeline utilisant un objet de calcul sont limités indépendamment. Deux tâches utilisant le même objet de calcul reçoivent chacune la limite complète. Au sein d’un même poste, le plafond est partagé entre toutes les tâches du poste.

Exigences de limite de taux

  • Pour créer et gérer des objets de calcul serverless, vous devez être administrateur d’espace de travail ou utilisateur disposant de création de cluster sans restriction.
  • Les limites de débit sans serveur nécessitent Azure Databricks Runtime 17.3.1 ou une version supérieure. Les jobs utilisent automatiquement la dernière runtime. Pour les pipelines Spark déclaratifs sur Lakeflow, activez le runtime du canal Preview.

Créer un calcul serverless avec une limite de débit

  1. Cliquez sur Calcul dans la barre latérale de l’espace de travail.
  2. Dans l’onglet Serverless , cliquez sur Créer un calcul serverless.
  3. Entrez un nom.
  4. Pour la taille, sélectionnez la limite de taux à appliquer, de Petit à 2X-Large. Laissez-le régler sur Default pour utiliser la limite par défaut de votre espace de travail.
  5. Cliquez sur Créer.

La boîte de dialogue Créer un nouveau calcul serverless automatisé avec un nom entré et la taille réglée sur Moyen

Le nouvel objet de calcul apparaît dans l’onglet Serverless avec un type d’Automatisé. Pour permettre aux utilisateurs d’exécuter des charges de travail dessus, accordez-leur la mention « Peut utiliser ou peut gérer » comme décrit dans Gérer l’accès au calcul sans serveur. Vous ne pouvez pas modifier la taille d’un objet de calcul par défaut.

Tailles des limites de taux

Chaque taille correspond à un plafond approximatif horaire de la DBU :

Taille Plafond approximatif
Petite ~60 DBU par heure
Medium ~120 DBU par heure
Grande ~240 DBU par heure
X-Large ~480 DBU par heure
2X-Large ~960 DBU par heure

Ces caps sont des seuils directionnels. L’utilisation réelle peut fluctuer autour d’eux en raison de la variabilité inhérente à l’infrastructure serverless.

Choisir par défaut applique la limite par défaut de votre espace de travail : moyen pour les espaces de travail haut de gamme, ou grand pour les espaces de travail de niveau entreprise. Ces derniers correspondent aux plafonds maximaux d’autoscaling par défaut existants pour les charges de travail automatisées sans serveur.

Exécuter une charge de travail sur des ressources de calcul à débit limité

Un utilisateur avec Peut être utilisé sur un objet de calcul peut le sélectionner lors de la configuration d’un travail ou d’un pipeline. La charge de travail s’exécute alors en dessous de la limite de débit du calcul. Si une charge de travail ne spécifie pas d’objet de calcul, elle revient au Calcul Automatisé par défaut de votre espace de travail. Si l’utilisateur n’a pas accès à ce code par défaut, la charge de travail ne s’exécute pas.

  • Jobs : Sélectionnez l’objet de calcul serverless au niveau du job, soit dans les paramètres de calcul du job dans l’interface, soit en référant l’ID du calcul dans l’API Jobs. Pour copier l’ID, ouvrez l’objet de calcul dans l’onglet Serverless et cliquez sur Copier l’ID de calcul.
  • Pipelines déclaratifs Spark dans Lakeflow : sélectionnez l’objet de calcul automatisé comme ressource de calcul serverless pour un pipeline dans l’éditeur de Lakeflow.

Lorsqu’une limite de débit limite une charge de travail, vous pouvez voir l’impact dans l’historique des requêtes de la charge de travail, ou pour les pipelines, dans l’interface Lakeflow.

Limites de la limite de taux

  • Les limites de taux limitent uniquement l’autoscaling de Spark Executor. D’autres composants de coût, comme le pilote, les machines virtuelles REPL, les GPU et les actualisations de tableaux en vue matérialisée ou en streaming, ne sont pas plafonnés.
  • Le plafond DBU par heure pour chaque taille est une estimation. L’utilisation réelle peut dépasser la cible en raison de fluctuations modestes de la limite appliquée et de la variabilité inhérente de l’infrastructure serverless.
  • Une charge de travail de taille 2X-Large pourrait être inférieure aux attentes car la taille physique du cluster est limitée à 256 exécuteurs. Si deux charges de travail 2X-Large ou plus sont planifiées sur le même cluster d’exécution, chacune peut atteindre des performances inférieures aux attentes.
  • En raison des détails de la mise en œuvre de la facturation, la même charge de travail peut entraîner une utilisation différente des DBU sous différentes limites de tarif.
  • Vous ne pouvez pas définir de limite de débit sur un objet de calcul par défaut.