Professional Documents
Culture Documents
2. Herramientas a utilizar
• Vagrant
• VirtualBox
• Apache Spark
3. Introducción
En esta práctica, se utilizará Apache Spark con Pyspark para analizar datos de ventas de
una tienda. Se utilizará un archivo de texto que contiene información sobre los productos
vendidos en la tienda, incluyendo el nombre del producto, el precio y la cantidad vendida.
Para resolver este problema, utilizaremos Pyspark para cargar el archivo de texto como
un RDD, y luego utilizaremos diversas funciones de Spark para procesar y analizar los
datos. En particular, utilizaremos la función reduceByKey para calcular el total de ventas
por producto, la función reduce para calcular el total de ventas para toda la tienda, y la
función sortBy para encontrar el producto más vendido.
Además, exploraremos otras herramientas de Spark como Spark SQL, Spark Streaming y
Spark MLib que nos permitirán realizar análisis más avanzados y trabajar con datos en
tiempo real.
4. Desarrollo de la práctica
4.1. Configuración de Vagrant
Vagrant.configure("2") do |config|
if Vagrant.has_plugin? "vagrant-vbguest"
config.vbguest.no_install = true
config.vbguest.auto_update = false
config.vbguest.no_remote = true
end
vagrant@servidorUbuntu:~$ cd labSpark/spark-3.3.1-bin-hadoop3/sbin/
vagrant@servidorUbuntu:~/labSpark/spark-3.3.1-bin-hadoop3/sbin$ ./start-
master.sh
starting org.apache.spark.deploy.master.Master, logging to
/home/vagrant/labSpark/spark-3.3.1-bin-hadoop3/logs/spark-vagrant-
org.apache.spark.deploy.master.Master-1-servidorUbuntu.out
vagrant@servidorUbuntu:~/labSpark/spark-3.3.1-bin-hadoop3/sbin$ ./start-
worker.sh spark://192.168.100.3:7077
starting org.apache.spark.deploy.worker.Worker, logging to
/home/vagrant/labSpark/spark-3.3.1-bin-hadoop3/logs/spark-vagrant-
org.apache.spark.deploy.worker.Worker-1-servidorUbuntu.out
5. Problema
Supongamos que tenemos un archivo de texto que contiene información sobre los
productos vendidos en una tienda. Cada línea del archivo tiene el siguiente formato:
producto,precio,cantidad
Por ejemplo:
Leche,2.5,10
Pan,1.5,20
Huevos,3,5
Queremos analizar la información contenida en el archivo para obtener los siguientes
resultados:
1. Calcular el total de ventas por producto.
2. Calcular el total de ventas para toda la tienda.
3. Encontrar el producto más vendido.
Para resolver este problema utilizando Apache Spark con Pyspark, se sugiere seguir los
siguientes pasos:
Para convertir el RDD en un DataFrame y utilizar SQL para realizar las consultas,
podríamos utilizar Spark SQL.
6. Ejercicio
7. Bonificación
8. Entregables y Evaluación
- Sustentación de la práctica
9. Bibliografía