Foro Formación Hadoop

 
 
Imagen de Wagner  Angeles
Ejercicio Explorando Spark streaming
de Wagner Angeles - lunes, 6 de noviembre de 2017, 04:46
 

Revisando el ejercicio del modulo 3 (Master experto en big data) el Ejercicio: Explorando Spark Streaming veo que no viene la solución del mismo ni en escala ni en python llamado SparkStreamiing, seria bueno que lo resolvieran en video y actualizaran la información para tener la solución del ejercicio y asi tenerlo mas claro, gracias.

 
Imagen de Admin Formación Hadoop
Re: Ejercicio Explorando Spark streaming - Solución Python
de Admin Formación Hadoop - lunes, 6 de noviembre de 2017, 08:55
 

Hola Wagner, 

Tomamos nota y subiremos lo antes posible el código con las soluciones. De todas formas, a continuación le indicamos el código tanto en python como en scala del ejempolo del WordCount con Spark Streaming:

 

Python:

from pyspark.streaming import StreamingContext

ssc = StreamingContext(sc, 1)
lines = ssc.socketTextStream("localhost", 9999)
words = lines.flatMap(lambda line: line.split(" "))
pairs = words.map(lambda word: (word, 1))
wordCounts = pairs.reduceByKey(lambda x, y: x + y)
wordCounts.pprint()
ssc.start()             
ssc.awaitTermination()
Imagen de Admin Formación Hadoop
Re: Ejercicio Explorando Spark streaming - Solución Scala
de Admin Formación Hadoop - lunes, 6 de noviembre de 2017, 08:56
 

Scala:

import org.apache.spark.streaming._
val conf = new SparkConf()
val ssc = new StreamingContext(conf, Seconds(1))
val lines = ssc.socketTextStream("localhost", 9999)
val words = lines.flatMap(_.split(" "))
val pairs = words.map(word => (word, 1))
val wordCounts = pairs.reduceByKey(_ + _)
wordCounts.print()
ssc.start()             
ssc.awaitTermination() 
Imagen de Admin Formación Hadoop
Re: Ejercicio Explorando Spark streaming - Solución
de Admin Formación Hadoop - lunes, 6 de noviembre de 2017, 09:00
 

Los códigos indicados tanto en python como en scala están preparados para ejecutarlos en la shell de Spark.

Para poder realizar la prueba de Spark Streaming se debe acceder a la shell de Spark de la siguiente manera:

Scala:

spark-shell --master local[2]

Python:

pyspark --master local[2]

 

Por otra parte habrá que abrir otra terminal e indicar el siguiente comando (tal  y como se explica en los enunciados, indicando el puerto que se haya definido en el código de Spark.):

nc -lk 9999

Una vez iniciada la aplicación de Spark Streaming, iremos insertando en esta terminal palabras/líneas y estas líneas serán la entrada de nuestra aplicación de Spark Streaming (wordcount)