¿Puede un no conductor, no trabajador crear una chispa de sesión y leer un archivo CSV en un conjunto de datos?

hotmeatballsoup:

Java 8 y Spark 2.4.5 (Scala 2,12) aquí. También soy muy nuevo a Spark.

Estoy tratando de entender cuando el código se ejecuta en el nodo de controlador de encendido y cuando se pone presentó a los trabajadores / ejecutores.

En concreto, cuando se crea una SparkContexty SparkSessionejemplo, ¿esas instancias siempre tienen que suceder en el conductor? O es posible crear un SparkContext/ SparkSessioninstancia en sólo un Olde' JVM aplicación regular (que es: una aplicación de Java que no es ni un conductor de chispa no un trabajador / ejecutor)?

Lo mismo vale para la sesión lee. Por ejemplo, cuando leo un archivo CSV de este modo:

sparkSession.read()
  .format("csv")
  .load(providedFile.getAbsolutePath());

qué aquellos lecturas siempre se tienen que ejecutar en cualquiera de un conductor o un trabajador, o puede simplemente ejecutar en "aplicación Java normal" que le pasa a Spark tiranoyos como una dependencia?


Editar : sí parece que cualquier cosa que crea el SparkSession es un "conductor de chispa" de forma predeterminada, por lo que entonces mi única pregunta es: ¿cómo puedo saber qué código se ejecuta en el conductor y el que código se cultivaban a los trabajadores / ejecutores?

¿La sparkSession.read()...ocurrir en el conductor o tiene que obtener presentará a un nodo trabajador?

qué:

Re: "¿cómo le digo que se ejecuta sobre el conductor y que codifican código se cultiva a los trabajadores / ejecutores"

En general, cualquier transformación que lo hace en RDD o trama de datos (por ejemplo, mapa, flatmap, filtro, GroupBy, reduceByKey etc.) sucederían en ejecutor. Por lo general, pasa a la función o el cierre mientras se invoca estas transformaciones que se ejecutan en el ejecutor.

Cuando se invoca una acción, por ejemplo, "cobro revertido" o "tener", traerá la parte posterior de los datos del conductor (Cuidado con los errores OutOfMemory). Sea cual sea las operaciones que haría en tales datos recogidos en Conductor, serán ejecutadas sobre controlador.

Hay mucha pasando cuando las tareas se distribuyen a los ejecutores y las cosas funcionaron de conductor. Yo recomendaría tomar los punteros anteriores al igual que el principio e ir a través de un libro o un buen tutorial que habla de esto.

Supongo que te gusta

Origin http://43.154.161.224:23101/article/api/json?id=364811&siteId=1
Recomendado
Clasificación