1
Introducción a Apache Spark
- Historia del marco.
- Los cuatro componentes principales: Spark SQL, Spark Streaming, MLlib y GraphX.
- Herramientas y bibliotecas de Python para Spark: PySpark, Jupyter notebooks, Koalas.
- Conceptos de programación Spark.
- Ejecución de Spark en un entorno distribuido.
Trabajo práctico
Configuración del entorno Python para Spark. Implementación de scripts que manipulan conceptos de Spark.
2
Uso de Spark con Python: conjuntos de datos distribuidos resilientes (RDD)
- Configuración del entorno Python.
- Conexión a Spark con Python: contextos y sesiones.
- Introducción a los RDDs. Creación, manipulación y reutilización de RDDs.
- Las principales funciones/transformaciones, implementación de algoritmos map/reduce.
- Acumuladores y variables de emisión.
- Utiliza particiones.
- Uso de cuadernos y envío de trabajos de Python.
Trabajo práctico
Manipulación de contextos y sesiones. Creación y reutilización de RDDs. Envío de trabajos.
3
Tratamiento de datos estructurados
- Introducción a Spark SQL y DataFrames y conjuntos de datos.
- Los distintos tipos/formatos de fuentes de datos.
- Interoperabilidad con los RDD.
- Utilice la biblioteca PySpark Pandas.
4
Aprendizaje automático con Spark
- Introducción al aprendizaje automático.
- Las diferentes clases de algoritmos.
- Presentación de MLlib.
- Implementación de los distintos algoritmos en MLlib.
Trabajo práctico
Aplicación del aprendizaje supervisado mediante clasificación.
5
Análisis en tiempo real con Spark Streaming
- Comprensión de la arquitectura de streaming.
- Presentación de flujos discretizados (DStreams).
- Los distintos tipos de fuente.
- Manipulación de API (agregación, marca de agua, etc.).
- Aprendizaje automático en tiempo real.
Trabajo práctico
Creación de estadísticas en tiempo real a partir de una fuente de datos y predicciones mediante aprendizaje automático.
6
Teoría de grafos
- Introducción a la teoría de grafos (nodos, aristas, grafos dirigidos, caminos, principales algoritmos).
- Uso de la API.
- Presentación de las bibliotecas GraphX y GraphFrame.
Trabajo práctico
Implementación de un algoritmo de page rank y visualización del gráfico.