Logo UAB
2022/2023

Bases de Dades Relacionals

Codi: 104350 Crèdits: 6
Titulació Tipus Curs Semestre
2503758 Enginyeria de Dades OB 2 1

Professor/a de contacte

Nom:
Enric Marti Godia
Correu electrònic:
enric.marti@uab.cat

Utilització d'idiomes a l'assignatura

Llengua vehicular majoritària:
català (cat)
Grup íntegre en anglès:
No
Grup íntegre en català:
Grup íntegre en espanyol:
No

Equip docent

Enric Marti Godia

Prerequisits

Es recomana que l’alumne tingui coneixements i capacitats de:

  • Programació en llenguatges de tercera generació (C, PHP, Java, etc.).
  • Estructures bàsiques de dades.

Objectius

En aquesta assignatura s'introdueixen els conceptes bàsics de Bases de Dades Relacionals (BDR) necessaris tant a nivell de dissenyador de BD com d'usuari.

CONEIXEMENTS: Al finalitzar el curs l'alumne ha de ser capaç de:

  • Conèixer i comprendre el salt tecnològic important que representen els sistemes de Bases de Dades i les BDR en concret, pel que fa a tractament d'informació en computador, així com en el disseny i manteniment d'aplicacions de tractament d'informació.
  • Conèixer l'arquitectura dels sistemes de BDR, les funcions de cada mòdul i el personal que treballa en aquests sistemes (usuaris, programadors i administradors de BD). L'arquitectura és estudiada des d'un punt de vista local i remot.
  • Estudiar les propietats del model relacional de BD, estès en la majoria de motors de BD.
  • Conèixer i saber aplicar el llenguatge SQL, estàndard en BDR.
  • Conèixer i saber aplicar el model Entitat/Relació (E/R), molt utilitzat en disseny de BDR.
  • Comprendre la metodologia de disseny de BD, incloses les tècniques de normalització d'una BDR.
  • Conèixer les principals estructures d’emmagatzematge de dades que s'utilitzen en BDR, com són la indexació i les funcions hashing.

HABILITATS: Es pretén que els alumnes adquireixin les següents habilitats:

  • Utilitzar les Regles d'Integritat del model relacional de BD.
  • Realitzar consultes simples i d'una certa complexitat a una BDR mitjançant SQL.
  • Dissenyar una BD en el Model E/R a partir d'unes especificacions del món real.
  • Convertir la BD en el Model E/R a un conjunt de relacions i atributs d'una BDR, aplicant les tècniques de normalització.
  • Treballar amb un exemple de motor de BDR com és ORACLE, d'ús moltestès enl'àmbit professional, a nivell d'usuari.

