¿Por qué Apache-Spark - Python es tan lento localmente en comparación con los pandas?

Un novato chispa aquí. Recientemente comencé a jugar con la chispa en mi máquina local en dos núcleos usando el comando.

pyspark - maestro local [2]

Tengo un archivo de texto de 393 Mb que tiene casi un millón de filas. Quería realizar alguna operación de manipulación de datos. Estoy usando las funciones integradas de Dataframe de Pyspark para realizar operaciones simples como groupBy, sum, max. stddev.

Sin embargo, cuando hago exactamente las mismas operaciones en pandas en el mismo conjunto de datos, parece que los pandas derrotan a pyspark por un amplio margen en términos de latencia.

Me preguntaba cuál podría ser una posible razón para esto. Tengo un par de pensamientos

¿Las funciones integradas hacen el proceso de serialización / deserialización de manera ineficiente? En caso afirmativo, ¿cuáles son las alternativas a ellos?¿Es el conjunto de datos demasiado pequeño que no puede superar el costo general de la JVM subyacente en la que se ejecuta la chispa?

Gracias por mirar. Muy apreciado

Respuestas a la pregunta(1)

Su respuesta a la pregunta