Bases de dades per a Data Warehousing Codi:  22.411    :  6
Consulta de les dades generals   Descripció   L'assignatura en el conjunt del pla d'estudis   Camps professionals en què es projecta   Informació prèvia a la matrícula   Objectius i competències   Continguts   Consulta dels recursos d'aprenentatge de la UOC per a l'assignatura   Informació addicional sobre els recursos d'aprenentatge i eines de suport   Informacions sobre l'avaluació a la UOC   Consulta del model d'avaluació  
Aquest és el pla docent de l'assignatura per al segon semestre del curs 2023-2024. Podeu consultar si l'assignatura s'ofereix aquest semestre a l'espai del campus Més UOC / La universitat / Plans d'estudis). Un cop comenci la docència, heu de consultar-lo a l'aula. El pla docent pot estar subjecte a canvis.
Les bases de dades són el mecanisme més habitual que les organitzacions utilitzen per emmagatzemar i processar de manera no volàtil les dades necessàries per a la seva activitat diària. Al seu torn, les bases de dades són gestionades i manipulades mitjançant un programari altament especialitzat i complex denominat sistema gestor de bases de dades. Des d'un punt de vista d'ús, les bases de dades ens permeten gestionar el dia a dia de les organitzacions i per això també es coneixen sota la denominació de bases de dades operacionals. D'altra banda, tenim els magatzems de dades (data warehouse) que integren dades de diferents fonts, entre les quals es troben les bases de dades operacionals, i que tenen com a objectiu principal donar suport a la presa de decisions. 

Per poder guardar les dades d'interès d'una organització, cal disposar d'algun model de dades que permeti la seva representació en un ordinador en forma de bases de dades. Aquest model de dades ha de permetre, d'una banda, definir l'estructura de la base de dades i les regles d'integritat que garanteixen que la base de dades sigui consistent. D'altra banda, el model de dades també ha de proporcionar operacions que permetin la consulta i actualització de la base de dades. A pesar que existeixen diferents models de dades, nosaltres ens centrarem en el model de dades relacional, i per tant, en les bases de dades relacionals, atès que són les més utilitzades en les organitzacions. 

Aquesta assignatura té per objectiu adquirir conceptes, procediments i bones pràctiques per a la creació i manipulació de bases de dades que donen suport a la construcció de magatzems de dades. Per a això s'aprofundeix en l'aprenentatge del llenguatge SQL, estenent-lo mitjançant l'estudi del llenguatge procedimental PL/pgSQL, i l'estudi d'altres complements que ens ofereix SQL amb finalitats analítiques (com serien les funcions analítiques). Així mateix tractarem aspectes de disseny conceptual, lògic, i físic de bases de dades.

Amunt

Aquesta assignatura és una assignatura obligatòria del Grau en Ciència de Dades Aplicada que forma part del conjunt d'assignatures de la matèria de bases de dades, en les quals s'engloben també les assignatures obligatòries "Disseny i ús de bases de dades analítiques" i "Bases de dades no relacionals", així com l'assignatura optativa "Optimització de bases de dades en entorns analítics".

Addicionalment, l'assignatura es pot cursar com a complement de formació del Màster en Ciència de Dades. 

Amunt

Els coneixements adquirits en aquesta assignatura seran d'utilitat en la majoria de camps professionals, no en va SQL és un dels llenguatges que qualsevol científic (o científica) de dades ha de conèixer. 

Malgrat això, els continguts de l'assignatura s'orienten a la formació dels perfils més tècnics com serien arquitectura o enginyeria de dades, és a dir, als professionals responsables de la construcció de l'arquitectura d'un sistema d'intel·ligència de negoci o anàlisi de dades que, al seu torn, inclou entre d'altres, el disseny de l'estructura de dades i dels processos ETL (Extract, Transform and Load).

Amunt

Alguns dels continguts d'aquesta assignatura han d'estudiar-se a partir de materials i recursos escrits en anglès disponibles a la biblioteca de la UOC. També és possible que l'estudiant hagi de localitzar els seus propis recursos, bé a la biblioteca, bé a través de la xarxa.

