Profesores:    John Freddy Duitama y Jonathan Medina.

Objetivos: Al finalizar el curso el estudiante debe estar en condiciones de:

  • Identificar y aplicar con propiedad los conceptos fundamentales que rigen el mundo de las Bases de Datos.
  • Aplicar la tecnología de bases de datos en el desarrollo de sistemas de información.
  • Conocer los aspectos más relevantes de las nuevas tendencias en B. de D.

Temas

1.    Características de un Sistema de Gestión de Bases de Datos (S.G.B.D) – 2 sesiones
Objetivo: Identificar las características principales de un S.G.B.D y discutir las razones que llevan a su uso.
1.1.  Línea de tiempo. Las Bases de Datos y el Big Data.

Descargar

1.2.  Capacidades de un S.G.B.D

Descargar

1.3. Arquitectura funcional de un S.G.B.D.

Descargar

 

2.    Teoría Relacional – 5 sesiones
Objetivos:

  • Conocer los conceptos básicos de la teoría relacional.
  • Aplicar estos conceptos en casos prácticos de almacenamiento y consulta de información.
  • Conocer las normatividad legal, aspectos éticos y retos asociados al manejo de la información.
2.1. El modelo de datos relacional.

Descargar

2.2. Taller sobre álgebra relacional (Enunciados y solución)

 Ver

2.3. El lenguaje de manipulación de datos del SQL.

Descargar

2.4.  Taller sobre SQL: La base de datos de vinos

Ver

2.5.  Aspectos Legales en el manejo de la información.

 Descargar

 

3.    Diseño Lógico y Conceptual de la Base de Datos - 10 sesiones

Ver

Objetivo: Aplicar las técnicas necesarias para el correcto diseño de una base de datos.
3.1. La teoría de las dependencias funcionales y las formas normales.

Descargar

3.2. El modelo Entidad – Relación.

Descargar

3.3. Caso de estudio: Sistema de registro académico de una universidad.

Ver

3.4. Traducción al esquema relacional.

Descargar

3.5. La vista externa de una base de datos.

Descargar

 

4.    El Nivel Interno de una Base de Datos – 4 sesiones
Objetivo: Discutir y aplicar los criterios de selección y los costos de las diversas alternativas de almacenamiento físico de los datos.
4.1. Mecanismos de acceso y su costo

Descargar

4.2. El diseño físico de una base de datos

Descargar

4.3. Los arreglos de discos, el paralelismo y las particiones.

Descargar

 

5.    La optimización de consultas – 4 sesiones
Objetivo: Discutir y aplicar la teoría de optimización de consultas en un S.G.B.D. relacional.
5.1. La optimización algebraica de consultas

Descargar

5.2. La optimización por costos de una sentencia SQL

Descargar

 

6.    El Sistema de Gestión de Bases de Datos – 3 sesiones
Objetivo:

  • Identificar los principales problemas que se presentan en la construcción de un S.G.B.D.
  • Introducir los principios de seguridad de la información en bases de datos.
6.1. El manejo de las transacciones y el control de concurrencia.
6.2. Mecanismos de recuperación ante fallas
6.3. La seguridad de la información

 

7.    Nuevas Tendencias en las B de D.  – 2 sesiones
Objetivo:

  • Introducir nuevas tendencias en las B. de D. usadas el manejo de la información no estructurada.
  • Introducir tendencias de las B. de D para soportar grandes volúmenes de información.
7.1. Las Bodegas de datos.
7.2. Bases de Datos No S.Q.L
7.3. Procesamiento Paralelo y distribuido  y el SQL

Laboratorios

1. XML.  2 Sesiones. 
  • Qué es XML?
  • XML Schema

Ver

Ver

  2. Lenguajes de consulta relacional.   3 Sesiones.
  • Taller de Álgebra relacional.
  • Taller de S.Q.L

 Ver

Ver

3. Introducción a PL/SQL   4. Sesiones

Ver

  • Cursores y excepciones PL/SQL
  • Procedimientos almacenados PL/SQL
  • Funciones y paquetes PL/SQL
4. Trigger PL/SQL   2 Sesiones 

Ver

5. SQL Injection.  2 Sesiones

Ver

6. Bases de datos NoSQL.  1 Sesiones

Ver

7. Optimizador Oracle.  2 Sesiones

Ayudas

Video: Instalar y configurar Oracle y SQLDeveloper.

Ver

Video: Uso de SQLDeveloper para las consultas sobre la base de datos de vinos

Ver

Taller de XML y XPATH. Descargar

Evaluación

La arquitectura de un S.G.B.D y de la teoría relacional y el SQL Examen y taller

20%

  • Taller de SQL.
  • Talleres de álgebra Relacional.
  • Evaluación
Diseño conceptual y lógico de una pequeña base de datos Trabajo

30%

  • Especificación del sistema.
  • Modelo entidad-asociación
  • Diagrama general de vista externa.
Diseño físico de una base de datos Trabajo y tareas

15%

  • Matriz de Transacciones vs tablas.
  • Transacciones y tablas críticas.
  • Estructuras de almacenamiento.
  • Índices primarios y secundarios.
Trabajo de optimización de consultas y del S.G.B.D Trabajo y quiz

15%

  • Transformación algebraica de una sentencia SQL.
  • Evaluación por costos de una sentencia sobre una tabla.
  • Evaluación de costos de un join.
Laboratorio de bases de datos Trabajos Prácticos en el laboratorio

20%

  • Introducción a Oracle y SQL Developer.
  • Subprogramas en PL/SQL.
  • Triggers en PL/SQL.
  • Programación segura.
  • Optimizador de Oracle.

Bibliografía

1. Abraham Silberschatz, Henry, Korth y S. Sudarshan. Database system concepts. Sixth Edition. McGraw-Hill. 2010.
2. Chang, Fay, et al. “Bigtable: A Distributed Storage System for Structured Data.” OSDI, 2 (2006)
3.  Jeffrey D. Ullman and Jennifer Widom. A First course in Database Systems. Prentice Hall. 1997.
4.  Jeffrey D. Ullman. Principles of Database and Knowledge-Base System. Volúmenes I y II. Computer Science Press. 1988.
5.  ORACLE Corp. Concepts Manual Oracle Server.
6.  Richard Barker. El modelo Entidad-relación. CASE*METHOD. Addison-Wesley. 1990.
7.  Ricardo, Rocha. Modelaje Entidad/relación. s.e.
8. T. Bray, J. Paoli and C.M. Sperberg-Mc Queen. Extensible Markup Language. (XML) 1.0.((Fifth Edition) ) W3C Recommendation, Noviembre 10 February 1998, avalaible at http://www.w3c.org/TR/REC-XML.
9. Manyika, et. all. Big data: The next frontier for innovation, competition, and productivity. McKinsey Global Institute (2011).