Logo UAB
2022/2023

Bases de Datos Relacionales

Código: 104350 Créditos ECTS: 6
Titulación Tipo Curso Semestre
2503758 Ingeniería de Datos OB 2 1

Contacto

Nombre:
Enric Marti Godia
Correo electrónico:
enric.marti@uab.cat

Uso de idiomas

Lengua vehicular mayoritaria:
catalán (cat)
Algún grupo íntegramente en inglés:
No
Algún grupo íntegramente en catalán:
Algún grupo íntegramente en español:
No

Equipo docente

Enric Marti Godia

Prerequisitos

Se recomienda que el alumno tenga conocimientos y capacidades de:

  • Programación en lenguajes de tercera generación (C, PHP, Java, etc.).
  • Estructuras básicas de datos.

Objetivos y contextualización

En esta asignatura se introduecen los conceptos básics de Bases de Datos Relacionales (BDR) necesarios tanto a nivel de diseñador de BD como de usuario.

CONOCIMIENTOS: Al finalizar el curso el alumno ha de ser capaz de:

  • Conocer y comprender el salto tecnológico importante que representan los sistemas de Bases de Datos y las BDR en concreto, en referencia al tratamiento de información en computador, así como en el diseño y mantenimiento de aplicaciones de tratamiento de información.
  • Conocer la arquitectura de los sistemas de BDR, las funciones de cada módulo y el personal que trabaja en estos sistemas (usuarios, programadores y administradores de BD). La arquitectura es estudiada desde un punto de vista local y remoto.
  • Estudiar las propiedades del modelo relacional de BD, extendido en la mayoria de motores de BD.
  • Conocer y saber aplicar el lenguaje SQL, estándard en BDR.
  • Conocer y saber aplicar el modelo Entidad/Relació (E/R), muy utilizado en diseno de BDR.
  • Comprender la metodología de diseño de BD, incluídas las técnicas de normalización de una BDR.
  • Conocer las principales estructuras de almacenamiento de datos que se utilizan en BDR, como son la indexación y las funciones hashing.

HABILIDADES: Se pretende que los alumnos adquieran las sigüientes habilidades:

  • Utilizar las Reglas de Integritat del modelo relacional de BD.
  • Realizar consultas simples y de una cierta complejitat a una BDR mediante SQL.
  • Diseñar una BD en el Modelo E/R a partir de unas especificaciones del mundo real.
  • Convertir la BD en el Modelo E/R a un conjunto de relaciones y atributos de una BDR, aplicando las técnicas de normalitzación.
  • Trabajar con un ejemplo de motor de BDR com es ORACLE, de uso muy extendido en el ámbito profesional, a nivel de usuario.

Competencias

  • Concebir, diseñar e implementar sistemas de almacenamiento de datos de forma eficiente y segura.
  • Manipular grandes volúmenes de datos heterogéneos.
  • Prevenir y solucionar problemas, adaptarse a situaciones imprevistas y tomar decisiones.
  • Que los estudiantes tengan la capacidad de reunir e interpretar datos relevantes (normalmente dentro de su área de estudio) para emitir juicios que incluyan una reflexión sobre temas relevantes de índole social, científica o ética.
  • Trabajar cooperativamente, en entornos complejos o inciertos y con recursos limitados, en un contexto multidisciplinar, asumiendo y respetando el rol de los diferentes miembros del equipo.

Resultados de aprendizaje

  1. Diseñar bases de datos relacionales o no relacionales adecuadas a los datos a procesar.
  2. Diseñar y configurar infraestructuras de procesamiento de datos en función de determinados requerimientos.
  3. Hacer consultas sobre bases de datos.
  4. Prevenir y solucionar problemas, adaptarse a situaciones imprevistas y tomar decisiones.
  5. Que los estudiantes tengan la capacidad de reunir e interpretar datos relevantes (normalmente dentro de su área de estudio) para emitir juicios que incluyan una reflexión sobre temas relevantes de índole social, científica o ética.
  6. Redactar informes técnicos de una base de datos.
  7. Trabajar cooperativamente, en entornos complejos o inciertos y con recursos limitados, en un contexto multidisciplinar, asumiendo y respetando el rol de los diferentes miembros del equipo.

