Ejemplo «Hola mundo»
Definir el script en Python a ejecutar
Código del fichero hola_mundo.py
from pyspark.sql import SparkSession spark = SparkSession.builder.appName("Hola_Mundo").getOrCreate() print("Hola mundo") spark.stop()
Nota: Al ser un lenguaje interpretado no es necesario compilarlo para su ejecución.
Ejecución distribuida del script
Para ejecutar de forma distribuida el script en python detro de un entorno distribuido como puede ser Hortonworks, se debe ejecutar desde el shell la siguiente instrucción:
spark-submit --master local[2] \ --executor-memory 1g \ --name hola_mundo\ --conf "spark.app.id=hola_mundo" \ /home/hola_mundo.py
Nota: «\» se ponen para indicar al interprete del shell que la instrucción continua en la siguiente linea.
Ejemplo de uso de «SparkContext»
Definir el script en Python a ejecutar
Código del fichero spark_context.py
from pyspark import SparkConf, SparkContext conf = (SparkConf() .setMaster("local") .setAppName("My app") .set("spark.executor.memory", "1g")) sc = SparkContext(conf = conf) rdd = sc.parallelize([1, 1, 1, 1, 2, 2, 2, 3, 3, 4]) print(rdd.collect()) rdd2 = rdd.map(lambda x: x*2) tSum = rdd2.reduce(lambda x,y: x+y) print("La suma del producto total es: " + str(tSum))
Nota: Al ser un lenguaje interpretado no es necesario compilarlo para su ejecución.
Ejecución distribuida del script
Para ejecutar de forma distribuida el script en python dentro de un entorno distribuido como puede ser Hortonworks, se debe ejecutar desde el shell la siguiente instrucción:
spark-submit --master local[2] \ /home/spark_context.py
Nota: «\» se ponen para indicar al interprete del shell que la instrucción continua en la siguiente linea.
Fuente: Documentación oficial sobre comandos de spark-submit
Fuente: Web oficial de Apache Spark
Hola
me interesa tomar un curso de Python desde cero, de forma escolarizada, ¿sabes donde puedo encontrarlo?
Buenas tienes todo el contenido de este curso en: https://www.diegocalvo.es/tutorial-de-python-spark
Espero que sea de tu interés