Partager via


Optimiser l’utilisation du cluster des pipelines Delta Live Tables avec mise à l’échelle automatique améliorée

Cet article explique comment utiliser la mise à l’échelle automatique améliorée pour optimiser vos pipelines Delta Live Tables sur Azure Databricks.

La mise à l’échelle automatique améliorée est activée par défaut pour tous les nouveaux pipelines.

Pour les pipelines serverless, la mise à l’échelle automatique améliorée est toujours activée et ne peut pas être désactivée. Consultez Configurer un pipeline Delta Live Tables serverless.

Qu’est-ce que la mise à l’échelle automatique améliorée ?

La mise à l’échelle automatique améliorée Databricks optimise l’utilisation du cluster en allouant automatiquement des ressources de cluster en fonction du volume de charge de travail, avec un impact minimal sur la latence de traitement des données de vos pipelines.

La mise à l’échelle automatique améliorée améliore la fonctionnalité de mise à l’échelle automatique du cluster Azure Databricks avec les fonctionnalités suivantes :

  • La mise à l’échelle automatique améliorée implémente l’optimisation des charges de travail de streaming et ajoute des améliorations pour améliorer les performances des charges de travail par lots. La mise à l’échelle automatique améliorée optimise les coûts en ajoutant ou en supprimant des machines à mesure que la charge de travail change.
  • La mise à l’échelle automatique améliorée arrête de manière proactive les nœuds sous-utilisés tout en garantissant qu’aucune tâche n’a échoué pendant l’arrêt. La fonctionnalité de mise à l’échelle automatique du cluster existante met à l’échelle les nœuds uniquement si le nœud est inactif.

La mise à l’échelle automatique améliorée est le mode de mise à l’échelle automatique par défaut lorsque vous créez un pipeline dans l’interface utilisateur Delta Live Tables. Vous pouvez activer la mise à l’échelle automatique améliorée pour les pipelines existants en modifiant les paramètres du pipeline dans l’interface utilisateur. Vous pouvez également activer la mise à l’échelle automatique améliorée lorsque vous créez ou modifiez des pipelines avec l’API Delta Live Tables.

Quelles métriques utilisent la mise à l’échelle automatique améliorée pour prendre une décision de scale-up ou de scale-down ?

La mise à l’échelle automatique améliorée utilise deux métriques pour décider d’un scale-up ou d’un scale-down :

  • Utilisation des emplacements de tâche : il s’agit du ratio moyen entre le nombre d’emplacements de tâches occupés et le nombre total d’emplacements de tâches disponibles dans le cluster.
  • Taille de la file d’attente des tâches : il s’agit du nombre de tâches en attente d’exécution dans les emplacements de tâches.

Activer la mise à l’échelle automatique améliorée pour un pipeline Delta Live Tables

La mise à l’échelle automatique améliorée est le mode de mise à l’échelle automatique par défaut lorsque vous créez un pipeline dans l’interface utilisateur Delta Live Tables. Vous pouvez activer la mise à l’échelle automatique améliorée pour les pipelines existants en modifiant les paramètres du pipeline dans l’interface utilisateur. Vous pouvez également activer la mise à l’échelle automatique améliorée lorsque vous créez ou modifiez un pipeline avec l’API Delta Live Tables.

Pour utiliser la mise à l’échelle automatique améliorée, effectuez l’une des opérations suivantes :

  • Définissez le mode cluster sur La mise à l’échelle automatique améliorée lors de la création ou de la modification d’un pipeline dans l’interface utilisateur Delta Live Tables.
  • Ajoutez le paramètre autoscale à la configuration du cluster de pipeline et définissez le champ mode sur ENHANCED. Consultez Configurer le calcul pour un pipeline Delta Live Tables.

Utilisez les instructions suivantes lors de la configuration de la mise à l’échelle automatique améliorée pour les pipelines de production :

  • Conservez le paramètre Min workers par défaut.
  • Définissez le paramètre Max workers sur une valeur en fonction du budget et de la priorité du pipeline.

L’exemple suivant configure un cluster de mise à l’échelle automatique amélioré avec un minimum de 5 workers et un maximum de 10 workers. max_workers doit être supérieur ou égal à min_workers.

Remarque

  • La mise à l’échelle automatique améliorée est disponible uniquement pour updates les clusters. La mise à l’échelle automatique héritée est utilisée pour maintenance les clusters.
  • La configuration autoscale contient deux modes :
{
  "clusters": [
    {
      "autoscale": {
        "min_workers": 5,
        "max_workers": 10,
        "mode": "ENHANCED"
      }
    }
  ]
}

Si le pipeline est configuré pour l’exécution continue, il est automatiquement redémarré après la modification de la configuration de la mise à l’échelle automatique. Après le redémarrage, attendez-vous à une courte période d’augmentation de la latence. Après cette brève période d’augmentation de la latence, la taille du cluster doit être mise à jour en fonction de votre autoscale configuration et la latence du pipeline doit revenir à ses caractéristiques de latence précédentes.

Limiter les coûts des pipelines qui utilisent la mise à l’échelle automatique améliorée

Remarque

Vous ne pouvez pas configurer les workers pour les pipelines serverless.

La définition du paramètre Max Workers dans le volet Calcul des pipelines définit une limite supérieure pour la mise à l’échelle automatique. La réduction du nombre de workers disponibles peut augmenter la latence pour certaines charges de travail, mais empêche les coûts de ressources de calcul de s’éclater pendant les opérations nécessitant beaucoup de ressources de calcul.

Databricks recommande de paramétrer les paramètres Max Workers pour équilibrer le compromis de latence des coûts pour vos besoins particuliers.

Volet Calcul de l’interface utilisateur pipelines, où vous pouvez définir les Workers max pour la mise à l’échelle automatique

Surveiller la mise à l’échelle automatique améliorée avec des pipelines classiques activés

Vous pouvez utiliser le journal des événements dans l’interface utilisateur Delta Live Tables pour surveiller les métriques de mise à l’échelle automatique améliorées pour les pipelines classiques. Les événements de mise à l’échelle automatique améliorés ont le type d’événement autoscale . Voici des exemples d’événements :

Événement Message
Demande de redimensionnement de cluster lancée Scaling [up or down] to <y> executors from current cluster size of <x>
Demande de redimensionnement de cluster réussie Achieved cluster size <x> for cluster <cluster-id> with status SUCCEEDED
Demande de redimensionnement de cluster partiellement réussie Achieved cluster size <x> for cluster <cluster-id> with status PARTIALLY_SUCCEEDED
Demande de redimensionnement de cluster échouée Achieved cluster size <x> for cluster <cluster-id> with status FAILED

Vous pouvez également afficher des événements de mise à l’échelle automatique améliorée en interrogeant directement le journal des événements :