PySpark - SparkConf

Para ejecutar una aplicación Spark en el clúster / local, debe establecer algunas configuraciones y parámetros, esto es con lo que ayuda SparkConf. Proporciona configuraciones para ejecutar una aplicación Spark. El siguiente bloque de código tiene los detalles de una clase SparkConf para PySpark.

class pyspark.SparkConf (
   loadDefaults = True, 
   _jvm = None, 
   _jconf = None
)

Inicialmente, crearemos un objeto SparkConf con SparkConf (), que cargará los valores de spark.*También propiedades del sistema Java. Ahora puede establecer diferentes parámetros usando el objeto SparkConf y sus parámetros tendrán prioridad sobre las propiedades del sistema.

En una clase SparkConf, hay métodos de establecimiento que admiten el encadenamiento. Por ejemplo, puedes escribirconf.setAppName(“PySpark App”).setMaster(“local”). Una vez que pasamos un objeto SparkConf a Apache Spark, ningún usuario no puede modificarlo.

A continuación, se muestran algunos de los atributos más utilizados de SparkConf:

  • set(key, value) - Para establecer una propiedad de configuración.

  • setMaster(value) - Para configurar la URL maestra.

  • setAppName(value) - Para establecer un nombre de aplicación.

  • get(key, defaultValue=None) - Obtener un valor de configuración de una clave.

  • setSparkHome(value) - Para establecer la ruta de instalación de Spark en los nodos trabajadores.

Consideremos el siguiente ejemplo de uso de SparkConf en un programa PySpark. En este ejemplo, configuramos el nombre de la aplicación Spark comoPySpark App y configurando la URL maestra para una aplicación Spark en → spark://master:7077.

El siguiente bloque de código tiene las líneas, cuando se agregan en el archivo Python, establece las configuraciones básicas para ejecutar una aplicación PySpark.

---------------------------------------------------------------------------------------
from pyspark import SparkConf, SparkContext
conf = SparkConf().setAppName("PySpark App").setMaster("spark://master:7077")
sc = SparkContext(conf=conf)
---------------------------------------------------------------------------------------