Créditos
6
Tipos
Obligatoria de especialidad (Ciencia de los Datos)
Requisitos
Esta asignatura no tiene requisitos, pero tiene capacidades previas
Departamento
ESSI
Big Data is traditionally defined with the three V's: Volume, Velocity and Variety. Traditionally, Big Data has been associated with Volume (e.g., the Hadoop ecosystem) and recently Velocity has earned its momentum (especially, with the arrival of Stream processors such as Spark). However,
currently, associating Big Data with simply Volume or Velocity is simply a mistake. The biggest challenge in Big Data Management is nowadays the Variety challenge and how to tackle Variety in real-world projects is yet not clear and there are no standarized solutions (such as Hadoop for Volume or Spark for Velocity) for this challenge.

In this course the student will be introduced to advanced database technologies, modeling techniques and methods for tackling Variety for decision making. We will also explore the difficulties that arise when combining Variety with Volume and / or Velocity. The focus of this course is on the need to enrich the available data (typically owned by the organization) with external repositories (special attention will be paid to Open Data), in order to gain further insights into the organization business domain. There is a vast amount of examples of external data to be considered as relevant in the decision making processes of any company. For example, data coming from social networks such as Facebook or Twitter; data released by governmental bodies (such as town councils or governments); data coming from sensor networks (such as those in the city services within the Smart Cities paradigm); etc.

This is a new hot topic without a clear and established (mature enough) methodology. For this reason, it requires rigorous thinking, innovation and a strong technical background in order to master the inclusion of external data in an organization decision making processes. Accordingly, this course focuses on three main aspects:

1.- Technical aspect. This represents the core discussion in the course and includes:
- dealing with semi-structured or non-structured data (as in the Web),
- the effective use of metadata to understand external data as by means of Linked Data,
- mastering the main formalisms (mostly coming from the Semantic Web) to enrich the data with metadata (ontology languages, RDF, XML, etc.),
- determine relevant sources, apply and use semantic mechanisms to automate the addition (potentially integration), linkage and / or cross of data between heterogeneous data sources,
- refining and visualizing Open Data

2.- Entrepreneurship and innovation, which includes:
- working on the visionary aspect to boost new analytical perspectives on a business domain by considering external sources and,
- developing added value to current systems by means of (such) external data

Profesores

Responsable

  • Oscar Romero Moral ( )

Otros

  • Besim Bilalli ( )
  • Petar Jovanovic ( )

Horas semanales

Teoría
1.8
Problemas
0
Laboratorio
1.8
Aprendizaje dirigido
0.214
Aprendizaje autónomo
6.85

Competencias

Competencias Técnicas Genéricas

Genéricas

  • CG4 - Capacidad para la dirección general y técnica de proyectos de investigación, desarrollo e innovación, en empresas y centros tecnológicos, en el ámbito de la Ingeniería Informática.
  • CG5 - Capacidad para aplicar soluciones innovadoras y realizar avances en el conocimiento que exploten los nuevos paradigmas de la Informática, particularmente en entornos distribuidos.

Competencias Transversales

Espíritu emprendedor e innovador

  • CTR1 - Conocer y comprender la organización de una empresa y las ciencias que rigen su actividad; capacidad de comprender las reglas laborales y las relaciones entre la planificación, las estrategias industriales y comerciales, la calidad y el beneficio. Desarrollar la creatividad, el espíritu emprendedor y la tendencia a la innovación. Conocer y entender los mecanismos en que se basa la investigación científica, así como los mecanismos e instrumentos de transferencia de resultados entre los diferentes agentes socioeconómicos implicados en los procesos de I+D+i.

Trabajo en equipo

  • CTR3 - Ser capaz de trabajar como miembro de un equipo, ya sea como un miembro más, o realizando tareas de dirección con la finalidad de contribuir a desarrollar proyectos con pragmatismo y sentido de la responsabilidad, asumiendo compromisos teniendo en cuenta los recursos disponibles.

Competencias Técnicas de cada especialidad

Específicas comunes

  • CEC1 - Capacidad para aplicar el método científico en el estudio y análisis de fenómenos y sistemas en cualquier ámbito de la Informática, así como en la concepción, diseño e implantación de soluciones informáticas innovadoras y originales.
  • CEC3 - Capacidad para aplicar soluciones innovadoras y realizar avances en el conocimiento que exploten los nuevos paradigmas de la Informática, particularmente en entornos distribuidos.

Objetivos

  1. Determine how to apply graph formalisms to solve the Variety challenge (data integration)
    Related competences: CG4, CEC1, CEC3, CTR1, CG5,
  2. Master the main semantic-aware formalisms to enable semantic modeling
    Related competences: CEC1, CG5,
  3. Determine how to apply graph formalisms to solve the Variety challenge (data integration)
    Related competences: CG4, CEC1, CEC3, CTR1, CG5,
  4. Reinforce team work capabilities in order to develop innovative solutions by means of complementing the organization data with external data
    Related competences: CG4, CTR1, CTR3,
  5. Perform graph data processing both in centralized and distributed environments
    Related competences: CG4, CEC3, CG5,

