Análisis en entornos de Big Data Código:  22.519    :  6
Consulta de los datos generales   Descripción   La asignatura en el conjunto del plan de estudios   Campos profesionales en el que se proyecta   Conocimientos previos   Información previa a la matrícula   Objetivos y competencias   Contenidos   Consulta de los recursos de aprendizaje de la UOC para la asignatura   Informaciones sobre la evaluación en la UOC   Consulta del modelo de evaluación  
Este es el plan docente de la asignatura para el segundo semestre del curso 2023-2024. Podéis consultar si la asignatura se ofrece este semestre en el espacio del campus Más UOC / La universidad / Planes de estudios). Una vez empiece la docencia, tenéis que consultarlo en el aula. El plan docente puede estar sujeto a cambios.

Esta asignatura constituye una introducción a las tecnologías relacionadas con los sistemas de análisis de Big Data (datos masivos). Iniciaremos esta asignatura revisando la perspectiva histórica que nos a llevado a la necesidad de desarrollar estos sistemas integrados para el análisis de datos masivos. Anclándonos en este punto inicial introduciremos el paradigma Big Data y los como se habilita a nivel práctico este procesado de datos: características y estructura.

Una vez establecidas las bases del paradigma Big Data nos adentraremos en las tres etapas básicas de todo análisis de datos: captura (y pre-procesado), almacenamiento, y procesado. En el estadio de captura trabajaremos distintas técnicas y tecnologías dependiendo de si los datos residen de forma estática en un almacenamiento (batch)  o bien llegan en flujo (streaming).  En relación con el almacenamiento introduciremos en paralelo los sistemas de ficheros distribuidos (HDFD) y las bases de datos NoSql, habitualmente usadas también para almacenar datos masivos (estructurados, semi-estructurados y no estructurados). Capturados y almacenados los datos están listos su procesamiento. En esta línea se trabajarán las técnicas básicas para el procesado de datos en batch y streaming, y con especial énfasis en el entorno Apache Spark. Finalmente, se introducirán al alumno a las arquitecturas Lambda y Kappa, que ofrecen al usuario un proceso integrado para el tratamiento de Big Data.

Una vez sentadas todas estas bases teóricas y practicas, revisaremos las herramientas Cloud que ofrecen los grandes proveedores (Amazon, Azure y Google Cloud) para el tratamiento de Big Data, asemejándolas a las estudiadas durante el curso en modo on-premise.

Amunt

Esta asignatura pertenece al conjunto de asignaturas obligatorias del Grado de Ciencia de Datos.

Amunt

Los conocimientos adquiridos serán de utilidad en diferentes ámbitos profesionales, como son la programación de sistemas que requieran el uso de datos masivos, la ciencia de datos, la dirección o consultoría de proyectos basados en sistemas Big Data, entre otros.

Amunt

El curso requiere que los estudiantes tengan conocimientos de:

  • Programación. Durante el curso se va a usar principalmente lenguaje Python, pero potencialmente se puede requerir el uso de Java, Scala, bash scripting, SQL o otros lenguajes para entender ejemplos i/o solucionar tareas concretas
  • Conocimientos básicos de análisis de datos
  • Técnicas básicas de aprendizaje automático
  • Redes de computadores. 

Además, la metodología incluye estudios de casos de usos concretos, lectura de documentación técnica oficial, artículos científicos y la búsqueda autónoma de información. En este aspecto es aconsejable que el estudiante esté familiarizado con el uso avanzado de buscadores de internet, el análisis de la información cuantitativa y cualitativa, la capacidad de sintetizar y obtener conclusiones, así como de poseer ciertas habilidades de comunicación oral y escrita. Asimismo, también es necesario que los estudiantes tengan la capacidad de leer y comprender documentos en inglés y castellano, puesto que una parte de los materiales adicionales y otros recursos, están en dichos idiomas.

Amunt

No aplica.

Amunt

Los objetivos que se desea que el estudiante alcance mediante esta asignatura son los siguientes:

  • Entender los conceptos y las definiciones formales asociadas al tratamiento de datos masivos, al paradigma Big Data y afines
  • Saber distinguir los casos de uso que requieren de la aplicación de tecnología Big Data y los que no
  • Identificar los elementos tecnológicos necesarios para desarrollar un proyecto basado en el uso de Big Data
  • Conocer las metodologías más adecuadas para la implementación de sistemas de Big Data
  • Conocer el funcionamiento básico de las principales herramientas y frameworks de Big Data para el tratamiento de datos en modo batch y streaming
  • Conocer las principales herramientas disponibles en el ecosistema de Big Data, especialmente de los ecosistemas de Apache Hadoop, Apache Spark.  También se desarrollarán competencias relacionadas con los servicios Cloud.
  • Obtener suficiencia en la construcción de modelos que generen conocimiento como resultado de un análisis basado en tecnología Big Data.

Amunt

La asignatura consta de 6 bloques temáticos, cada uno de los cuales apoyado por un material didáctico.

El contenido asociado a cada bloque temático es el que se detalla a continuación:

1) Introducción a los sistemas y procesado batch.

En este primer módulo se da una visión histórica de los sistemas batch y sus técnicas de procesado más habituales.

2) Introducción al Big Data

