L'estudiant tindrà una visió general sobre què és una base de dades, els seus objectius i principals components. Profunditzarà en els gestors basats en el model relacional de bases de dades i practicarà la creació, gestió i ús dels seus components mitjançant SQL. S'inclou una introducció al disseny de bases de dades relacionals, així com l'estudi dels diferents components d'un gestor.
Professorat
Responsable
Petar Jovanovic (
)
Altres
Anna Queralt Calafat (
)
Gerard Pons Recasens (
)
Sergi Nadal Francesch (
)
Hores setmanals
Teoria
2
Problemes
0
Laboratori
2
Aprenentatge dirigit
0
Aprenentatge autònom
6
Competències
Competències Transversals
Transversals
CT4 [Avaluable] - Treball en equip. Ser capaç de treballar com a membre d'un equip interdisciplinari, ja sigui com un membre més o realitzant tasques de direcció, amb la finalitat de contribuir a desenvolupar projectes amb pragmatisme i sentit de la responsabilitat, assumint compromisos tenint en compte els recursos disponibles.
CT6 [Avaluable] - Aprenentatge autònom. Detectar deficiències en el propi coneixement i superar-les mitjançant la reflexió crítica i l'elecció de la millor actuació per ampliar aquest coneixement.
Bàsiques
CB2 - Que els estudiants sàpiguen aplicar els seus coneixements al seu treball o vocació d'una manera professional i posseeixin les competències que solen demostrar-se mitjançant l'elaboració i defensa d'arguments i la resolució de problemes dins la seva àrea d'estudi.
CB3 - Que els estudiants tinguin la capacitat de reunir i interpretar dades rellevants (normalment dins la seva àrea d'estudi) per emetre judicis que incloguin una reflexió sobre temes rellevants d'índole social, científica o ètica.
Competències Tècniques
Específiques
CE04 - Dissenyar i utilitzar de forma eficient els tipus i estructures de dades més adequats a la resolució d'un problema.
CE08 - Detectar les característiques, funcionalitats i components dels gestors de dades, que permeten el seu adequat ús en fluixos d'informació, i el disseny, anàlisi i implementació d'aplicacions basades en elles.
Competències Tècniques Generals
Genèriques
CG1 - Concebir, redactar, organitzar, planificar i desenvolupar projectes en l'àmbit de la intel·ligència artificial.
CG2 - Utilitzar els coneixements fonamentals i metodologies de treball sòlides adquirits durant els estudis per adaptar-se als nous escenaris tecnològics de el futur.
Objectius
Conèixer els objectius d'un sistema de gestió de bases de dades i la seva arquitectura.
Competències relacionades:
CT6,
CE04,
CE08,
Conèixer el model relacional de bases de dades, els seus llenguatges (SQL i àlgebra relacional) i els components habituals d'una base de dades relacional.
Competències relacionades:
CT4,
CT6,
CB2,
CB3,
CE04,
CE08,
Ser capaç de definir, crear i manipular els components habituals d'una base de dades relacional.
Competències relacionades:
CT4,
CT6,
CB2,
CB3,
CE04,
CE08,
Ser capaç de construir programes per gestionar bases de dades relacionals.
Competències relacionades:
CT4,
CT6,
CB2,
CB3,
CE04,
CE08,
Conéixer els diferents formats de dades semistructurades, i saber expressar consultes SQL sobre ells.
Competències relacionades:
CG1,
CG2,
CT4,
CT6,
CB2,
CB3,
CE04,
CE08,
Saber escollir entre diverses sentències SQL, components d'una base de dades, o programes que gestionin una base de dades, que implementin una mateixa funcionalitat, quin/a s'adequa més a uns criteris de qualitat definits.
Competències relacionades:
CT4,
CT6,
CB2,
CB3,
CE04,
CE08,
Saber escollir entre quins tipus de components o programes de gestió de bases de dades estudiats a l'assignatura són més adequats, segons els criteris de qualitat definits, per a la implementació d'un cert comportament d'una aplicació.
Competències relacionades:
CT6,
CB2,
CB3,
CE04,
CE08,
Tenir una visió general de com s'integra el disseny d'una base de dades dins el procés de desenvolupament d'una aplicació.
Competències relacionades:
CT6,
CE04,
CE08,
Ser capaç de transformar models conceptuals simples expressats en UML al model relacional.
Competències relacionades:
CT6,
CE04,
CE08,
Conèixer el concepte de transacció i les seves implicacions.
Competències relacionades:
CT6,
CE04,
CE08,
Conèixer i saber identificar els tipus d'interferències que es poden produir entre transaccions i la seva relació amb els nivells d'aïllament que defineix l'SQL Standard.
Competències relacionades:
CT6,
CE04,
CE08,
Conèixer la tècnica de control de concurrència de reserves.
Competències relacionades:
CT6,
CE04,
CE08,
Conèixer les possibles estructures físiques per l'emmagatzematge de les dades, i les seves implicacions en quan a eficiència.
Competències relacionades:
CG1,
CG2,
CT6,
CE04,
CE08,
Conèixer els mètodes d'accés a les dades, i les seves implicacions en quan a eficiència.
Competències relacionades:
CG1,
CG2,
CT6,
CE04,
CE08,
Tenir una visió general sobre què és una base de dades, què és un model de base de dades, quins són els tipus d'usuaris de les bases de dades, i quines són les categories de llenguatges de bases de dades.
Competències relacionades:
CT6,
CE04,
Continguts
Introducció
Concepte de base de dades. Disseny i models de bases de dades. Tipus d'usuaris. Categories de llenguatges. Concepte de sistema de gestió de base de dades (SGBD). Objectius desitjables per a les bases de dades que els SGBD han de proporcionar. Arquitectura dels SGBD.
El model relacional
Objectius i origen. Estructura de dades amb la qual es construeixen les bases de dades relacionals. Operacions que proveeix el model relacional per manipular i consultar les dades. Regles d'integritat que han de complir les dades d'una base de dades relacional.
Llenguatges: Àlgebra relacional i SQL
Introducció. Àlgebra relacional: operacions de l'àlgebra relacional; consultes. SQL: creació de taules; inserció, esborrat i modificació de files d'una taula; consultes sobre una base de dades. Consideracions sobre la implementació de consultes.
Components lògics d'una base de dades
Concepte de component lògic d'una base de dades: de dades i de control. Presentació de components lògics de dades: esquemes, dominis i taules, assercions i vistes. Presentació de components lògics de control: procediments emmagatzemats, disparadors i privilegis.
Dades semiestructurades i extensions d'SQL per consultar-les
Introducció als diferents formats de dades semiestructurades. Extensions SQL per consultar dades semiestructurades.
Programació amb SQL
Programació en Python i DataFrames. Consideracions sobre el disseny i implementació de programes que accedeixen a bases de dades.
Transaccions i concurrència
Concepte de transacció. Propietats ACID de les transaccions. Interferències entre transaccions. Serialitzabilitat. Recuperabilitat. Tècniques de control de concurrència. Nivells d'aïllament. Reserves i nivells d'aïllament.
Introducció al disseny de bases de dades relacionals
Etapes de disseny d'una base de dades. Introducció a la comprensió de models conceptuals UML simples. Traducció de models conceptuals UML simples a model relacional de base de dades.
Estructures físiques d'emmagatzemament, mètodes d'accés i optimització
Introducció. Mètodes d'accés per poder fer consultes i actualitzacions de dades d'una base de dades. Costos dels mètodes d'accés. Introducció a l'optimització de consultas
Classes de teoria/problemes
Aprenentatge autònom: Per preparar les classes l'estudiant pot haver de llegir i comprendre uns materials i/o apunts indicats pel professor. Posteriorment a la classe, l'estudiant cal que repassi i resolgui exercicis sobre el tema d'estudi.
Classes de teoria. En les classes de teoria els professors presenten una part dels continguts de l'assignatura. Normalment els professors usen transparències que els estudiants seria convenient que obtinguin abans de les classes, per fer-ne un millor seguiment.
Classes de problemes. En les classes de problemes, els estudiants resolen exercicis sobre continguts presentats durant les classes de teoria. Aquests exercicis es fan en equips de dos estudiants segons alguna tècnica d'aprenentatge cooperatiu.
Avaluació. En quatre de les classes de problemes els estudiants resoldran un exercici que es recollirà i serà avaluat pel professor.
Classes de laboratori
Aprenentatge autònom: Els continguts que es treballen en les classes de laboratori seran estudiats de manera autònoma pels estudiants. Cada setmana prèviament a la classe de laboratori els estudiants tindran una feina a fer a casa que acabarà amb la resolució d'un qüestionari moodle/LearnSQL.
Classes de laboratori: El treball a classe serà en equips de 2 estudiants. Els estudiants tenen la possibilitat de compartir els dubtes amb el seu company d'equip sobre la feina que han fet a casa, i si és el cas, de preguntar els dubtes no resolts al professor. A continuació els estudiants fan les activitats que ha indicat el professor i finalment resolen el qüestionari de classe.
Avaluació: En cada classe, es contesta una pregunta de manera individual per fer un seguiment del treball d'aprenentatge autònom i del que s'ha fet durant la classe. L'avaluació es basa també en els exercicis que es resolen durant la classe.
Mètode d'avaluació
La qualificació de les competències tècniques es basa en:
- NPR: Nota de problemes. Es calcula com la mitjana de les notes dels quatre exercicis entregats.
- NLB: Participació activa en les sessions de laboratori. Es tindrà en compte les classes a les que s'ha participat entregant satisfactòriament els exercicis proposats a classe. La nota es calcularà de manera proporcional a les classes a les que s'ha participat activament.
- NEP: Nota de l'examen parcial.
- NEF: Nota de l'examen final.
Qualificació final = Màxim(NLB*0.2+NEP*0.30+NEF*0.35+NPR*0.15,NLB*0,2+NEP*0.35+NEF*0,45)
- Pel estudiants que puguin concórrer a la reavalaució, la nota de examen de reavaluació substituirà NEF i NEP. En tot cas, la nota màxima de reavaluació només pot arribar a ser 7.