Contenido

BLOQUE 1. PARADIGMAS DE BASES DE DATOS

1. Introducción. Conceptos básicos (2 horas)

  • Introducción y definiciones
  • Componentes de un sistema de Base de Datos
  • Evolución histórica
  • Ventajas e inconvenientes de un sistema de Base de Datos

2. Arquitectura de Bases de Datos Relacionales (2 horas)

  • Arquitectura ANSI-SPARC
  • El DBA y EL SGBD
  • Arquitectura back-end / front-end

BLOC 2. MODELO RELACIONAL

3. Modelo Relacional: Estructura de Datos y Reglas de Integritat (2 horas)

  • Estructura de Datos
  • Reglas de Integridad

4. Model Relacional: Manipulación de Datos (6 hores)

  • Álgebra Relacional
  • Cálculo Relacional
    • Operadores de Codd
    • Operadores adicionales

BLOQUE 3. DISEÑO DE BASES DE DATOS

5. Diseño Conceptual (8 horas)

  • Fases de diseño de una BD
  • Captación y análisis de requerimientos
  • Diagrama E/R
  • E/R Extendido
  • Criterios de diseño de un esquema E/R

6. Diseño Lógico (2 horeas)

  • Paso a Tablas (Modelo Relacional)

7. Normalización (2 horas)

  • Teoría de la Normalización
  • Formas Normales: 1NF, 2NF, 3NF
  • Forma Normal de Boyce-Codd (BCNF)

BLOQUE 4. NIVEL FÍSICO

8. Diseño Físico (2 horas)

  • Acceso a la Base de Datos física. Ficheros
  • Estructuras de almacenamiento
    • Indexación
    • Hashing (dispersión)
  • Técnicas de compresión

Metodología

NOTA INFORMATIVA PREVIA DEBIDO AL COVID:

  • Esta asignatura se impartirá en modo on-line debido a la pandèmia, por tanto todas las actividades que figuran como presenciales se harán virtuales mediante la plataforma Microsoft Teams https://teams.microsoft.com/ i/o la Plataforma Virtual. Cualquier cambio a lo largo del curso por las indicaciones del gobierno y/o de la UAB se notificará en la Plataforma Virtual con la antelación necesaria.