Iniciaremos este módulo introduciendo los conceptos básicos relacionados con la algoritmia y computación paralela que nos servirán como base a lo largo de curso. Posteriormente, nos adentraremos en el concepto de Big Data para discutir el cambio de modelo y paradigma que implica dicho concepto.

3) Captura, pre-procesamiento y almacenamiento de datos masivos

El módulo está orientado a trabajar las características básicas de los procesos de captura, pre-procesamiento y almacenamiento de datos en entornos Big Data. Es decir, ser capaz de entender las peculiaridades que implica el Big Data en cada una de estas fases del análisis de datos y conocer las principales herramientas y tecnologías Big Data que lo apoyan.

Discutiremos el almacenaje y gestión de la información, centrándonos en el sistema de ficheros distribuido HDFS y las bases de datos NoSQL.

4) Gestores de recursos para el procesado de datos masivos

Es habitual que los recursos existentes en un sistema Big Data sean finitos y que al mismo tiempo múltiples los programas (o tareas) requieran usarlos. En esta situación acciones como las de priorizar las tareas, retener las que no dispongan de suficientes recursos en un momento dado, o incluso decomisionar programas con altas tasas de fallo son cuestiones clave para un uso eficiente de la infraestructura subyacente. Los gestores de recursos se encargan de que los programas hagan un uso racional y equitativo de los recursos.

En este módulo vamos a ver los conceptos básicos de un gestor de recursos a nivel teóricos. En la parte práctica vamos a revisar el funcionamiento de Apache YARN, un gestor habitual en entornos Hadoop.

5) Procesado batch de datos en entornos Big Data

En este módulo trabajaremos las diferentes tipologías y arquitecturas de un sistema Big Data, ayudando al alumno a ser capaz de identificar qué arquitectura se debería implementar según las características de cada caso de uso, incluyendo las especificidades de datos y entornos. Posteriormente, introduciremos los dos sistemas principales de procesado distribuido, MapReduce y Apache Spark, haciendo énfasis en sus fortalezas y debilidades. A nivel práctico trabajaremos algunas de las herramientas que ofrece Apache Spark para habilitar el procesado de datos en entornos Big Data.

6)   Planificación y automatización de procesos

Cuando parte de un proceso entra en estadio de producción es habitual tener la necesidad de que se inicie y funcione de forma autónoma sin que nadie estéis presente. Incluso que dicho proceso disponga de cierta lógica secuencial y que se realicen acciones derivadas de un primer proceso inicial.

En este módulo vamos a revisar que herramientas hay disponibles y que ventajas ofrece cada una de ellas. Empezaremos revisando Apache Oozie, el planificador habitual en entornos Hadoop. Posterior veremos otros dos planificadores algo más versátiles y muy usados en la actualidad, Airflow y Apache Nifi.

Amunt

Espacio de recursos de ciencia de datos Web
Introducción a Spark con DataFrames y SparkSQL (SPARKSQL_DATAFRAMES_BASICO_PEC3) Audiovisual
Funcionamiento de las operaciones avanzadas con Spark (SPARKSQL_DATAFRAMES_AVANZADO_PEC4) Audiovisual
Introducción al entorno de trabajo, introducción a Hadoop y Spark (HDFS_PEC1) Audiovisual
Uso de dataframes con Apache Spark Audiovisual
Uso de RDDs con Apache Spark Audiovisual
Automatización de procesos big data con Oozie Audiovisual

Amunt

El proceso de evaluación se fundamenta en el trabajo personal de cada estudiante y presupone la autenticidad de la autoría y la originalidad de los ejercicios realizados.

La falta de autenticidad en la autoría o de originalidad de las pruebas de evaluación; la copia o el plagio; el intento fraudulento de obtener un resultado académico mejor; la colaboración, el encubrimiento o el favorecimiento de la copia, o la utilización de material o dispositivos no autorizados durante la evaluación, entre otras, son conductas irregulares que pueden tener consecuencias académicas y disciplinarias graves.

Por un lado, si se detecta alguna de estas conductas irregulares, puede comportar el suspenso (D/0) en las actividades evaluables que se definan en el plan docente - incluidas las pruebas finales - o en la calificación final de la asignatura, ya sea porque se han utilizado materiales o dispositivos no autorizados durante las pruebas, como redes sociales o buscadores de información en internet, porque se han copiado fragmentos de texto de una fuente externa (internet, apuntes, libros, artículos, trabajos o pruebas del resto de estudiantes, etc.) sin la correspondiente citación, o porque se ha practicado cualquier otra conducta irregular.

Por el otro, y de acuerdo con las normativas académicas, las conductas irregulares en la evaluación, además de comportar el suspenso de la asignatura, pueden dar lugar a la incoación de un procedimiento disciplinario y a la aplicación, si procede, de la sanción que corresponda.

La UOC se reserva la potestad de solicitar al estudiante que se identifique o que acredite la autoría de su trabajo a lo largo de todo el proceso de evaluación por los medios que establezca la universidad (síncronos o asíncronos). A estos efectos, la UOC puede exigir al estudiante el uso de un micrófono, una cámara u otras herramientas durante la evaluación y que este se asegure de que funcionan correctamente.

La verificación de los conocimientos para garantizar la autoría de la prueba no implicará en ningún caso una segunda evaluación.

Amunt

La asignatura solo puede aprobarse con el seguimiento y la superación de la evaluación continua (EC). La calificación final de la asignatura es la nota obtenida en la EC.

 

Amunt