Utilisation des options Spark-Submit

Utilisez les options compatibles avec spark-submit standard pour exécuter les applications à l'aide des dépendances de tierce partie du service de flux de données.

PySpark vous permet de charger des fichiers Python (.py), des ensembles Python compressés (.zip) et des fichiers Egg (.egg) vers les exécuteurs de l'une des façons suivantes :

  • Définition de la configuration spark.submit.pyFiles.
  • Définition de l'option --py-files dans les scripts Spark.

Vous pouvez utiliser des options compatibles avec Spark-Submit pour chacune des options.

Toutefois, ces approches ne vous permettent pas d'ajouter des ensembles créés en tant que roues et ne vous permettent donc pas d'inclure des dépendances avec du code natif. Pour ces dépendances, si vous utilisez Spark 3.2.1 ou une version ultérieure, créez d'abord un ensemble Conda et transmettez cet ensemble Conda au service de flux de données en ajoutant Configuration pour spark.archives ou en fournissant --archives en tant qu'option compatible Spark-Submit.

Vous pouvez créer des ensembles Conda pour les dépendances Spark 3.2.1 en suivant les instructions sous https://conda.github.io/conda-pack/spark.html et https://docs.conda.io/projects/conda-build/en/stable/user-guide/wheel-files.html.

Pour Spark version 3.2.1 ou ultérieure, lorsque vous utilisez spark.archives ou --archives pour fournir les Conda-packs, ils sont déballés sous le répertoire /opt/spark/work-dir par défaut lorsque la commande spark-submit est similaire à :

spark-submit --archives pyspark_conda_env.tar.gz app.py
Si la commande spark-submit est similaire à :
spark-submit --archives pyspark_conda_env.tar.gz#your_environment app.py

Ensuite, il est décompressé sous le répertoire /opt/spark/work-dir/<your_environment>.

Voir Fonctionnalité Spark-Submit dans le service de flux de données pour plus d'exemples sur l'approche spark-submit.