PLATAFORMA VIRTUAL:  Caronte (http://caronte.uab.cat, grado d’Enginyeria de Dades, assignatura Bases de Dades Relacionals, curso BDR Curs 2020-21).

El proceso de aprendizaje del alumnado se fundamenta en dos tipos de actividades presenciales (Teoría y Seminarios) y una actividad de trabajo autónomo, el Informe Técnico. La asistencia a las classes de teoría y de seminarios NO ES OBLIGATORIA, pero SÍ MUY RECOMENDABLE.

TEORIA

Las clases de teoría se imparten mediante clases magistrales con transparencias y pizarra. Todo el material del curso será accessible a través de la Plataforma Virtual. Algunas de las sesiones de teoría se dedicarán a resolver ejercicios planteados en la misma aula con el objectivo de profundizar en los conceptos más relevantes y enseñar al alumno a identificar y analizar los errors típicos.

SEMINARIOS

Se compone de dos partes. En una primera parte se introducirá el lenguaje SQL y para practicar se proporcionará un script en SQL sobre una BDR con contenido y un enunciado con unas 120 consultas que el alumno ha de resolver. Se proporcionan las tablas resultantes para que el alumno pueda practicar fuera del aula. En las sesionesde seminario se proponen consultas a resolver, que los alumnos hacen con la tutorización del profesor. Se proporciona una cuenta al servidor Oracle de la Escuela de Ingeniería y el link para descargar el software cliente sqlDeveloper de Oracle para que los alumnos puedan enviar sus consultas al servidor Oracle de la Escuela. En un modo más local, se proporciona el link para descargar una versión reducida del motor Oracle (Oracle Express Edition), para poder instalarlo en un PC personal o portátil en modo local.

En la segunda parte del curso ese proporciona un enunciat con problemas de diseño de Bases de Datos, alguns dels quals, a propuesta del profesor, los alumnos resolverán en clase con su soporte.

Toda la documentación (enunciados de SQL y diseño, scripts de BD, resultados de los problemas) de seminarios estarán disponibles en la Plataforma Virtual.

INFORME TÉCNICO

Se propone una actividad de trabajo autónomo y cooperativo: caso de uso en el diseño de una base de dades real.

En esta actividad se presentará al alumno un caso real de diseño de BD para que el alumno realice todas las fases de diseño: captación y análisis de requerimients, diseny E/R, diseño lógico i juego de consultas SQL.  Esta activitat se realizará en grupos de 5 personesa que sde deberán inscribir via Plataforma Virtual. Se realizará un seguimiento de las diferentes etapas del informe técnico.  Al final del curso el grupo deberá enviar un informe técnico con todas las etapas realizadas que será evaluado.  Se realizarán dos entregas avaluables en Caronte: una primera entrega del diseño E/R con la que poder obtener feed-back del profesor i la entrega final con todas las etapas realizadas a final del semestre.

El trabajo cooperativo se trabaja tanto en la actividad de diseño de una BD en que el alumno deberá trabajar en un grupo de 5 persona como en la realización de los problemas propuestos en las sesiones de seminario.

Nota: se reservarán 15 minutos de una clase dentro del calendario establecido por el centro o por la titulación para que el alumnado rellene las encuestas de evaluación de la actuación del profesorado y de evaluación de la asignatura o módulo.

Actividades

Título Horas ECTS Resultados de aprendizaje
Tipo: Dirigidas      
Clases magistrales 26 1,04 1, 2, 5
Explicación y resolución de problemas 26 1,04 3, 4, 6, 7
Tipo: Supervisadas      
Revisión Informe Técnico 2 0,08 4, 6, 7
Tipo: Autónomas      
Estudio individual 26 1,04 1, 2, 5
Informe Técnico 8 0,32 4, 6, 7
Realización problemas SQL y diseño de BDR 52 2,08 1, 2, 3, 4, 7

Evaluación

La evaluación de la asignatura se harà de forma continuada, basada en tres indicadores: Teoria, SQL y el Informe Técnico.

TEORIA

Habrá dos examenes individuales por escrito, con un peso del 50% cada uno sobre la Nota de Teoria. La primera prueba (Par1) se harà aproximadamente a la mitad del semestre y evaluará los conceptos teóricos explicados hasta la fecha y la capacidad de resolución de consultas de BDR en álgebra relacional. La segunda prueba (Par2) se realizará al final del semestre y evaluará los conceptos explicados hasta el momento, de teoría (diseño de BD, normalización, nivell físico) y la capacidad de resolución de supuestos de diseño E/R y paso a modelo relacional.

Examen de recuperación: En caso de que la nota de teoría no llegue al aprobado, los estudiantes se podrán presentar a un examen de recuperación sobre los contenidos del examen parcial suspendido.

En las clases de seminario se proponen dos entregas voluntarias valoradas cada una con 0’5 puntos a sumar a la nota del examen parcial (Par1 o Par2). La primera entrega consta de ejercicios de consultas SQL en que se evalua les habilidades del alumno en la resolució de consultas sobre BDR en SQL (NPrb1). La segunda entrega consta de un ejercicio de diseño de BD, donde a partir de unos requerimientos hay que disenñar el diagrama E/R más acorde a los requerimientos (NPrb2).

EXAMEN SQL

Examen individual por ordenador en que se valoran les capacidades del alumne en la resolución de consultes SQL. Se proponen un conjunto de consultes SQL al azar sobre la BD utilizada en los seminaris que el alumno deberá resolver en un tiempos determinado (Nota SQL).

Examen de recuperación: En caso de que el examen SQL no llegue a 5, el alumne tiene una nueva oportunidad con el mismo formato y normas.

INFORME TÉCNICO

EL Informe Técnico es una actividad grupal evaluable que consta de 4 partes, corresponendientes a las 4 fases de diseño de una BDR: Requisitos, Diagrama E/R, Diseño Lógico en tablas e implementación de un conjunto de consultas SQL. Se entregará un documento escrito que continga el trabajo realizado en las 4 fases, debidamemte justificadas. El documentodeberá tener el formato adecuado para que el Diagrama E/R i el Diagrama Relacional correspondiente se puedan lleer correctamente. La Nota del Informe Técnico se obtendrá a partir de dos entregas: La primera, con la redacción de los requerimientos de datos del caso presentado y el Diagrama E/R, resultante del diseño de la BD. La segunda entrega contendrá los mismos puntos de la primera entrega incluyendo las correcciones del profesor añadiendo el Diagrama Relacional (resultante del diseño lógic) y el código de las consultas SQL y sus resultados en tablas. La nota del Informe Tècnic seá la media ponderada de la nota obtenida de las dos entregas: Diseño E/R (60% de la nota) y el Diseño Lógic con consultas SQL (40%).

Si algun diagrama de l’Informe Tècnic no se pudiera lleer con claridad por motivos de resolución o calidad, esta part del informe quedará suspendida, així com las partes que de ella en dependan al no poderse evaluar.

INDICADORES DE CALIFICACIÓN

La nota final de la asignatura se calcula de la sigüiente manera (entre paréntesis cuadrado las notes mínimas par hacer media):

  • Nota Parcial 1 = (Par1 + NPrb1)    [Par1 >=4,5]
  • Nota Parcial2= (Par2+ NPrb2)   [Par2 >= 4,5]
  • Nota Teoria = 0'5 * (Nota Parcial 1) + 0'5 * (Nota Parcial 2)  [Nota Parcial i >=5, i=1,2]
  • Nota SQL [Nota SQL >=5]
  • Nota Informe Técnico = 0'6 * Nota Diseño E/R + 0'4 * Nota Diseño Lógico               [Nota Diseño E/R, Nota Diseño Lógico >= 5]
  • NOTA FINAL ASIGNATURA = 0'5* Nota Teoría + 0'25 * Nota SQL +0'25 * Nota Informe Tècnic

CRITERIOS DE EVALUACIÓN

  • Para que cuenten las notas de las entregas voluntarias de los seminarios (NPrb1 i NPrb2) hay que obtener un mínimo de 4,5 en la nota del examen parcial correspondiente (Par1 o Par2).
  • Para poder calcular la NOTA FINAL ASIGNATURA, habrá que superar todas las actividades evaluables (exámenes de Teoria, Examen SQL y el Informe Técnico) con un 5. 
  • En todas las actividades de recuperación (examenes parciales o de prácticas), la nota máxima serà 8.
  • NO EVALUABLE: Un estudiante se considera No Avaluable (NA) únicamente si no ha realizado ninguna actividad de evaluación. Recordamos que la nota No Avaluable también corre convocatoria.
  • SUSPENSO: En el caso de no llegar al mínimo exigido en alguna de las actividades de evaluación, si el cálculo de la nota final es igual o superior a 5, se pondrá un 4 de nota en el expediente.
  • MATRÍCULA DE HONOR (MH): Podrán obtener una MH estudiantes que tengan una nota igual o superior a los 9 puntos, a criterio del profesor. Como que el número de MH no puede superar el 5% de los estudiantes matriculados, se concederán a los estudiants que tengan las notas finales más altas, a criterio del profesor.
  • REPETIDORES: No se convalida ninguna parte aprobada por separado (Teoría, Examen SQL, Informe Técnico) de un curso académico a otro.
  • IMPORTANTE PARA TODOS LOS ALUMNOS: Es importante inscribirse en Caronte (http://caronte.uab.cat, asignatura Bases de Dades Relacionals, curso Docència BDR curs 2019-20) al inicio del semestre, pues publicamos en él los materiales de la asignatura, se realizan las entregas del informe Técnic y se publican las notes finales de la asignatura. Si es la primera vez que entráis en Caronte debéis proporcionar vuestro NIU, contrasenya, nombre y apellidos, email y una foto carnet en format JPG. Caronte es un gestor algo diferente al Campus Virtual de la UAB, con lo que no hace falta que las contraseñas sean la misma.

CALENDARIO DE EVALUACIÓN:

  • Exámenes Parciales: Fechas al final de la guia docente proporcionada en la Plataforma Virtual y dada a los alumnos el primer dia de classe.
  • Exàmens de Recuperación: Según calendario académico de la Escuela de Ingeniería.
  • Entregas voluntarias en las sesiones de seminarios: No se avisará con antelación, pues al ser una actividad voluntaria se pretende fomentar la asistencia a los seminarios durante todo el semestre.
  • Entrega Informes Técnicos: Fechas al final de la guia docente proporcionada a los alumnos el primer día de clase, figurando en el curso de Caronte en la setmana que corresponda.

Las fechas de evaluación continuada se publicarán en Caronte y pueden estar sujectos a cambios de programación por motivos de adaptación a posibles incidencias. Siempre se informará por medio de Caronte sobre estos cambios ya que e entiende que es la plataforma habitual de intercambio de información entre profesores yestudiantes fuera del aula.

Sin perjuicio de otras medidas disciplinarias que se estimen oportunas,  y deacuerdo con la normativa académica vigente, las  irregularidades cometidas por un estudiante que puedan conducir a una variación de la calificación se calificarán amb un cero (0). Las  actividades de evaluación calificadas de esta forma y por este procedimiento no seran recuperables. Si es necesario superar cualquiera de estas actividades de evaluación para aprovar l'assignatura, ésta quedarà suspendida directamente, sin oportunidad de recuperarla en el mismo curso. Estas irregularidades incloyen, entre otras:

  • La copia total o parcial de un pràctica, informe, o qualquier otra actividad de evaluación.
  • Dejar copiar.
  • Presentar un trabajo de grupo no hecho íntegramente por los miembros del grupo.
  • Presentar como propios materiales elaborados por un tercero,aunque sean traducciones o adaptaciones, y en general trabajos con elementos no originales y exclusivos del estudiante.
  • Tener dispositivos de comunicación (como teléfonos móviles, smart watches, etc.) accesibles durante las pruebas de avaluació teórico-prácticas individuales (exámenes).

Con las excepciones de que se otorgará la calificación de "no evaluable" a los estudiantes que no participen en ninguna de las actividades de evaluación, y de que la nota numérica del expediente será el valor menor entre 3,0 y la media ponderada de les notas en caso que l'estudiante haya cometido irregularidades en un acto de evaluación (y por tanto no será posible el aprobado por compensación).

EN RESUMEB: copiar, dejar copiar o plagiar en cualquiera de las actividades de evaluación equivale a un SUSPENSO con nota inferior a 3,5.

Actividades de evaluación

Título Peso Horas ECTS Resultados de aprendizaje
Entrega voluntaria de ejercicios +1,0 2 0,08 1, 3, 7
Examen SQL 25% 2 0,08 3
Exámenes de Teoría 50% 4 0,16 1, 2, 5
Informe Técnico 25% 2 0,08 4, 6, 7

Bibliografía

MATERIAL DE LA ASIGNATURA (apuntes, transparencias, artículos) : En la Plataforma Virtual.

BIBLIOGRAFIA BÁSICA:

  • A. Silberschatz, H.F. Korth, S. Sudarshan, Fundamentos de Bases de Datos, 5a edición, McGraw-Hill, 2006.
  • R. Elmasri, S.B. Navathe, Fundamentos de Bases de Datos, 5ª edición, Addison Wesley, 2007.

BIBLIOGRAFIA COMPLEMENTARIA:

  • T.M. Connoly, C.E. Begg, Sistemas de Bases de Datos, 4a edición, Addison Wesley, 2005.
  • C.J. Date, Introducción a los sistemas de Bases de Datos, 7a edición, Prentice Hall, 2001.
  • A. Oppel, R. Sheldon, SQL, McGraw-Hill, 2009.
  • A. Armendáriz, T.A. Pérez, C. Presedo, M.Azanza, Casos prácticos para diseño de Bases de Datos, 2019.
  • S. Garrido, Diseño de Bases de Datos. Un enfoque práctico, 2019.
  • M. Celma, J.C. Casamayor, L. Mota, Bases de Datos Relacionales, Pearson-Prentice Hall, 2003.
  • D.M. Kroenke, Procesamiento de Bases de Datos, 8ª edición, Pearson-Prentice Hall, 2003.
  • A. de Miguel, M. Piattini, Diseño y uso de Bases de Datos Relacionales, Ra-Ma, 1997.

ENLACES WEB:

  • https://oai.oracle.com/ , Web d'Oracle Iniciativa Acadèmica (OAI) con mucha información de interés relativa a las facilidades que proporciona la Iniciativa Acadèmica al alumnado de la UAB (último acceso: julio 2021).

  • http://ilearning.oracle.com/ilearn/en/learner/jsp/login.jsp, Web con cursos online gratuitos y de pago de Oracle.  (último acceso: julio 2021).

  • http://www.acm.org/sigmod Special Interest Group in Management of Data. Grup de l'ACM (Association of Computer Machinery) que realiza actividades sobre Base de Datos, organiza congressos y edita revistas sobre el tema (último acceso: julio 2021).

BASES DE DATOS RELACIONALES MULTIUSUARIO:

  • http://www.oracle.com/ , Oracle® (último acceso: julio2021).

  • http://www.mysql.com/, MySQL® (último acceso: julio 2021).

  • http://www.postgressql.org, PostgreSQL® (último acceso: julio 2021).

  • http://www.sybase.com/home , Sybase® (último acceso: julio 2021).

  • http://www.microsoft.com/sql/default.asp, Microsoft SQL Server® (último acceso: julio 2021).

  • http://www-4.ibm.com/software/data/db2/, IBM DB2® (último acceso: julio 2021).

  • http://www-01.ibm.com/software/data/informix/, IBM Informix® (último acceso: julio 2021).

 

Software

En la parte de seminarios utilitzaremos los sigüentes programarios:
  • Oracle. Motor y servidor de Base de Datos. Hay un servidor en la Escuela de Ingeniería, del cual los alumnos recibirán un código de acceso e instrucciones de cómo acceder.
  • También se puede disponer de una versión reducida del servidor Oracle (Oracle 18c Express Edition) que os podéis bajar en versión Windows o Linux en el link: https://www.oracle.com/database/technologies/xe-downloads.html . Se os pedirá os registréis en la web de Oracle.
  • Software cliente sqldeveloper v.20.4.1 para poder abrir sesions a servidores Oracle. Podéis obtener el software en versiones Windows, MacOS i Linux en el link: https://www.oracle.com/tools/downloads/sqldev-downloads.html . Se os pedirá que os registréis en la web d’Oracle.

Todo el programario que se utilizará es de libre acceso o bien son servidores de la Escuela a los que se dará acceso al alumnado matriculado de la asignatura.