Encabezado Facultad de Ciencias
Presentación

Ciencias de la Computación (plan 1994) 2013-1

Optativas, Sistemas Manejadores de Bases de Datos

Grupo 7040, 20 lugares. 12 alumnos.
Profesor Javier García García lu mi vi 7 a 8 Taller de Ingeniería de Software
Ayudante Rogelio Montero Campos ma ju 7 a 8 Taller de Ingeniería de Software
Ayud. Lab. Luis Roberto Cruz Martínez vi 14 a 16 Taller de Ingeniería de Software
 

SISTEMAS MANEJADORES DE BASES DE DATOS

TEMARIO

Profesor

Javier García García

Ayudante

Rogelio Montero Campos

Ayud. Lab.

Luis Roberto Cruz Martínez

Asignatura(s) precedente(s):

SISTEMAS DE BASES DE DATOS

Asignatura(s) subsecuente(s) o en paralelo:

GRANDES BASES DE DATOS, SEMINARIO DE BASES DE DATOS

Objetivo(s) del curso:

Estudiar los elementos que componen los sistemas manejadores de bases de datos actuales, resaltando las tareas que desarrollan tales como: Manejo de transacciones, optimización, concurrencia, recuperación, manejo de grandes volúmenes de información, actualización de los datos en archivos, despliegue de información. El estudio de los elementos y tareas mencionadas se realizará con sistemas manejadores de bases de datos concretos.

Temario

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.

1.8 Registros y datos de tamaño variable.

Práctica 1 - Acceso a memoria

Práctica 2 - Niveles RAID

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.

Práctica 3 - Sistemas de archivos

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ático (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 (join).

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.

Práctica 4 - Manejo de Índices

Práctica 5 - Optimización de consultas

4 Transacciones.

4.1 Concepto (ACID).

4.2 Implementación de ACID.

4.3 Seriabilidad.

Práctica 6 - Transacciones

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).

Práctica 7 - Concurrencia

6 Sistemas de recuperación

6.1 Tipos de fallas.

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.

Práctica 8 - Recuperación

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 Paralelas y Distribuidas.

8.1 Introducción

8.2 Paralelismo 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 (commit protocols).

8.9 El coordinador y su selección

8.10 Control de concurrencia.

8.11 Manejo de deadlock.

Práctica 9 Bases de Datos Distribuidas - uso de un SMBD distribuido (Slony, VirtualBox)

9 Bodegas de Datos (Datawarehouse) y Minería de Datos.

1.1 Conceptos de DataWarehouse.

1.2 Ventajas y aplicaciones.

1.3 Data-Marts.

1.4 Cubos de múltiples dimensiones.

1.5 Operaciones.

Práctica 10 – Datawarehouse y Minería de Datos – uso de TPC-H

Bibliografía básica:

[1] R. Elmasri and S.B. Navathe. Fundamentals of Database Systems. Addison Wesley, 6th edition, 2010.

[2] H. Garcia-Molina, J.D. Ullman, and J. Widom. Database Systems: The Complete Book Prentice Hall, 2nd edition, 2008.

[3] A. Silberschatz, H.F. Korth, and S. Sudarshan. Database System Concepts Mcgraw-Hill College, 6th edition, 2010.

Bibliografía complementaria:

Biblioteca Digital ACM e IEEE , artículos escogidos de ACM SIGMOD, ACM CIKM, ACM TODS, ACM TOIS, IEEE TKDE, Decision Support Systems Journal, Information Systems Journal

Taller solicitado.

Taller de Ingeniería de Software y Bases de Datos

martes y jueves 7:00 - 8:00 hrs.

Lab: ------

La clase del profesor lunes, miércoles y viernes 7:00 - 8:00 hrs. puede ser en un salón de clase (con pantalla) o en el mismo taller.

Software: (este sw se actualiza constantemente y el laboratorista o el ayudante lo puede proporcionar)

Postgresql v 9.1.0

Slony-I v 2.1.1

VirtualBox 4.1.18

Calificación:

Examenes

40.00%

Prácticas

40.00%

Tareas/Participación

20.00%

 


Hecho en México, todos los derechos reservados 2011-2016. Esta página puede ser reproducida con fines no lucrativos, siempre y cuando no se mutile, se cite la fuente completa y su dirección electrónica. De otra forma requiere permiso previo por escrito de la Institución.
Sitio web administrado por la Coordinación de los Servicios de Cómputo de la Facultad de Ciencias. ¿Dudas?, ¿comentarios?. Escribenos. Aviso de privacidad.