Sistemes gestors de bases de dades

10
Introducció a les bases de dades - Tema 0 – Introducció Autor: Miquel Boada Artigas Sistemes gestors de bases de dades (SGBD) Autor: Miquel Boada Artigas Data última modificació: 30/09/2016 Pàgina 1 de 10

Transcript of Sistemes gestors de bases de dades

Page 1: Sistemes gestors de bases de dades

Introducció a les bases de dades - Tema 0 – Introducció Autor: Miquel Boada Artigas

Sistemes gestors de bases de dades(SGBD)

Autor: Miquel Boada Artigas

Data última modificació: 30/09/2016 Pàgina 1 de 10

Page 2: Sistemes gestors de bases de dades

Introducció a les bases de dades - Tema 0 – Introducció Autor: Miquel Boada Artigas

Sistemes gestors de bases de dadesIntroducció.........................................................................................................................3

Característiques dels sistemes gestors de bases de dades...........................................3Execució de transaccions...........................................................................................4Abstracció de dades...................................................................................................4

Nivell extern (View)................................................................................................4Nivell conceptual (Schema)....................................................................................4Nivell intern (Physical)............................................................................................4Nivell físic...............................................................................................................5

Eines sistemes gestors de bases de dades....................................................................5Tipus de bases de dades................................................................................................6Tipus d'usuaris...............................................................................................................7

Usuari administrador..................................................................................................7Usuari analista/programador......................................................................................7Usuari final.................................................................................................................7

Llenguatges SGBD.........................................................................................................8Data description language (DDL)...............................................................................8Data control language (DCL)......................................................................................8Data manipulation language (DML)...........................................................................8

Coherència en les dades................................................................................................9Webgrafia........................................................................................................................10

Data última modificació: 30/09/2016 Pàgina 2 de 10

Page 3: Sistemes gestors de bases de dades

Introducció a les bases de dades - Tema 0 – Introducció Autor: Miquel Boada Artigas

IntroduccióCom es pot deduir dels diferents tipus d'organització dels fitxers, dels sistemes de cercade la informació ... montar un sistema per a treballar amb una base de dades seria comcrear el sistema operatiu d'un ordinador: una feinada inacabable!Per sort, en el mercat hi ha diferents programes òptims per a treballar amb bases dedades. Alguns d'aquests són totalment lliures: MySQL, PostgreSQL,... i altres disposende versió de pagament: Microsoft SQL Server , Oracle database ...Aquests programes implementen totes les eines necessàries per a gestionar lainformació de forma eficient, de forma que el programador «només» cal que envii lesinstruccions al SGBD per tal que aquest les executi. El programador no necessita sabercom les dades estan guardades físicament en el disc, ni l'estructura del fitxer ni capaltre detall intern d'implementació.

Característiques dels sistemes gestors de bases de dadesEls sistemes gestors de bases de dades als quals es referencia en aquest apartat són elsque implementen el model relacional. Per tant, les característiques aplicables al modelrelacional o són també als gestors de bases de dades.

Data última modificació: 30/09/2016 Pàgina 3 de 10

Imatge 1: Visió general nivells base de dades

Page 4: Sistemes gestors de bases de dades

Introducció a les bases de dades - Tema 0 – Introducció Autor: Miquel Boada Artigas

Execució de transaccions

Un sistema gestor de base de dades treballa mitjançant transaccions. Les transaccionspoden ser simples instruccions, insertar o modificar una determinada informació, ovàries instruccions que s'han d'executar com a una unitat. El sistema gestor de base dedades és el responsable de garantir que les operacions no quedaran a mig fer: o bés'executen en la seva totalitat o bé es cancel·len en la seva totalitat. D'aquesta formaes garanteix que la informació continguda en la base de dades sempre serà coherent.

Abstracció de dades

Els sistemes gestors de bases de dadesgarantitzen l'abstracció de les dadesimplementant diversos nivells per accedir a lainformació. Cada un d'aquests nivells aportaabstracció de dades pel nivell al qual ha estatdefinit.Tots els nivells d'abstracció del model ANSI-SAPRC interactuen entre ells amb l'objectiu quela informació arribi de l'usuari al suportd'emmagatzematge i viceversa. Els quatre nivells establerts són:

1. Nivell externes2. Nivell conceptual3. Nivell intern4. Nivell físic

Nivell extern (View)

En aquest nivell es determina com s'han de mostrar les dades a l'usuari. La visió quetingui l'usuari de les dades no ha de coincidir a l'estructura de les dades en la base dedades. Així, per exemple, un usuari pot veure una part de les dades o pot veure dadesde diferents orígens com a una unitat.

Nivell conceptual (Schema)

El nivell conceptual és tal com estan emmagatzemades les dades en el sistema gestorde base de dades. En aquest nivell es determina quina relació hi ha entre les diferentsinformacions, les restriccions de les dades …

Nivell intern (Physical)

El nivell intern s'ocupa de com organitzar les dades en el disc, però no s'ocupa del seuemmagatzematge físic (suport on emmagatzemar la informació, pista, sector...).L'emmagatzematge físic en el dispositiu el realitzarà el sistema operatiu en el nivellfísic. Algunes de les funcions de les quals és responsable aquest nivell són:

1. Rendiment del sistema gestor de base de dades.2. Creació d'índexos.3. Codificació de les dades (accents, símbols especials ...).4. Gestió de l'espai d'emmagatzematge (reduir la quantitat d'espai necessari).

Data última modificació: 30/09/2016 Pàgina 4 de 10

Imatge 2: Arquitectura ANSI-SPARC

https://upload.wikimedia.org/wikipedia/commons/5/5c/ANSI-SPARC_DB_model.jpg

Page 5: Sistemes gestors de bases de dades

Introducció a les bases de dades - Tema 0 – Introducció Autor: Miquel Boada Artigas

Nivell físic

El nivell físic determina com s'emmagatzema la informació físicament en el dispositiu.Aquest nivell depèn del sistema operatiu i simplement intercanvia informació amb elnivell intern de l'arquitectura per tal que aquest pugui gestionar la informació.

Eines sistemes gestors de bases de dadesEls sistemes gestors de bases de dades incorporen una gama amplia d'eines per tal quel'administrador de la base de dades o els usuaris programadors puguin utilitzar igestionar de forma ràpida i eficient la informació. A continuació es citen algunes de les eines més comunes en la majoria dels sistemesgestors de bases de dades. Cal tenir en compte que algunes eines poden ser gràfiquesmentre que d'altres caldrà introduir les instruccions per teclat o mixtes: només algunesoperacions es poden generar de forma gràfica.

✔ Llenguatge de consulte: eines per a poder fer cerques en la informació.

✔ Generadors d’informes: creació de llistats

✔ Generadors d'aplicacions: generador de codi de programació en diferentsllenguatges de programació.

✔ Eines de gestió de copies i recuperació.

✔ Exportació de la informació a diferents formats.

✔ Paquets estadístics.

Data última modificació: 30/09/2016 Pàgina 5 de 10

Page 6: Sistemes gestors de bases de dades

Introducció a les bases de dades - Tema 0 – Introducció Autor: Miquel Boada Artigas

Tipus de bases de dadesLes necessitats no són sempre iguals per a tothom. Si un usuari vol una base de dadesper emmagatzemar les receptes de cuina, o les pel·lícules està clar que no necessitaràla mateixa base de dades ni les mateixes eines que una gran multinacional! Així, podemdiferenciar quatre tipus diferents de bases de dades:

1. MonousuariSón aquelles bases de dades en les quals no cal compartir la informacióconcurrentment entre diferents persones. Aquest tipus de bases de dadesnormalment són utilitzades a nivell personal.

2. CentralitzadesTota la informació està emmagatzemada en un únic lloc central, tot i que potestar distribuida amb diferents discos físics. Aquest tipus de base de dades ésmultiusuari i, per tant, permet accedir diferents usuaris a la informació de formaconcurrent.Les bases de dades centralitzades es caracteritzen per tenir una arquitecturaclient servidor. Aquesta arquitectura consisteix en què un usuari , des d'unequip remot, envia les peticions a un altre equip (servidor) . El sistema gestor debase de dades del servidor gestiona aquestes peticions i retorna la resposta a lapetició realitzada per l'usuari.Un dels problemes de les bases de dades centralitzades és el coll d'ampolla quepot significar la pròpia xarxa de comunicacions o la capacitat del propi servidorsi es realitzen moltes peticions a la vegada.

3. Paral·leles o multiprocessadorAquest tipus de base de dades es caracteritza per què el seu software estàpreparat per a treballar amb varis processadors a la vegada. Per exemple, si calrealitzar una consulta complexe, el software de base de dades pot dividiraquesta consulta en diverses parts i executar aquestes parts a la vegada. Quantingui el resultat de les diferents parts s'unificarà la informació.

4. DistribuidesLes bases de dades distribuides es caracteritzen per què la informació estàgeogràficament en diferents llocs.

Data última modificació: 30/09/2016 Pàgina 6 de 10

Page 7: Sistemes gestors de bases de dades

Introducció a les bases de dades - Tema 0 – Introducció Autor: Miquel Boada Artigas

Tipus d'usuarisNo tots els usuaris són iguals, ni tots els usuaris han de tenir el mateix accés a lainformació. Alguns usuaris tenen coneixements tècnics mentre que d'altres usuarisutilitzen el sistema per a obtenir la informació, tot i que necessiten que se'ls hidesenvolupin interfícies gràfiques sencilles per a poder-la obtenir. Per a poder cobrirtotes les necessitats de tots els usuaris i no hi hagi interferències entre ells , elssistemes gestors de bases de dades implementen diferents tipus d'usuaris, cada und'ells amb el seu rol. A part d'aquest grans grups d'usuaris, el sistema permet definirtambé diverses atribucions «menors» a cada un dels usuaris de forma independent oper grup d'usuaris. En aquest document s'han definit tres grans grups d'usuaris, si bé els SGBD una micapotents incorporen molt més grups o subdivisions d'aquests tres grans grups.

