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 què disposa l'assignatura   Recursos d'aprenentatge i eines de suport   Consulta del model d'avaluació  
ATENCIÓ: Aquesta informació recull els apartats del pla docent de l'assignatura durant el darrer semestre amb docència. En iniciar el període de matrícula, podràs consultar el calendari i model d'avaluació per al següent semestre a Tràmits / Matrícula / Horaris de les proves d'avaluació final.
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 "Disseny i ús de bases de dades analítiques", "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 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 seria l'arquitecte o enginyer 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

Les principals competències que l'estudiant ha d'adquirir en el context de l'assignatura són les que s'indiquen 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 de 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. 

Aquestes competències, 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 blocs didàctics, el contingut dels quals es detalla a continuació: 

Bloc 1. Les bases de dades relacionals.  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.

Bloc 2. Conceptes bàsics de SQL. En aquest bloc didàctic 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 bloc didàctic seran: el mòdul didàctic "Conceptes bàsics de 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). 

Bloc 3. Procediments i disparadors  En aquest bloc didàctic 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 bloc didàctic 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 un document de complements de SQL per a la codificació de procediments emmagatzemats. La part pràctica requerirà l'ús de PostgreSQL. 

Bloc 4. Complements de SQL per a entorns analítics.  En aquest bloc didàctic 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 bloc didàctic seran: el mòdul didàctic "Complements de 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. 


Bloc 5. Disseny físic de BD relacionals.  Aquest bloc didàctic 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 bloc didàctic 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

Buenas prácticas: codificación de transacciones Audiovisual
Complements d'SQL PDF
Contextualització de procediments PDF
Bones pràctiques: codificació SQL PDF
UBD/BD Instal·lació PostgreSQL (Linux-Ubuntu) Audiovisual
Problemes de modelització amb UML PDF
Complements d'SQL per a procediments emmagatzemats PDF
Buenas prácticas: Codificación de consultas Audiovisual
Mòdul 5. El llenguatge SQL II PDF
Contextualización de procedimientos Audiovisual
Bones pràctiques: codificació de procediments i funcions PDF
Disseny físic de bases de dades PDF
Repositori de recursos sobre ciència de dades Web
Bones pràctiques: codificació de transaccions PDF
Contextualización de disparadores Audiovisual
El llenguatge SQL I PDF
Buenas prácticas: Codificación SQL Audiovisual
Buenas prácticas: Codificación de procedimientos y funciones Audiovisual
Mòdul 4. Exemples de codi Web
Bones pràctiques: codificació de consultes PDF
Disseny de bases de dades PDF
UBD/BD Instal·lació PostgreSQL (Windows) Audiovisual
Contextualització de disparadors PDF

Amunt

El material principal de suport de l'assignatura són els materials descrits en la secció de Continguts d'aquest pla docent. 

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:

http://www.postgresql.org/download/ 

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

Amunt

Aquesta assignatura només es pot superar a partir de l'avaluació contínua (AC). La nota final d'avaluació contínua esdevé la nota final de l'assignatura. La fórmula d'acreditació de l'assignatura és la següent: AC.

 

Amunt