Computación en la Nube y Diseño de Sistemas con Big Data
- Profesor (Coordinador):
- Marta Patiño
- mpatino@fi.upm.es
- Profesor:
- Tonghong Li
- tonghong@fi.upm.es
- Profesor:
- Ainhoa Azqueta
- aazqueta@fi.upm.es
Semestre
Primer semestre
Créditos
4 ECTS
Resumen
Esta asignatura presenta unas arquitecturas para sistemas distribuidos y sistemas de gestión de datos escalables: map-reduce, bigtable, streaming de datos, colas persistentes.
Programa
- Introducción.
- Tecnologías de gestión de datos.
- NoSQL: clave-valor, bases de datos orientadas a grafos, bases de datos orientadas a documentos.
- SQL y NewSQL: almacenes de datos orientados a columnas.
- Procesamiento de eventos complejos/Streaming de datos.
- Streaming de datos.
- Bigtable. Dynamo.
- Diseño de ecosistemas de gestión de grandes cantidades de datos y datos en la nube.
Bibliografía
- P. Sadalage, M. Fowler: "NoSQL Distilled: A Brief Guide to the Emerging World of Polyglot Persistence". Addison Wesley, 2012.
- "Big Data Now: Current Perspectives from O'Reilly Radar". O'Reilly. 2011
- I. Robinson, J. Webber, E. Eifrem: "Graph Databases". O'Really. 2013
Prerrequisitos:
- Programación Java, programación concurrente, bases de datos.
Aula
A-5001
Idioma en que se imparte
Inglés
Competencias Específicas
Código | Competencia | Nivel |
---|---|---|
CEM2 | Analizar y sintetizar soluciones a problemas que requieran aproximaciones novedosas para la definición de la infraes-tructura computacional que permita el procesamiento y el análisis de datos de diversa naturaleza | S |
CEM4 | Analizar y evaluar los diferentes paradigmas y enfoques de ingeniería de construcción y gestión de sistemas basados en software | S |
CEM6 | Realizar trabajos de investigación en las principales líneas de investigación activas en el área de los paradigmas de la computación distribuida, sus aplicaciones prácticas y la gestión de la infraestructura necesaria | S |
Resultados de Aprendizaje
Código | Resultado de Aprendizaje | Competencias asociadas | Nivel de Adquisición |
---|---|---|---|
RA-SRSD-49 | Conocer las principales líneas activas en sistemas distribuidos | CEM2, CEM4, CEM6 | S |
RA-SRSD-50 | Ser capaz de encontrar e identificar artículos seminales de un área de investigación en sistemas distribuidos | CEM2, CEM4, CEM6 | S |
RA-SRSD-51 | Ser capaz de estudiar y analizar un nuevo área de investigación en sistemas distribuidos | CEM2, CEM6 | S |
RA-SRSD-52 | Ser capaz de relacionar una línea de investigación emergente en sistemas distribuidos con los fundamentos de los sistemas distribuidos | CEM2, CEM6 | S |
RA-SRSD-53 | Ser capaz de identificar los principales retos que aborda una línea de investigación emergente en sistemas distribuidos | CEM2, CEM6 | S |
RA-SRSD-54 | Conocer caracterización sincronía sistemas distribuidos e implicaciones en posibilidad/imposibilidad de resolución de protocolos de acuerdo y coordinación | CEM6 | C |
RA-SRSD-55 | Conocer principales protocolos de coordinación y acuerdo | CEM6 | C |
RA-SRSD-56 | Conocer el radiado fiable: tipos, propiedades y protocolos | CEM6 | C |
RA-SRSD-57 | Conocer los principios de sistemas transaccionales | CEM2, CEM4, CEM6 | S |
RA-SRSD-58 | Conocer los principales protocolos de control de concurrencia y recuperación | CEM2, CEM4, CEM6 | S |
RA-SRSD-59 | Conocer los principales protocolos de replicación de datos y de procesos y criterios de corrección | CEM2, CEM4, CEM6 | S |
RA-SRSD-60 | Ser capaz de entender artículos de investigación en el área de sistemas distribuidos | CEM2, CEM6 | S |
Guía de Aprendizaje
Guía de aprendizaje: Computación en la Nube y Diseño de Sistemas con Big Data