Uso de opciones de Spark-Submit
Utilice opciones compatibles con spark-submit estándar del sector para ejecutar aplicaciones mediante dependencias de terceros de Data Flow.
PySpark permite cargar archivos Python (.py
), paquetes Python comprimidos (.zip
) y archivos Egg (.egg
) a los ejecutores de una de las siguientes formas:
- Estableciendo la configuración en
spark.submit.pyFiles
.
- Definición de la opción
--py-files
en scripts de Spark.
Puede utilizar opciones compatibles con Spark-Submit para cada una de las opciones.
Sin embargo, estos enfoques no le permiten agregar paquetes creados como ruedas y, por lo tanto, no le permiten incluir dependencias con código nativo. Para esas dependencias, si utiliza Spark 3.2.1 o posterior, cree primero un paquete Conda y transfiera ese paquete Conda a Data Flow agregando la configuración para spark.archives
o proporcionando --archives
como una opción compatible con Spark-Submit.
Puede crear paquetes Conda para dependencias de Spark 3.2.1 siguiendo las instrucciones de https://conda.github.io/conda-pack/spark.html y https://docs.conda.io/projects/conda-build/en/stable/user-guide/wheel-files.html.
Para Spark 3.2.1 o posterior, cuando utiliza spark.archives
o --archives
para proporcionar los paquetes conda, se desempaquetan en el directorio /opt/spark/work-dir
por defecto cuando el comando spark-submit es similar a:
spark-submit --archives pyspark_conda_env.tar.gz app.py
spark-submit --archives pyspark_conda_env.tar.gz#your_environment app.py
A continuación, se desempaqueta en el directorio /opt/spark/work-dir/<your_environment>
.
Consulte Funcionalidad Spark-Submit en Data Flow para obtener más ejemplos sobre el enfoque spark-submit.