Usuari administrador

L'usuari administrador o administradors, si se'n defineix més d'un, són aquells usuarisque fan totes les tasques relacionades amb:

✔ Configuració del SGBD

✔ Configuració i manteniment de les bases de dades

✔ Configurar usuaris i privilegis (què poden fer dins el sistema)

✔ Monitorització del funcionament

✔ Còpies de seguretat

✔ ...

Usuari analista/programador

Els usuaris analistes són els encarregats de definir l'estructura que la informació hauràde tenir en la base de dades. Els programadors són els encarregats de:

✔ Disseny de la base de dades

✔ Programació de les restriccions relacionades en la informació

✔ Realització d'interfícies gràfiques i programes per operar amb la base de dades

✔ Programació de consultes

✔ Programació de llistats

Usuari final

Els usuaris finals són aquells que necessiten normalment utilitzen les einesdesenvolupades per un programador per accedir a la informació. L'usuari final escaracteritza per saber molt bé el que vol, però no té els coneixements tècnics peraconseguir-ho.

Data última modificació: 30/09/2016 Pàgina 7 de 10

Page 8: Sistemes gestors de bases de dades

Introducció a les bases de dades - Tema 0 – Introducció Autor: Miquel Boada Artigas

Llenguatges SGBDTot i que molts sistemes gestors de bases de dades incorporen eines que ens permetenrealitzar tasques més o menys complexes amb les bases de dades, tots ells incorporenuna sèrie de llenguatges estàndards que ens permeten interactuar amb el sistema. Elconeixement d'aquests llenguatges ens permeten interactuar amb qualsevol sistemagestor de base de dades i no dependre de quines utilitats gràfiques hi ha instal·lades odisposa el sistema gestor de base de dades.Els sistemes gestors de bases de dades incorporen tres llenguatges diferents, cada und'ells desenvolupat amb una finalitat determinada.

Data description language (DDL)

El llenguatge de descripció de dades és el llenguatge que permet crear la pròpia basede dades amb les estructures necessàries per a poder emmagatzemar la informació deforma òptima. Tots els elements que formen part de l'estructura de dades de la base dedades així com la definició d'aquests elements són creats i mantinguts mitjançant lesinstruccions disponibles en el llenguatge DDL.

Data control language (DCL)

El llenguatge de control permet:✔ Crear i gestionar els usuaris: crear, bloquejar, canviar paraules claus...

✔ Gestionar els seus accesos.

✔ Gestionar els seus privilegis.

Data manipulation language (DML)

El llenguatge de manipulació de dades permet la introducció d'informació a la base dedades, la consulta d'aquesta informació i, finalment, la seva modificació o eliminació.

Data última modificació: 30/09/2016 Pàgina 8 de 10

Page 9: Sistemes gestors de bases de dades

Introducció a les bases de dades - Tema 0 – Introducció Autor: Miquel Boada Artigas

Coherència en les dadesQuan s'executa una instrucció o un conjunt d'instruccions en un sistema gestor de basede dades es pot donar el cas que l'operació no es pugui dur a terme per a qualsevolmotiu: hardware, error de sistema ... Quan això passa, cal que s'executin una sèrie deprocessos automàtics que garanteixen el restabliment de la informació a un punt queaquesta no sigui incoherent: per exemple, si la meva base de dades guarda informaciósobre llogaters i contractes, no pot ser que tingui un contracte sense cap llogaterassociat.Quan es produeix un error en un procés, bàsicament hi ha dues estratègies ( tot i quemúltiples implantacions de la mateixa ) per a deixar les dades en un estat consistent:

1. Processar les operacions restantsAlguns sistemes gestors de bases de dades registren les operacions que calrealitzar i l'estat de cada una d'elles. Si no s'han executat totes les operacionsde forma correcte, quan es restableix el sistema, s'executen les operacionspendents de forma automàtica.

2. Cancel·lar les operacions realitzadesSi les dades abans d'iniciar el procés eren coherents, quan es restableixi elsistema cal tirar endarrera totes les operacions efectuades en el procés per talque les dades tornin a ser coherents.

Els sistemes gestors de bases de dades normalment implementen els dos sistemes iapliquen el mètode més eficient per a cada una de les situacions.

Data última modificació: 30/09/2016 Pàgina 9 de 10

Page 10: Sistemes gestors de bases de dades

Introducció a les bases de dades - Tema 0 – Introducció Autor: Miquel Boada Artigas

Webgrafiahttps://www.dlsweb.rmit.edu.au/toolbox/knowmang/content/models/network_model.htmhttp://osm.cs.byu.edu/CS452/supplements/FileOrg.pdfhttp://robotica.uv.es/pub/Libro/PDFs/CAPI6.pdfhttp://www.comphist.org/computing_history/new_page_9.htmhttps://www.seas.upenn.edu/~zives/03f/cis550/codd.pdfhttps://es.wikipedia.org/wiki/Modelo_relacional#Ventajas

Data última modificació: 30/09/2016 Pàgina 10 de 10