Dimensionnement d'une application de flux de données

Chaque fois que vous exécutez une application de flux de données, vous indiquez une taille et un nombre d'exécuteurs qui, à leur tour, déterminent le nombre d'OCPU utilisées pour exécuter l'application Spark.

Une OCPU est égale à un coeur d'UC, qui est lui-même égal à deux vCPUs. Pour plus d'informations sur le nombre d'OCPU contenues dans chaque forme, voir Formes du service de calcul.

On considère qu'environ 10 Go de données sont traitées par OCPU par heure. Les formats de données optimisés tels que Parquet semblent s'exécuter beaucoup plus rapidement, car seul un petit sous-ensemble de données est traité. La formule pour calculer le nombre d'OCPU nécessaires, en supposant 10 Go de données traitées par OCPU par heure, est la suivante :
<Number_of_OCPUs> = <Processed_Data_in_GB> / (10 * <Desired_runtime_in_hours>)
Par exemple, pour traiter 1 To de données avec un CNS de 30 minutes, attendez-vous à utiliser environ 200 OCPU :
<Number_of_OCPUs> = 1024 / (10 * 0.5) = 204.8

Vous pouvez affecter 200 OCPU de différentes façons. Par exemple, vous pouvez sélectionner une forme d'exécuteur VM.Standard2.8 et un total de 25 exécuteurs, soit 8 * 25 = 200 OCPU au total.

Cette formule est une estimation approximative et les délais d'exécution peuvent être différents. Vous pouvez estimer le taux de traitement de la charge de travail réelle en chargeant l'application et en consultant l'historique des exécutions d'application. Cet historique indique le nombre d'OCPU utilisées, le nombre total de données traitées et le temps d'exécution, ce qui vous permet d'estimer les ressources dont vous avez besoin pour répondre aux contrats de niveau de service. À partir de ces informations, vous pouvez estimer la quantité de données traitées lors d'une exécution et dimensionner l'exécution en conséquence.
Note

Le nombre d'OCPU est limité par la forme de machine virtuelle que vous avez choisie et la valeur définie dans la location pour VM.Total. Vous ne pouvez pas utiliser plus de machines virtuelles sur toutes les formes que la valeur de VM.Total. Par exemple, si chaque forme de machine virtuelle est réglée à 20 et que la valeur de VM.Total est 20, vous ne pouvez pas utiliser plus de 20 machines virtuelles pour toutes les formes de machine virtuelle. Dans le cas des formes flexibles, où la limite est mesurée en nombre de cœurs ou d'OCPU, 80 cœurs dans une forme flexible sont égaux à 10 formes VM.Standard2.8. Pour plus d'informations, voir Limites de service.

Formes de calcul flexibles

Le service de flux de données prend en charge les formes de calcul flexibles pour les tâches Spark.

Les formes de calcul flexibles suivantes sont prises en charge :
  • VM.Standard3.Flex (Intel)
  • VM.StandardE3.Flex (AMD)
  • VM.StandardE4.Flex (AMD)
  • VM.Standard.A1.Flex (Processeur ARM d'Ampere)
Pour plus d'informations sur les formes de calcul flexibles, consultez la Documentation de Compute.
Lorsque vous créez une application ou modifiez une application, sélectionnez la forme flexible pour le pilote et l'exécuteur. Pour chaque sélection d'OCPU, vous pouvez sélectionner l'option de mémoire flexible.
Note

Le pilote et l'exécuteur doivent avoir la même forme.

Migration d'applications à partir des formes de calcul VM.Standard2

Suivez ces étapes lors de la migration de vos applications de flux de données existantes de VM.Standard2 vers des formes de calcul flexibles.

  1. Demandez les limites de la forme flexible choisie.
    Le nombre d'OCPU définit les limites de la forme flexible. Avec les formes de calcul VM.Standard2, le nombre de noeuds définit les limites. Par exemple, si une application utilise 16 OCPU pour un pilote et 16 OCPU pour un exécuteur, vous devez indiquer 32 OCPU dans votre demande d'augmentation de limite.
  2. (Facultatif) Si vous prévoyez d'exécuter plus de tâches concurrentes sur différentes formes, demandez une valeur Vm.Total supérieure.
  3. Lorsque vous créez une application ou modifiez une application, sélectionnez la forme flexible pour le pilote et l'exécuteur.
    Note

    Le pilote et l'exécuteur doivent avoir la même forme.
  4. (Facultatif) Pour chaque sélection d'OCPU, sélectionnez l'option de mémoire flexible.