Competències

  • Concebre, dissenyar i implementar sistemes d'emmagatzematge de dades de forma eficient i segura.
  • Manipular grans volums de dades heterogènies.
  • Prevenir i solucionar problemes, adaptar-se a situacions imprevistes i prendre decisions.
  • Que els estudiants tinguin la capacitat de reunir i interpretar dades rellevants (normalment dins de la seva àrea d'estudi) per emetre judicis que incloguin una reflexió sobre temes destacats d'índole social, científica o ètica.
  • Treballar cooperativament, en entorns complexos o incerts i amb recursos limitats, en un context multidisciplinari, assumint i respectant el rol dels diferents membres de l'equip.

Resultats d'aprenentatge

  1. Dissenyar bases de dades relacionals o no-relacionals adequades a les dades que cal processar.
  2. Dissenyar i configurar infraestructures de processament de dades en funció de determinats requeriments.
  3. Fer consultes sobre bases de dades.
  4. Prevenir i solucionar problemes, adaptar-se a situacions imprevistes i prendre decisions.
  5. Que els estudiants tinguin la capacitat de reunir i interpretar dades rellevants (normalment dins de la seva àrea d'estudi) per emetre judicis que incloguin una reflexió sobre temes destacats d'índole social, científica o ètica.
  6. Redactar informes tècnics d'una base de dades.
  7. Treballar cooperativament, en entorns complexos o incerts i amb recursos limitats, en un context multidisciplinari, assumint i respectant el rol dels diferents membres de l'equip.

Continguts

BLOC 1. PARADIGMES DE BASES DE DADES

1. Introducció. Conceptes bàsics (2 hores)

  • Introducció i definicions
  • Components d'un sistema de Base de Dades
  • Evolució històrica
  • Avantatges i inconvenients d'un sistema de Base de Dades

2. Arquitectura de Bases de Dades Relacionals (2 hores)

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

BLOC 2. MODEL RELACIONAL

3. Model Relacional: Estructura de Dades i Regles d’Integritat (2 hores)

  • Estructura de Dades
  • Regles d'Integritat

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

  • Àlgebra Relacional
  • Càlcul Relacional

BLOC 3. DISSENY DE BASES DE DADES

5. Disseny Conceptual (8 hores)

  • Fases de disseny d'una BD
  • Captació i anàlisi de requeriments
  • Diagrama E/R
  • E/R Extens
  • Criteris de disseny d'un esquema E/R

6. Disseny Lògic (2 hores)

  • Pas a Taules (Model Relacional)

7. Normalització (2 hores)

  • Teoria de la Normalització
  • Formes Normals: 1NF, 2NF, 3NF
  • Forma Normal de Boyce-Codd (BCNF)

BLOC 4. NIVELL FÍSIC

8. Disseny Físic (2 hores)

  • Accés a la Base de Dades física. Fitxers
  • Estructures d'emmagatzematge
    • Indexació
    • Hashing (dispersió)
  • Tècniques de compressió

Metodologia

 

NOTA INFORMATIVA IMPORTANT DEGUT AL COVID:

  • Aquesta assignatura es farà en mode on-line degut a la pandèmia, per tant totes les activitats que figuren com a presencials (classes, tutories, exàmens) es faran virtuals mitjançant la plataforma Microsoft Teams https://teams.microsoft.com/ i/o la Plataforma Virtual.  Qualsevol canvi al llarg del curs per les indicacions del govern i/o la UAB es notificarà a la Plataforma Virtual amb l’antelació necessària.

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

El procés d'aprenentatge de l'alumne es fonamentarà en aquests dos tipus d'activitats presencials: Teoria i Seminaris i una activitat de treball autònom, l’Informe Tècnic. L'assistència a les classes de teoria, i de seminaris NO ÉS OBLIGATÒRIA, però SÍ MOLT RECOMANABLE.

TEORIA

Les classes de teoria s'imparteixen mitjançant classes magistrals amb transparències i pissarra. Tot el material del curs serà accessible a través de la Plataforma Virtual. Algunes de les sessions de teoria es dedicaran a resoldre exercicis plantejats a la mateixa aula amb l'objectiu d'aprofundir en els conceptes més rellevants i ensenyar a l'alumne a identificar ianalitzar els errors típics.

SEMINARIS

Es composa de dues parts. En una primera part s’introduirà el llenguatge SQL i per a practicar es proporciona un script en SQL sobre una BDR amb contingut i un enunciat amb unes 120 consultes que l’alumne ha de resoldre. Es proporcionen les taules resultants per a que l’alumne pugui practicar fora de l’aula. En les sessions de seminari es proposen consultes a resoldre, que els alumnes fan amb la tutorització del professor. Es proporciona una compta al servidor Oracle de l’Escola d’Enginyeria i el link per a descarregar el software client sqlDeveloper d’Oracle per a que els alumnes puguin enviar les seves consultes al servidor Oracle de l’Escola. En un mode més local, es proporciona el link per a descarregar una versió reduïda del motor Oracle (Oracle Express Edition), per a poder-lo instal·lar en un PC o portàtil en modus local.

En la segona part del curs esproporciona un enunciat amb problemes de disseny, alguns dels quals, a proposta del professor, els alumnes resolen a classe amb el seu suport.

Tota la documentació (enunciats de SQL i disseny, scripts de BD, resultats dels problemes) de seminaris està disponible al gestor documental Caronte.

INFORME TÈCNIC

Es proposa una activitat de treball autònom i cooperatiu: cas d’ús en el disseny d’una base de dades real.

En aquesta activitat es presentarà a l'alumne un cas real de disseny de BD per a que l'alumne realitzi totes les fases de disseny: captació i anàlisi de requeriments, disseny E/R, disseny lògic i joc de consultes SQL.  Aquesta activitat es farà en grups de 5 persones que s'hauran d'inscriure via Caronte. Es farà un seguiment de les diferents etapes de l'informe tècnic al llarg del curs. Es realitzaran dues entreguesavaluables a Caronte: una primera entrega del disseny E/R amb la qual poder obtenir el feed-back del professor i l’entrega final a finals de semestre amb totes les etapes realitzades.

Eltreball cooperatiu es treballa tant en l’activitat de disseny d’una BD en què l’alumne haurà de treballar en un grup de 5 persones com en la realització dels problemes proposats en les sessions de seminari.

Nota: es reservaran 15 minuts d'una classe, dins del calendari establert pel centre/titulació, per a la complementació per part de l'alumnat de les enquestes d'avaluació de l'actuació del professorat i d'avaluació de l'assignatura/mòdul.

Activitats formatives

Títol Hores ECTS Resultats d'aprenentatge
Tipus: Dirigides      
Classes magistrals 26 1,04 1, 2, 5
Explicació i resolució de problemes 26 1,04 3, 4, 6, 7
Tipus: Supervisades      
Revisió Informe Tècnic 2 0,08 4, 6, 7
Tipus: Autònomes      
Estudi individual 26 1,04 1, 2, 5
Informe Tècnic 8 0,32 4, 6, 7
Realització problemes SQL i disseny de BDR 52 2,08 1, 2, 3, 4, 7

Avaluació

L'avaluació de l’assignatura es farà de forma continuada, basada en tres indicadors: Teoria, SQL i l’Informe Tècnic.

TEORIA

Hi haurà dos exàmens individuals per escrit, amb un pes del 50% cadascun sobre la Nota de Teoria. La primera prova (Par1) es farà aproximadament a la meitat del semestre i avaluarà els conceptes teòrics explicats fins a la data i la capacitat de resolució de consultes de BDR en àlgebra relacional. La segona prova (Par2) es realitzarà al final del semestre i avaluarà els conceptes explicats fins el moment de teoria (disseny de BD, normalització, nivell físic) i la capacitat de resolució de supòsits de disseny E/R i pas a model relacional.

Examen de recuperació: En cas de que la nota de teoria no arribi a l'aprovat, els estudiants es podran presentar a un examen de recuperació sobre els continguts de l'examen parcial suspès.

En les classes de seminari es proposen dues entregues voluntàries valorades cadascuna amb 0’5 punts a sumar a la nota de l’examen parcial (Par1 o Par2). La primera entrega consta d’exercicis de consultes SQL on s’avalua les habilitats de l'alumne en la resolució de consultes sobre BDR en SQL (NPrb1). La segona consta d’un exercici de disseny de BD, on a partir d’uns requeriments cal dissenyar el diagrama E/R més adient als requeriments (NPrb2).

EXAMEN SQL

Examen individual per ordinador on es valoren les capacitats de l’alumne en la resolució de consultes SQL. Es proposen un seguit de consultes SQL a l’atzar sobre la BD utilitzada en els seminaris que l’alumne ha de resoldre en un temps determinat (Nota SQL).

Examende recuperació: En cas de que l’examen SQL no s’assoleixi el 5, l’alumne té una nova oportunitat amb el mateix format i normes.

INFORME TÈCNIC

L'Informe Tècnic és una activitat grupal avaluable que consta de 4 parts, corresponents a les 4 fases de disseny d'una BDR: Requisits, Diagrama E/R, Disseny Lògic en taules i Implementació d’un conjunt de consultes SQL. Es lliurarà un document escrit que contingui el treball realitzat en les 4 fases, degudament justificades. El document haurà de tenir el format adequat perquè els diagrames del Diagrama E/R i el Diagrama Relacional corresponent es puguin llegir correctament. La Nota de l’Informe Tècnic s'obtindrà a partir de dos lliuraments: El primer, amb la redacció dels requeriments de dades del cas presentat i el Diagrama E/R, resultant del disseny de la BD. El segon lliurament contindrà els mateixos punts del primer incloent les correccions del professor afegint el Diagrama Relacional (resultant del disseny lògic) i el codi de les consultes SQL i els seus resultats en taules. La nota de l’Informe Tècnic serà la mitja ponderada de la nota obtinguda dels dos lliuraments: Disseny E/R (60% de la nota) i el Disseny Lògic amb consultes SQL (40%).

Si algun diagrama de l’Informe Tècnic no es pogués llegir amb claredat per motius de resolució o qualitat, aquesta part de l'informe quedarà suspesa, així com les parts que d'ella en depenguin al no poder-se avaluar.

INDICADORS DE QUALIFICACIÓ

La nota final de l'assignatura es calcula de la següent manera (entre parèntesi quadrat les notes mínimes per fer mitja):

  • Nota Parcial 1 = (Par1 + NPrb1)    [Par1 >=4,5]
  • Nota Parcial 2 = (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ècnic = 0'6 * Nota Disseny E/R + 0'4 * Nota Disseny Lògic                 [Nota Disseny E/R, Nota Disseny Lògic >= 5]
  • NOTA FINAL ASSIGNATURA = 0'5* Nota Teoria + 0'25 * Nota SQL + 0'25 * Nota Informe Tècnic

CRITERIS D'AVALUACIÓ

  • Per a que comptabilitzi les notes de les entregues voluntàries dels seminaris (NPrb1 i NPrb2) cal obtenir un mínim de 4,5 en la nota de l'examen parcial corresponent (Par1 o Par2).
  • Per tal de poder calcular la NOTA FINAL ASSIGNATURA, caldrà superar totes les activitats avaluables (exàmens de Teoria, examen SQL i l’Informe Tècnic) amb un 5.
  • En totes les activitats de recuperació (examens parcials o de pràctiques), la nota màxima serà 8.
  • NO AVALUABLE: Un estudiant es considera No Avaluable (NA) únicament si no ha fer cap activitat d'avaluació. Recordem que la nota No Avaluable també corre convocatòria.
  • SUSPÈS: En el cas de no arribar al mínim exigit en alguna de les activitats d'avaluació, si el càlcul de la nota final és igual o superior a 5, es posarà un 4 de nota a l'expedient.
  • MATRÍCULA D’HONOR: Podrà obtenir una MH l’alumna o alumne l’alumna o alumne que tinguin una nota igual o superior als 9 punts, a criteri del professor. Com que el nombre de MH no pot superar el 5% de l’alumnat matriculat, es concediran a aquells o aquellesque tinguin les notes finals més altes, a criteri del professor.
  • REPETIDORS: No es convalida cap part aprovadaper separat (Teoria, Examen SQL, Informe Tècnic) d’un curs acadèmic a un altre.
  • IMPORTANT PER A TOTS ELS ALUMNES: És important inscriure's en la Plataforma Virtual a l'inici del curs, doncs s'hi publiquen els materials de l'assignatura, es fan les entregues de l’informe Tècnic i es publiquen les notes finals de l'assignatura. Si és la primera vegada que entreu a Caronte cal que proporcioneu el vostre NIU, contrasenya, nom i cognoms, email i una foto carnet en format JPG. Caronte es un gestor diferent al Campus Virtual de la UAB, amb el que no fa falta que les contrasenyes siguin la mateixa.

CALENDARI D'AVALUACIÓ:

  • Exàmens Parcials: Dates al final de la guia docent que es publicarà en la Plataforma Virtual i que es donarà a l'alumnat el primer dia de classe.
  • Exàmens de Recuperació: Segons calendari acadèmic de l'Escola d'Enginyeria.
  • Entregues voluntàries en les sessions de seminaris: No s'avisarà amb antelació, doncs al ser una activitat voluntària es pretén fomentar l'assistència als seminaris durant tot el semestre.
  • Entrega Informes Tècnics: Dates al final de la guia docent proporcionada als alumnes el primer dia de classe, figurant al curs de Caronte a la setmana que correspongui.

Les dates d'avaluació continuada es publicaran a Caronte i poden estar subjectes a canvis de programació per motius d'adaptació a possibles incidències. Sempre s'informarà a la Plataforma Virtualsobre aquests canvis ja que s'entén que és el mitjà habitual d'intercanvi d'informació entre professors i estudiants fora de l'aula.

Sense perjudici d'altres mesures disciplinàries que s'estimin oportunes, i d'acord amb la normativa acadèmica vigent, les irregularitats comeses per un estudiant que puguin conduir a una variació de la qualificació es qualificaran amb un zero (0). Les  activitats d'avaluació qualificades d'aquesta forma i per aquest procediment no seran recuperables. Si és necessari superar qualsevol d'aquestes activitats d'avaluació per a aprovar l'assignatura, aquèsta quedarà suspesa directament, sense oportunitat de recuperar-la en el mateix curs. Aquestes irregularitats inclouen, entre d'altres:

  • La còpia total o parcial d'una pràctica, informe, o qualsevol altra activitat d'avaluació
  • Deixar copiar.
  • Presentar un treball de grup no fet íntegrament pels membres del grup.
  • Presentar com a propis materials elaborats per un tercer, encara que  siguin traduccions o adaptacions, i en general treballs amb elements no originals i exclusius de l'estudiant.
  • Tenir dispositius de comunicació (com telèfons mòbils, smart watches, etc.) accessibles durant les proves d'avaluació teòric-pràctiques individuals (exàmens).

Amb les excepcions de que s'atorgarà la qualificació de "no avaluable" als estudiants que no participin en cap de les activitats d'avaluació, i de que la nota numèrica de l'expedient serà el valor menor entre 3,0 i la mitjana ponderada de les notes en cas que l'estudiant hagi comès irregularitats en un acte d'avaluació (i per tant no serà possible l'aprovat per compensació).

EN RESUM: copiar, deixar copiar o plagiar en qualsevol de les activitats d'avaluació equival a un SUSPENS amb nota inferior a 3,5.

Activitats d'avaluació

Títol Pes Hores ECTS Resultats d'aprenentatge
Entrega voluntària d'exercicis +1,0 2 0,08 1, 3, 7
Examen SQL 25% 2 0,08 3
Examens de Teoria 50% 4 0,16 1, 2, 5
Informe Tècnic 25% 2 0,08 4, 6, 7

Bibliografia

MATERIAL DE L’ASSIGNATURA (apunts, transparències, articles) : 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 COMPLEMENTÀRIA:

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

ENLLAÇOS WEB:

  • https://oai.oracle.com/ , Web d'Oracle Iniciativa Acadèmica (OAI) amb molta informació d'interès relativa a les facilitats que proporciona la Iniciativa Acadèmica als alumnes de la UAB (darrer accés: juliol 2021).

  • http://ilearning.oracle.com/ilearn/en/learner/jsp/login.jsp, Web amb cursos online gratuits i de pagament d'Oracle.  (darrer accés: juliol 2021).

  • http://www.acm.org/sigmod Special Interest Group in Management of Data. Grup de l'ACM (Association of Computer Machinery) que realitza activitats sobre Base de Dades, organitza congressos i edita revistes sobre el tema (darrer accés: juliol 2021).

BASES DE DADES MULTIUSUARI:

  • http://www.oracle.com/ , Oracle® (darrer accés: juliol 2021).

  • http://www.mysql.com/, MySQL® (darrer accés: juliol 2021).

  • http://www.postgressql.org, PostgreSQL® (darrer accés: juliol 2021).

  • http://www.sybase.com/home , Sybase® (darrer accés: juliol 2021).

  • http://www.microsoft.com/sql/default.asp, Microsoft SQL Server® (darrer accés: juliol 2021).

  • http://www-4.ibm.com/software/data/db2/, IBM DB2® (darrer accés: juliol 2021).

  • http://www-01.ibm.com/software/data/informix/, IBM Informix® (darrer accés: juliol 2021).

Programari

En la part de seminaris utilitzarem els següents programaris:
  • Oracle. Motor i servidor de Base de Dades. Hi ha un servidor a l’Escola d’Enginyeria, del qual els alumnes rebran un codi d’accés i instruccions de com accedir-hi.
  • També es pot disposar d’una versió reduïda del servidor Oracle (Oracle 18c Express Edition) que us podeu baixar en versió Windows o Linux en el link: https://www.oracle.com/database/technologies/xe-downloads.html . Se us demanarà que us registreu a la web d’Oracle.
  • Software client sqldeveloper v.20.4.1 per a poder obrir sessions a servidors Oracle. Podeu obtenir el software en versions Windows, MacOS i Linux en el link: https://www.oracle.com/tools/downloads/sqldev-downloads.html . Se us demanarà que us registreu a la web d’Oracle.

Tot el programari que s'utilitzarà és de lliure accés o bé són servidors de l’Escola als que es donarà accés a l'alumnat matriculat a l’assignatura.