Utilisation des options spark-submit
Utilisez les options compatibles avec spark-submit standard du secteur pour exécuter des applications à l'aide de dépendances tierces Data Flow.
PySpark vous permet de télécharger des fichiers Python (.py
), des packages Python compressés (.zip
) et des fichiers Egg (.egg
) vers les exécuteurs de l'une des manières 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 Spark-Submit pour chacune des options.
Cependant, ces approches ne vous permettent pas d'ajouter des packages créés en tant que Wheels 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 pack conda et transmettez-le à Data Flow en ajoutant la configuration pour spark.archives
ou en fournissant --archives
en tant qu'option compatible Spark-Submit.
Vous pouvez créer des packs Conda pour les dépendances Spark 3.2.1 en suivant les instructions à l'adresse 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 3.2.1 ou version ultérieure, lorsque vous utilisez spark.archives
ou --archives
pour fournir les conda-packs, ils sont décompressé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
spark-submit --archives pyspark_conda_env.tar.gz#your_environment app.py
Il est ensuite décompressé dans le répertoire /opt/spark/work-dir/<your_environment>
.
Pour plus d'exemples sur l'approche spark-submit, reportez-vous à Fonctionnalité de soumission Spark dans Data Flow.