7515 - Base de Datos PLANIFICACIONES Planificaciones 7515 - Base de Datos Docente responsable: ALE JUAN MARIA 1 de 7 Actualización: 1ºC/2013 7515 - Base de Datos PLANIFICACIONES Actualización: 1ºC/2013 OBJETIVOS Proveer al alumno los elementos básicos de la tecnología de bases de datos que le permitan tanto diseñar y administrar una base de datos, como así también utilizar y evaluar sistemas de gestión de bases de datos. CONTENIDOS MÍNIMOS - PROGRAMA SINTÉTICO Funciones de los sistemas de bases de datos. Modelos de Datos. Algebra y cálculo relacionales. El lenguaje de consulta SQL. Teoría del Diseño Relacional. Procesamiento de consultas. Concurrencia. Recuperación. Sistemas Basados en el modelo objeto-relacional. Introduccion a Data Warehousing. PROGRAMA ANALÍTICO 1. Funciones de los sistemas de bases de datos: definición de bases de datos(BD). Modelos y Sistemas de Gestión de Bases de Datos (SGBD). Motivaciones. Funcionalidad de un SGBD. Arquitecturas. Funciones del administrador de bases de datos. 2.Modelos de datos: conceptos. Modelo Entidad-Interrelación(ER). Modelo ER Extendido. Modelo relacional. Representación relacional de entidades e interrelaciones. 3.Algebra y cálculo relacionales: Algebra relacional. Cálculo Relacional. Equivalencia entre el álgebra y el cálculo. Completitud relacional. 4.Teoría de Diseño Relacional: conceptos de diseño de esquemas relacionales. Qué es un buen esquema. Dependencias de datos: funcionales, multivaluadas y junta. Formas normales: 3FN, FNBC, 4FN y 5FN. Aplicaciones. 5. El lenguaje de consulta SQL:Definición de datos. Consulta. Predicados de comparación cuantificados. La operación de junta en SQL. Consultas anidadas. Otros tipos de junta. Outer Join. Otros Operadores. Uso de Funciones. Orden y Agrupamiento. Actualización. Definición de Vistas. Control de Seguridad. Valores Nulos. Restricciones. Triggers. Programación SQL. SQL Dinámico. 6.Procesamiento de Consultas: compilación de consulta. Árbol de consulta. Modelo de costos. Optimización sintáctica. Métodos de evaluación de la operación de junta. Determinación de caminos de acceso. Evaluación de planes y estrategias de acceso. Costos. 7.Concurrencia: Concepto de transacción. Propiedades. Mecanismos de control del paralelismo. Ejecuciones serializables. Sincronización. Locks, diversos tipos. Deadlocks. Modelo básico. Protocolo de dos fases. Protocolo de árbol. Protocolo de marcas de tiempo. Modelo de scheduler. Niveles de aislamiento. 8. Recuperación: el problema de las fallas y los mecanismos de recuperación. Métodos que usan log: con actualización diferida y con actualización inmediata. Operaciones. Puntos de verificación. Recuperación de medio. 9. Bases de Datos Objeto-Relacional: bases de datos orientadas a Objetos. Extensiones al modelo relacional. Tipos de datos. Constructores de tipos. Herencia. Diseño de bases de datos para un sgbd objeto-relacional. Lenguaje de consulta. Optimización de consultas. Ejemplos de sistemas. 10. Introduccion a Data Warehousing: Arquitectura de un data warehouse. Procesos ETL, consultas, back up y archivo. OLAP: concepto, operaciones, implementaciones ROLAP, MOLAP y HOLAP. Diseño conceptual y logico: esquema estrella y variantes. BIBLIOGRAFÍA 1. Abiteboul, S.-Hull, R. –Vianu, V.: Foundations of Databases. Addison Wesley. 1995. 2. Bernstein, P. - Hadzilacos, V. - Goodman, N.: Concurrency Control and Recovery in Database Systems. Addison-Wesley. 1987. 3. Bertino, Elisa - Martino, Lorenzo: Sistemas de bases de datos orientadas a objetos. Addison-Wesley. 1995. 4. Brodie, M. - Mylopoulos, J.: On Conceptual Modelling. Springer- Verlag. 1984. 2 de 7 7515 - Base de Datos PLANIFICACIONES Actualización: 1ºC/2013 5. Brodie, M. - Mylopoulos, J.: On Knowledge Base Management Systems. Springer-Verlag. 1986. 6. Dietrich, S. – Urban, S.: An Advanced Course in Database Systems – Beyond Relatinal Databases. PrenticeHall. 2005. 7. Elmasri, R. - Navathe, S.: Fundamentals of Database Systems. 6º Edición. Addison-Wesley. 2010. 8. García-Molina, H. – Ullman, J. – Widom, J.: Database System: The Complete Book. 2nd Ed. Prentice-Hall. 2008. 9. Gray, J. - Reuter, A.: Transaction Processing: Concepts and Techniques. Morgan Kaufmann. 1993. 10. Kimball, R. y Ross, Margy: The Data Warehouse Toolkit. 2nd Edition. Wiley. 2002. 11. Kimball, R. - Reeves, L. - Ross, M. - Thornthwaite, W.: The Data Warehoouse Lifecycle Toolkit. 2nd Editon. Wiley.2008. 12. Mendelzon, A. – Ale, J: Introducción a las Bases de Datos Relacionales. Prentice Hall. 2000. 13. O’Neil, P. -O'Neil, E.: Database Systems: Principles, Programming and Performance. Morgan Kaufmann. 2000. 14. Ramakrishnan, R. – Gehrke, R.: Database Management Systems. 3º Edición. McGraw-Hill. 2002. 15. Silberschatz, A. - Korth, H. – Sudarshan, S..: Database System Concepts. 6º Edición. McGraw-Hill. 2010. 16. Teorey, T. - Lighstone, S. - Nadeaur, T. - Jagadish, H.: Database Modeling and Design: Logical Design. 4º Edición. Morgan Kaufmann. 2005. 17. Ullman, Jeffrey: Principles of Database and Knowledge-Base Systems. Vol I y II. Computer Science Press. 1988 y 1989. 18. Ullman, J.- Widom, J.: A First course in Database Systems. 3rd Ed. Prentice-Hall. 2007. RÉGIMEN DE CURSADA Metodología de enseñanza Clases teóricas. Exposición teórica de conceptos fundamentales, con resolución metódica de problemas tipo y ensayos sobre objetivos. Las clases teóricas serán expositivas y participativas. Se realizarán análisis de casos concretos. Se incluirán debates sobre alternativas de diseño, ventajas y desventajas de propuestas. Se realizarán comparaciones entre teorías y con otros campos de aplicación, como por ejemplo las comparaciones entre dato e información, teoría de la normalización y diseño de un data warehoouse. En todos los casos se fomentará el espíritu crítico y la habilidad para proponer alternativas de solución a problemas de diseño. En las clases prácticas se desarrollarán aplicaciones a casos reales en pequeña escala. - Clases prácticas Resolución por parte de los alumnos y controlada por los docentes auxiliares de problemas correspondientes a las unidades temáticas del programa, ya sea por escrito o por máquina (programas). En general se tratará de problemas abiertos, que generen dudas y motiven la consulta a los docentes y la profundización del conocimiento a través de la bibliografía. Durante el curso se plantearán trabajos prácticos con problemas complejos a resolver por programación, que los alumnos deberán desarrollar en grupo. En las clases prácticas se dará especial énfasis en la solución de problemas concretos, aplicaciones a casos realisticos y se realizarán trabajos de laboratorio. - Clases de consulta Se preven clases de consulta para evacuar dudas, ampliar y repasar las exposiciones realizadas y para orientar a los alumnos en la solución de los problemas planteados como ejercicios y prácticas de laboratorio. Modalidad de Evaluación Parcial Evaluación De manejo de conceptos, aplicación de conocimientos y dominio de técnicas, mediante la respuesta a preguntas y la resolución de problemas por escrito en evaluaciones parciales e integradoras. Las evaluaciones parciales e integradoras son por unidades o subunidades temáticas. La evaluación es Teórico-Práctica y se aprueba con calificación mayor o igual a 4. La evaluación se puede recuperar utilizando cualesquiera de las dos fechas establecidas para recuperación. 3 de 7 7515 - Base de Datos PLANIFICACIONES Actualización: 1ºC/2013 CALENDARIO DE CLASES Semana Temas de teoría Resolución de problemas <1> 15/08 al 20/08 Conceptos fundamentale s. Nocion de bas de datos y sistemas de gestion de bases de datos. •Presentación •SGBD •Modelos de datos <2> 22/08 al 27/08 Modelos de datos: conceptos. Modelo EntidadInterrelación(E R). Modelo ER Extendido. Modelo ENTITYRELATIONSHIP - Explicación - Ejercicios y consultas <3> 29/08 al 03/09 Modelo relacional. Representació n relacional de entidades e interrelacione s. Algebra Relacional MODELO RELACIONAL Transformación:M.ER al M.R. - ALGEBRA RELACIONAL - Entrega enunciado TP <4> 05/09 al 10/09 Algebra y cálculo relacionales: Algebra relacional. Cálculo Relacional. Equivalencia entre el álgebra y el cálculo. Completitud relacional. ALGEBRA RELACIONAL - Explicación - Consultas <5> 12/09 al 17/09 4.Teoría de Diseño Relacional: conceptos de diseño de esquemas relacionales. Qué es un buen esquema. Dependencias de datos: funcionales, descomposici on de esquemas. Aplicaciones. ALGEBRA RELACIONAL - Consultas <6> 19/09 al 24/09 Formas normales basadas en dependencias funcionales: 3FN y FN de Boyce-Codd. - SQL Explicación general <7> 26/09 al 01/10 Dependencias multivaluadas y de junta. Formas - SQL - Explicación: Vistas/Grants/ Indices Laboratorio 4 de 7 Otro tipo Fecha entrega Informe TP Bibliografía básica 7515 - Base de Datos Semana <8> 03/10 al 08/10 PLANIFICACIONES Temas de teoría Resolución de problemas normales: 4FN y 5FN. - Consultas El lenguaje de consulta SQL:Definición de datos. Consulta. Predicados de comparación cuantificados. La operación de junta en SQL. Consultas anidadas. Otros tipos de junta. Outer Join. Otros Operadores. Uso de Funciones. Orden y Agrupamiento . - S.Q.L. - Explicación: SQL Inmerso - Consultas Laboratorio Otro tipo Actualización. Definición de Vistas. <9> 10/10 al 15/10 Control de Seguridad. Valores Nulos. Restricciones. Triggers. Programación SQL. SQL dinamico. 6.Procesamie nto de Consultas: compilación de consulta. Árbol de consulta. Modelo de costos. Optimización sintáctica. Métodos de evaluación de la operación de junta. - Teoría de Diseño Relacional - Explicación - Consultas <10> 17/10 al 22/10 Determinación de caminos de acceso. Evaluación de planes y estrategias de acceso. Costos. - Consultas - Errores más frecuentes <11> 24/10 al 29/10 Recuperación: el problema de las fallas y los mecanismos de recuperación. Métodos que usan log: con Evaluacion Evaluación Parcial 5 de 7 Actualización: 1ºC/2013 Fecha entrega Informe TP Bibliografía básica 7515 - Base de Datos Semana Temas de teoría PLANIFICACIONES Resolución de problemas Laboratorio Otro tipo Actualización: 1ºC/2013 Fecha entrega Informe TP actualización diferida y con actualización inmediata. <12> 31/10 al 05/11 Operaciones. Puntos de verificación. Recuperación de medio. SQL avanzado: Explicación de: Stored Procedures Triggers, Rules, Defaults y Valores NULL - Entrega preliminar TP Entrega preliminar TP <13> 07/11 al 12/11 7.Concurrenci a: Concepto de transacción. Propiedades. Mecanismos de control del paralelismo. Ejecuciones serializables. Sincronización. Locks, diversos tipos. Deadlocks. Modelo básico. Protocolo de dos fases. - Teoría de Diseño Relacional - Consultas - Optimización de Consultas - Explicación Ejercicios y consultas Entrega de parciales <14> 14/11 al 19/11 Protocolo de árbol. Protocolo de marcas de tiempo. Evaluacion Recuperación del Parcial <15> 21/11 al 26/11 Estructura de un scheduler. Niveles de aislamiento. Optimización de Consultas. Ejercicios y consulta Entrega de recuperatorios <16> 28/11 al 03/12 Inroduccion a Data Warehousing. Bases de Datos ObjetoRelacional: bases de datos orientadas a Objetos. Extensiones al modelo relacional. Tipos de datos. Constructores de tipos. Herencia. Diseño de bases de datos para un sgbd objetorelacional. Lenguaje de consulta. Optimización de consultas. Ejemplos de sistemas. Entrega final del TP Entrega final del TP 6 de 7 Bibliografía básica 7515 - Base de Datos PLANIFICACIONES Actualización: 1ºC/2013 CALENDARIO DE EVALUACIONES Evaluación Parcial Oportunidad Semana 1º 11 Fecha 19:00 2º 14 19:00 3º 4º 7 de 7 Hora Aula