Sistemas Manejadores de Bases de Datos.
Profesor: Dr. Javier García García
Ayudante: Rogelio Montero Campos
Laboratorista: Luis Roberto Cruz Martínez
1. El hardware en una base de datos.
1.1 La jerarquía de memoria.
1.2 Los discos duros
1.3 Los niveles RAID
1.4 Representación de los datos
1.5 Elementos de datos y campos
1.6 Registros
1.7 Representación de direcciones de bloques y registros
2. Los Sistemas de archivos
2.1 El sistema de archivos secuencial indexado
2.2 El sistema de archivos indexado
2.3 El sistema de archivos de acceso directo (hash)
2.4 Índices de múltiples dimensiones y de mapas de bits
3. Procesamiento de consultas
3.1 Etapas
3.1.1 Introducción a los operadores en los planes de consultas
3.1.2 Análisis sintáctico (parseo)
3.1.3 Leyes algebraicas para la improvisación de los planes de ejecución
3.1.4 Árboles de parseo
3.1.5 Estimación de costos
3.1.6 Selección basada en el costo
3.1.7 El orden de las reuniones (joins)
3.1.8 Completando el plan de ejecución
3.2 Estructura
3.3 La selección
3.4 La reunión
3.4.1 Algoritmos de una pasada
3.4.2 Reuniones con ciclos anidados
3.4.3 Algoritmos de dos pasadas basados en ordenamiento
3.4.4 Algoritmos de dos pasadas basados en estructuras Hash
3.4.5 Algoritmos basados en Índices
3.4.6 Algoritmos que utilizan más de dos pasadas
3.5 Evaluación de expresiones (materialización y pipeline)
3.6 Transformación y evaluación de expresiones
3.7 Optimizaciones
4. Transacciones
4.1 Concepto (ACID)
4.2 Implementación de ACID
4.3 Seriabilidad
5. Concurrencia
5.1 Seriabilidad y sus problemas
5.2 Bloqueos y sus tipos
5.3 Deadlock: Definición, manejo y prevención
5.4 Calendarización
5.5 Métodos de control de concurrencia (marcas de tiempo y validación)
6. Sistemas de recuperación
6.1 Tipos de falla
6.2 Seriabilidad
6.3 Recuperación
6.4 Tipos de almacenamiento
6.5 Recuperación basada en bitácoras
6.6 Protección contra fallas en los medios
6.7 Paginación sombra
6.8 Recuperación en transacciones concurrentes
7. Arquitecturas de los Sistemas de Bases de Datos
7.1 Clasificación
7.2 Sistemas paralelos
7.3 Aceleración y escalamiento (speedup, scaleup)
7.4 Sistemas distribuidos
7.5 Tipos de redes
8. Bases de Datos Parelelas y Distribuidas
8.1 Introducción
8.2 Parelelismo interconsulta e intraconsulta
8.3 Paralelismo intraoperacional e interoperacional
8.4 Almacenamiento distribuido
8.5 Replicación y fragmentación
8.6 Procesamiento de consultas distribuidas
8.7 Modelo de transacciones distribuidas
8.8 Protocolos de Verificación
8.9 El coordinador y su selección
8.10 Control de concurrencia
8.11 Manejo de deadlock
9. Bodegas de Datos (Datawatehouse) y Minería de Datos
9.1 Conceptos de DataWarehouse
9.2 OLAP y OLPT
9.3 Ventajas y aplicaciones
9.4 Data-Marts
9.5 Cubos de múltiples dimensiones
9.6 Operaciones
9.7 Clustering, Reglas de asociación y árboles de decisión
Calificación:
Examen : 50%
Prácticas : 30%
Tareas : 20%
Bibliografía
[1] R. Elmasri and S.B. Navathe. Fundamentals of Database Systems. Addison Wesley, 6th Edition, April 2010.
[2] H. Garcia-Molina, J.D. Ullman, and J. Widom. Database Systems: The Complete Book Prentice Hall, 2nd edition, June 2008.
[3] A. Silberschatz, H.F. Korth, and S. Sudarshan. Database System Concepts Mcgraw-Hill College, 6th edition, 2010.