0 / 0
Retourner à la version anglaise de la documentation
Environnements Spark
Dernière mise à jour : 07 oct. 2024
Environnements Spark dans un projet

Si votre bloc-notes inclut des API Spark ou que vous voulez créer des modèles d'apprentissage automatique ou des flux de modèles avec des environnements d'exécution Spark, vous devez associer l'outil à un service ou à un environnement Spark. Avec les environnements Spark, vous pouvez configurer la taille du pilote Spark ainsi que la taille et le nombre des programmes d'exécution.

Options Spark

Dans Watson Studio, vous pouvez utiliser :

  • Les environnements Spark proposés par Watson Studio.

    Tous les utilisateurs de Watson Studio peuvent créer des environnements Spark avec des configurations matérielles et logicielles variables. Les environnements Spark offrent des noyaux Spark qui agissent en tant que service (SparkR, PySpark et Scala). Chaque noyau obtient un cluster Spark dédié et des exécuteurs Spark. Les environnements Spark consomment des unités de capacité-heures (CUH, Capacity Units-Hours) et cette consommation est suivie.

  • Les services Spark proposés via IBM Cloud.

    IBM Analytics Engine propose Hortonworks Data Platform sur IBM Cloud. Vous disposez ainsi d'une machine virtuelle par noeud de traitement de cluster et de votre propre système de fichiers HDFS local. Vous disposez de Spark et de l'écosystème Hadoop complet. Vous avez un accès au shell et vous pouvez également créer des blocs-notes. IBM Analytics Engine n'est pas fourni avec Watson Studio ; vous devez l'acheter séparément via IBM Cloud. Voir Ajout de services associés.

Définitions d'environnement par défaut

Vous pouvez utiliser les définitions d'environnement Spark par défaut pour démarrer rapidement avec les blocs-notes Spark dans les outils Watson Studio sans avoir à créer vos propres définitions d'environnement. Les définitions d'environnement par défaut sont répertoriées sur la page Environnements du projet.

Environnement Configuration matérielle
Default Spark 3.0 & Python 3.7 2 Exécuteurs chacun : 1 vCPU et 4 Go de RAM ;
Driver : 1 vCPU et 4 Go de RAM
Default Spark 3.0 & R 3.6 2 Exécuteurs chacun : 1 vCPU et 4 Go de RAM ;
Driver : 1 vCPU et 4 Go de RAM
Default Spark 3.0 & Scala 2.12 2 Exécuteurs chacun : 1 vCPU et 4 Go de RAM ;
Driver : 1 vCPU et 4 Go de RAM
Default Spark 2.4 & Python 3.7 2 Exécuteurs chacun : 1 vCPU et 4 Go de RAM ;
Driver : 1 vCPU et 4 Go de RAM
Default Spark 2.4 & R 3.6 2 Exécuteurs chacun : 1 vCPU et 4 Go de RAM ;
Driver : 1 vCPU et 4 Go de RAM
Default Spark 2.4 & Scala 2.11 2 Exécuteurs chacun : 1 vCPU et 4 Go de RAM ;
Driver : 1 vCPU et 4 Go de RAM
Default Spark 2.3 & Scala 2.11 2 Exécuteurs chacun : 1 vCPU et 4 Go de RAM ;
Driver : 1 vCPU et 4 Go de RAM
Default Spark 2.3 & R 2.4 2 Exécuteurs chacun : 1 vCPU et 4 Go de RAM ;
Driver : 1 vCPU et 4 Go de RAM

Note: Lorsque vous démarrez un environnement Spark, des ressources supplémentaires sont nécessaires pour Jupyter Enterprise Gateway, Spark Master et les démons Spark worker. Ces ressources supplémentaires représentent au total 1 UC virtuelle et 2 Go RAM pour le pilote et 1 Go RAM pour chaque programme d'exécution. Vous devez les prendre en compte au moment de choisir la taille du matériel d'un environnement Spark. Par exemple, si vous créez un bloc-notes et que vous sélectionnez Default Spark 3.0 & Python 3.7, le cluster Spark consommera 3 vCPU et 12 Go de RAM mais, comme il faut 1 vCPU et 4 Go de RAM pour les ressources supplémentaires, il ne restera que 2 vCPU et 8 Go de RAM pour le bloc-notes.

Blocs-notes et environnements Spark

Lorsque vous créez un bloc-notes, vous pouvez sélectionner l'environnement d'exécution Spark dans lequel le bloc-notes doit s'exécuter. Vous pouvez sélectionner une définition d'environnement Spark par défaut ou une définition d'environnement Spark que vous avez créée à partir de la page Environnements de votre projet.

Vous pouvez créer plusieurs blocs-notes et sélectionner la même définition d'environnement Spark. Chaque bloc-notes associé à l'environnement possède son propre cluster Spark dédié et aucune ressource n'est partagée. Par exemple, si vous créez deux blocs-notes en utilisant la même définition d'environnement Spark, deux clusters Spark sont démarrés, un pour chaque bloc-notes, ce qui signifie que chaque bloc-notes possède son propre pilote Spark et un ensemble de programmes d'exécution Spark.

Vous pouvez apprendre à utiliser des environnements Spark dans Watson Studio en ouvrant les exemples de blocs-notes suivants :

Système de fichiers sur un cluster Spark

Si vous souhaitez partager des fichiers entre des exécuteurs et le pilote ou le noyau d'un cluster Spark, vous pouvez utiliser le système de fichiers partagé à l'adresse /home/spark/shared.

Si vous souhaitez utiliser vos propres bibliothèques personnalisées, vous pouvez les stocker sous /home/spark/shared/user-libs/. Il existe quatre sous-répertoires sous /home/spark/shared/user-libs/ qui sont préconfigurés pour être mis à la disposition des environnements d'exécution Python, R et Scala ou Java.

Les tableaux suivants répertorient les sous-répertoires préconfigurés dans lesquels vous pouvez ajouter vos bibliothèques personnalisées :

Répertoire Type de bibliothèque
/home/spark/shared/user-libs/python3/ Bibliothèques Python 3
/home/spark/shared/user-libs/R/ Packages R
/home/spark/shared/user-libs/spark2/ Fichiers Java ou JAR Scala

Pour partager des bibliothèques entre un pilote et des programmes d'exécution Spark :

  1. Téléchargez vos bibliothèques personnalisées ou fichiers JAR dans le répertoire préconfiguré approprié.
  2. Redémarrez le noyau dans le menu du bloc-notes en cliquant sur Noyau > Redémarrer le noyau. Cette action charge vos bibliothèques personnalisées ou fichiers JAR dans Spark.

Notez que ces bibliothèques ne sont pas conservées. Lorsque vous arrêtez l'environnement d'exécution et que vous le redémarrez ultérieurement, vous devez recharger les bibliothèques.

Fichiers journaux d'exécution

Lorsqu'un environnement d'exécution Spark est arrêté, les journaux cumulés sont ajoutés au compartiment IBM Cloud Object Storage associé au projet. Si vous souhaitez afficher ces journaux, téléchargez-les à partir du compartiment IBM Cloud Object Storage.

Etapes suivantes

Recherche et réponse à l'IA générative
Ces réponses sont générées par un modèle de langue de grande taille dans watsonx.ai en fonction du contenu de la documentation du produit. En savoir plus