Contenidos

  1. Introducción y formalización del concepto de Variedad en Big Data y su gestión
    Definición de las tareas de gestión de datos: desde la perspectiva de las bases de datos y de la representación del conocimiento.

    Definición de Variedad en el concepto de Big Data. Heterogeneidades sintácticas y semánticas. Efecto de las heterogeneidades de datos en las diferentes tareas de gestión de datos identificadas.

    Concepto de integración de datos. Definición de un marco teórico para la gestión e integración de fuentes de datos heterogéneas.

    Principales componentes de un sistema de integración de datos: fuentes, esquema global o de integración y mappings.

    La necesidad de un modelo de datos canónico para la integración de datos. Definición de modelo de datos. Características esenciales de los modelos de datos canónicos.
  2. Los grafos como solución a la gestión de la variedad
    La idoneidad de los grafos como modelo de datos canónico en sistemas de integración de datos.

    Principales características de los modelos de datos en grafo. Diferencia con otros modelos de datos (especialmente con el modelo relacional).

    Concepto de dato y metadato y su formalización en los modelos de grafos.

    Casos de uso (especial énfasis en los beneficios topológicos de los grafos): detección de fraude, aplicaciones en bioinformática, gestión del tráfico y logística, redes sociales, etc.

    Introducción a los principales modelos de grafos: property graph y knowledge graph.
  3. Gestión de los property graphs
    Estructuras de datos. Restricciones de integridad del modelo.

    Operaciones básicas. Basadas en la topología, en el contenido y mixtas.

    Lenguajes de consulta de datos en grafo. GraphQL.

    Concepto de graph database. Heterogeneidad de las herramientas a la hora de implementar las estructuras internas del grafo. Impacto de dichas decisiones en las operaciones básicas presentadas.

    Distributed graph database. Necesidad. Dificultades. Paradigma thinking like a vertex como estándar de facto para procesamiento de grafos distribuidos.

    Principales algoritmos de procesamiento distribuido.
  4. Gestión de los knowledge graphs
    Estructuras de datos: lenguajes RDF. Origen y relación con Linked Open Data. Restricciones de integridad de cada lenguaje.

    Estructuras de datos: RDFS y OWL. Relación con la lógica de primer orden. Fundamentos en Description Logics. Restricciones de integridad de cada lenguaje. Concepto de razonamiento.

    Operaciones básicas y lenguaje de consulta. SPARQL y álgebra subyacente. Entailment regimes (razonamiento).

    Concepto de triplestore. Diferencias con una graph database. Implementaciones nativas. Implementaciones basadas en el modelo relacional. Impacto de dichas decisiones en las operaciones básicas presentadas.

    Distributed triplestore. Necesidad. Dificultades. Graph Engine 1.0 como paradigma de triplestore distribuido.

    Principales algoritmos distribuidos.
  5. Diferencias entre ambos paradigmas y casos de uso
    Recapitulación de ambos modelos. Similitudes y diferencias. Conceptos exportables entre ambos modelos.

    Principales casos de uso. Gestión de metadatos: semantificación del Data Lake y gobernanza de datos.

    Principales casos de uso. Explotación de sus características topológicas: recomendadores sobre grafos y minería de datos en grafo.

    Visualización. A través de GUI (Gephi) o programáticas (D3.js o GraphLab).

Actividades

Actividad Acto evaluativo


Lectures

During lectures the main concepts will be discussed. Lectures will combine master lectures and active / cooperative learning activities. The student is meant to have a pro-active attitude during active / cooperative learning activities. During master lectures, the student is meant to listen, take notes and ask questions.
Objetivos: 3 2 1 5 4
Contenidos:
Teoría
25.5h
Problemas
0h
Laboratorio
0h
Aprendizaje dirigido
0h
Aprendizaje autónomo
28h

Hands-on Session

The student will be asked to practice the different concepts introduced in the lectures. This includes problem solving either on the computer or on paper.
Objetivos: 3 4
Contenidos:
Teoría
0h
Problemas
0h
Laboratorio
25.5h
Aprendizaje dirigido
3h
Aprendizaje autónomo
60h

Teoría
2h
Problemas
0h
Laboratorio
0h
Aprendizaje dirigido
0h
Aprendizaje autónomo
8h

Metodología docente

El curso tiene sesiones magistrales y de laboratorio.

Magistrales: El profesor expone el tema. Los estudiantes siguen la lección. toman apuntes y preparan material adicional fuera de clase. También se les pide que participen en actividades evaluatorias durante estas sesiones.

Laboratorio: Principalmente, las sesiones de laboratorio estan dedicadas a la práctica (con o sin ordenador) de los conceptos introducidos en las sesiones magistrales. Herramientas relevantes para dichos conceptos se presentan en estas sesiones y se pide llevar a cabo pequeños proyectos en que haya que usarlas.

Proyecto: El proyecto del curso pone en práctica los conocimientos del curso en un entorno realista.

Método de evaluación

Nota final = 10% EC + 40% EX + 40% LAB + 10% P

EX = Nota examen final
LAB = Nota ponderada de los laboratorios
EC = Nota de las actividades llevadas a cabo en las sesiones magistrales
C = Peer evaluation

EC = En algunas sesiones de teoría el docente propondrá algunas actividades que seran recogidas, antes del final de la clase, y evaluadas a posteriori.

LAB: Hay tres sesiones de prácticas, cada una con un peso potencial. Los laboratorios se haran en grupos asignados por el docente.

P: Proyecto final de curso

Bibliografía

Básica:

Capacidades previas

The student must be familiar with basics on databases and data modeling. Programming skills are also mandatory.