Amunt

Els principals objectius a assolir per l'estudiantant en el context de l'assignatura són els que es resumeixen a continuació: 

  • Ser capaç de consultar i actualitzar de manera eficient una base de dades mitjançant SQL estàndard. 
  • Ser capaç de codificar procediments emmagatzemats utilitzant llenguatges procedimentals. 
  • Ser capaç d'implementar diferents tècniques de disparadors en una base de dades. 
  • Ser capaç d'entendre i aplicar conceptes avançats d'SQL com a funcions analítiques, transaccions o Common Table Expression
  • Ser capaç de realitzar el disseny conceptual de bases de dades a partir d'un conjunt de requisits. 
  • Ser capaç de realitzar el disseny lògic de bases de dades relacionals.
  • Ser capaç de realitzar el disseny físic de bases de dades relacionals. 
  • Ser capaç d'aplicar els coneixements anteriors dins del context del data warehouse/OLAP. 

Aquests objectius, en el cas del Grau en Ciència de dades aplicada, es relacionen amb les Competències Específiques (CE) que es destaquen a continuació: 

  • CE3- Definir, avaluar i seleccionar solucions tecnològiques, així com recursos (espacials, temporals) necessaris per al desenvolupament i execució de projectes, tenint en compte les alternatives disponibles, les condicions de mercat i les normatives vigents.
  • CE4- Dissenyar un marc experimental tenint en compte els mètodes més adequats per a la captura, el processament, l'emmagatzematge, l'anàlisi i la visualització de dades.
  • CE9- Aplicar técnicas específiques de captura, tractament i anàlisi de dades estructurades, semi-estructurades i no estructurades.

Amunt

L'assignatura consta de 5 reptes, el contingut dels quals es detalla a continuació: 

Repte 1. Les bases de dades relacionals: una història d'èxit sense precedents.

El model relacional és el que ens permet representar una base de dades en un ordinador. Hem de conèixer quines estructures ens proporciona, i identificar els seus avantatges. El model relacional també ens proporciona un llenguatge per poder consultar la base de dades. Es tracta de l'àlgebra relacional que s'inspira en l'àlgebra de conjunts. Malgrat que ens pugui semblar un llenguatge teòric, donat que realment usarem el llenguatge SQL per manipular les nostres bases de dades, internament qualsevol sistema gestor de bases de dades relacional (com PostgreSQL o Oracle) treballa amb àlgebra relacional. Per tant, necessitem saber-lo utilitzar si volem entendre i programar eficientment en SQL. Finalment, el model relacional també ens dóna mecanismes per definir regles d'integritat. Aprendrem a especificar regles d'integritat que ens permetran definir les condicions que la nostra base de dades ha de complir si volem que les dades en ella contingudes siguin consistents. A més, complementarem els coneixements sobre el model relacional amb el disseny de bases de dades per al cas específic del model relacional. En particular, veurem en què consisteix i quines etapes se segueixen per dissenyar una base de dades, detallant el procés de disseny conceptual i lògic d'una base de dades relacional.

Repte 2. De la creació a la manipulació d'una base de dades relacional

En aquest repte es presenten els conceptes més bàsics associats a l'SQL estàndard. En primer lloc es presenten les principals sentències de definició de dades (com seria, per exemple, taules i vistes). A continuació es presenten les sentències bàsiques de manipulació de dades (SELECT, INSERT, DELETE i UPDATE de taules i vistes). Finalment, s'introdueixen les sentències de concessió i revocació de privilegis sobre les dades, primitives de gestió de transaccions, i altres modalitats de treball amb el llenguatge SQL. Els materials principals que s'utilitzaran en aquest repte seran: el mòdul didàctic "Conceptes bàsics d'SQL", i una sèrie de vídeos molt importants: bones pràctiques en SQL, focalitzant-se en les bones pràctiques de codificació en SQL i generació de consultes. Aquests materials es complementen amb les transcripcions de cadascun dels vídeos de les sèries i un document amb la convenció de noms a seguir durant l'assignatura. La part pràctica requerirà l'ús de PostgreSQL (el sistema gestor de bases de dades que usarem en l'assignatura). 

