ClickCease
Módulo 11. Procesamiento de Datos Escalable: Machine Learning y Streaming
 /  Módulos / Módulo 11. Procesamiento de Datos Escalable: Machine Learning y Streaming
Módulo 11. Procesamiento de Datos Escalable: Machine Learning y Streaming

Módulo 11. Procesamiento de Datos Escalable: Machine Learning y Streaming

Este nuevo módulo tiene una duración de 2 semanas, la primera semana se dedicará a SparkML, el componente de Spark que ofrece algoritmos de clasificación y clustering. ¡

En la segunda se estudiarán dos tecnologías: Spark structured streaming y Apache Flink.

El objetivo del módulo es adquirir y asimilar los fundamentos básicos para poder desarrollar aplicaciones escalables con las herramientas estudiadas.

Este módulo será implantado por Antonio Jesús Nebro Urbaneja (antonio@lcc.uma.es) y Cristóbal Barba González (cbarba@lcc.uma.es).

Antonio Jesús Nebro es Dr. Ingeniero en Informática  (PhD in Computer Science) y Catedrático de Universidad (Full Professor). Experto en aplicación de técnicas de optimización y paralelismo en el contexto de aplicaciones del Big Data.
Página personal.

Cristóbal Barba González es experto en aplicación de la semántica al análisis del Big Data y en el desarrollo de matauristicas multiobjetivo. Página personal.

En este módulo se va a trabajar con tecnologías de procesamiento de datos escalables en dos ámbitos: machine learning y streaming. La primera semana se dedicará a SparkML, el componente de Spark que ofrece algoritmos de clasificación y clustering. En la segunda se estudiarán dos tecnologías: Spark structured streaming y Apache Flink. El objetivo del módulo es adquirir y asimilar los fundamentos básicos para poder desarrollar aplicaciones escalables con las herramientas estudiadas.

Tecnologías: Spark, Flink, Java, Python, Intellij Idea, PyCharm

Pre-Requisitos: Conocimientos básicos de programación en Java y Python y haber asimilado los contenidos del módulo de Spark.

Planificación docente

Clase 1: Introducción a Spark ML. API basada en dataframes y los algoritmos de machine learning disponibles. Ejemplos con SVM y Kmeans.

Trabajo previo necesario:

Tarea 1 (Mandatory): Clustering usando el algoritmo bisecting kmeans.

Tarea 2 (Mandatory): Clasificación con árboles de decisión.

Clase 2: Spark ML avanzado. Pipelines. Extracción, transformación y selección de características.

Tarea 3 (Advanced): Clustering sobre datos de crímenes de Chicago desarrollando un notebook con Jupyter.

Tarea 4 (Advanced). Estudio del rendimiento computacional de algoritmos de Spark ML

Clase 3: Consolidación de conocimientos.

Tarea 5 (Challenge): Motor de recomendación de contenidos.

Clase 4: Introducción a Spark Structured Streaming. Conceptos básicos. Modelo de programación. Operaciones básicas

Trabajo previo necesario

  • Introducción a dataframes en Spark (https://databricks.com/blog/2015/02/17/introducing-dataframes-in-spark-for-large-scale-data-science.html)
  • Documentación sobre SQL, dataset y dataframes (https://spark.apache.org/docs/latest/sql-programming-guide.html)

Tarea 6 (Mandatory): Extracción de datos en streaming de plazas de aparcamientos públicos del portal de datos abiertos del ayuntamiento de Málaga.

Clase 5: Spark structured streaming avanzado. Operaciones con ventanas. Gestión de datos retrasados.

Tarea 7 (Advanced): Procesamiento de datos en streaming usando ventanas de tiempo.

Tarea 8 (Challenge): Análisis de datos de aparcamientos del ayuntamiento de Málaga. La aplicación deberá leer los datos con determinada frecuencia usando una ventana de tiempo y deberá realizar cálculos estadísticos en cada lectura de datos.

Clase 6: Introducción a Apache Flink. Conceptos básicos para procesamiento de datos en batch y en streaming.

Trabajo previo necesario

Tarea 9 (Advanced):  Análisis de datos usando Flink en una aplicación que simula la lectura de datos de temperaturas de sensores.

Related Posts

Deja un comentario

Your email address will not be published. Required fields are marked.*

× ¿Cómo puedo ayudarte?