Repte 3. Procediments emmagatzemats i disparadors: per a què són necessaris?

En aquest repte s'aprofundeix en SQL estàndard. En primer lloc, es presenta l'estructura bàsica de components d'un entorn SQL, revisant els conceptes de servidors, catàlegs i esquemes, per continuar una introducció als conceptes de connexió, sessió i transacció. A continuació, es completarà l'estudi dels components lògics vists mitjançant la introducció di procediments emmagatzemats i disparadors. Finalment, s'introdueixen el llenguatge procedimental PL/pgSQL i les sentències que ofereix PostgreSQL per definir aquests components. Els materials principals que s'utilitzaran en aquest repte seran: el mòdul didàctic "El llenguatge SQL: Procediments i disparadors", la sèrie de vídeos de bones pràctiques en SQL, focalitzant-se aquesta en les bones pràctiques de codificació de procediments emmagatzemats, i dos vídeos que contextualitzaran els procediments i disparadors en el marc de les bases de dades operacionals i de data warehouse. Aquests materials es complementen amb les transcripcions de cadascun dels vídeos de les sèries i amb documents de complements d'SQL per a la codificació de procediments emmagatzemats. La part pràctica requerirà l'ús de PostgreSQL. 

Repte 4. Ampliant la caixa d'eines: common table expressions i funcions analítiques

En aquest repte es presenten conceptes avançats d'SQL d'aplicació en entorns Data Warehouse. En primer lloc, es presenta el concepte de clau subrogada i les diferents possibilitats d'implementar aquesta tècnica mitjançant SQL. A continuació, s'introduiran dos conceptes avançats per a la creació de consultes SQL, les Common Table Expression i les funcions analítiques, com aplicar aquestes funcionalitats i els beneficis associats. Finalment, es veuran tècniques de tractament de valors nuls en bases de dades operacionals i Data Warehouse, i es conclourà amb una introducció a les transaccions, les seves propietats, la problemàtica associada a aquestes, mecanismes d'implementació de transaccions en PostgreSQL i la importància d'aquestes en entorns de bases de dades operacionals i Data Warehouse. Els materials principals que s'utilitzaran en aquest repte seran: el mòdul didàctic "Complements d'SQL" i la sèrie de vídeos de bones pràctiques en SQL, focalitzant-se en les bones pràctiques de codificació de transaccions. Aquests materials es complementen amb les transcripcions de cadascun dels vídeos de la sèrie. De nou, per a la part més pràctica s'usarà PostgreSQL.

Repte 5. El dimoni és en els detalls: optimització de la base de dades en funció del seu ús

Aquest repte analitzarà els principals mètodes i construccions que s'utilitzen en el disseny físic de bases de dades. Conceptualment, podem definir el disseny físic d'una base de dades com el procés que, a partir del disseny lògic de la base de dades i d'informació sobre el seu ús esperat, crearà una configuració física de la base de dades adaptada a l'entorn on s'allotjarà i que permeti l'emmagatzematge i l'explotació de les dades amb un rendiment adequat. Els materials principals que s'utilitzaran en aquest repte serà el mòdul didàctic "Disseny físic de bases de dades". També és possible que s'utilitzin recursos de biblioteca (en anglès) per complementar l'estudi d'estructures d'índexs. Per a la part pràctica s'utilitzarà PostgreSQL. 

Amunt

Mòdul 5. El llenguatge SQL II PDF
Exemples de codi SQL Web
Contextualización de procedimientos Audiovisual
Buenas prácticas: Codificación de procedimientos y funciones Audiovisual
Buenas prácticas: Codificación de consultas Audiovisual
Buenas prácticas: Codificación SQL Audiovisual
Buenas prácticas: codificación de transacciones Audiovisual
Contextualización de disparadores Audiovisual
Bones pràctiques: codificació SQL PDF
Bones pràctiques: codificació de consultes PDF
Bones pràctiques: codificació de procediments i funcions PDF
Contextualització de procediments PDF
Contextualització de disparadors PDF
Complements d'SQL per a procediments emmagatzemats PDF
Disseny físic de bases de dades PDF
Complements d'SQL PDF
Bones pràctiques: codificació de transaccions PDF
El model relacional i l'àlgebra relacional PDF
El llenguatge SQL I PDF
Espai de recursos de ciència de dades Web

Amunt

El material principal de suport de l'assignatura són els materials descrits en la secció de Continguts d'aquest pla docent. També es proporcionen altres materials com casos d'estudi resolts, col·leccions d'exercicis, i exemples de proves d'avaluació continuada de semestres anteriors, així com eines específiques pel l'elaboració del disseny conceptual de bases de dades.

Per aconseguir les competències relatives a l'aprenentatge del llenguatge SQL, tal com ja hem comentat, usarem el sistema gestor de bases de dades PostgreSQL. Per poder instal·lar-ho, heu de realitzar la descàrrega des de:

https://www.postgresql.org/download/ 

Us proporcionarem indicacions més específiques sobre quina versió utilitzar i com s'ha d'instal·lar.

Amunt

El procés d'avaluació es fonamenta en el treball personal de l'estudiant i pressuposa l'autenticitat de l'autoria i l'originalitat dels exercicis realitzats.

La manca d'autenticitat en l'autoria o d'originalitat de les proves d'avaluació; la còpia o el plagi; l'intent fraudulent d'obtenir un resultat acadèmic millor; la col·laboració, l'encobriment o l'afavoriment de la còpia, o la utilització de material, programari o dispositius no autoritzats durant l'avaluació, entre altres, són conductes irregulars en l'avaluació que poden tenir conseqüències acadèmiques i disciplinàries greus.

Aquestes conductes irregulars poden comportar el suspens (D/0) en les activitats avaluables que es defineixin en el pla docent -incloses les proves finals- o en la qualificació final de l'assignatura, sigui perquè s'han utilitzat materials, programari o dispositius no autoritzats durant les proves, com ara xarxes socials o cercadors d'informació a internet, perquè s'han copiat fragments de text d'una font externa (internet, apunts, llibres, articles, treballs o proves d'altres estudiants, etc.) sense la citació corresponent, o perquè s'ha dut a terme qualsevol altra conducta irregular.

Així mateix, i d'acord amb la normativa acadèmica, les conductes irregulars en l'avaluació també poden donar lloc a la incoació d'un procediment disciplinari i a l'aplicació, si escau, de la sanció que correspongui, de conformitat amb l'establert a la normativa de convivència de la UOC.

En el marc del procés d'avaluació, la UOC es reserva la potestat de:

  • Sol·licitar a l'estudiant que acrediti la seva identitat segons l'establert a la normativa acadèmica.
  • Sol·licitar a l'estudiant que acrediti l'autoria del seu treball al llarg de tot el procés d'avaluació, tant avaluació contínua com avaluació final, per mitjà d'una prova oral o els mitjans síncrons o asíncrons que estableixi la Universitat. Aquests mitjans tindran per objecte verificar els coneixements i les competències que garanteixin l'autoria; en cap cas no implicaran una segona avaluació. Si no és possible garantir l'autoria de l'estudiant, la prova serà qualificada amb D, en el cas de l'avaluació contínua, o amb un Suspens, en el cas de l'avaluació final.

    A aquests efectes, la UOC pot exigir a l'estudiant l'ús d'un micròfon, una càmera o altres eines durant l'avaluació; és responsabilitat de l'estudiant assegurar que aquests dispositius funcionen correctament.

Amunt

L'assignatura només es pot aprovar amb el seguiment i la superació de l'avaluació contínua (AC). La qualificació final de l'assignatura és la nota obtinguda a l'AC.

 

Amunt