M2 - Bases de dades / UF1NF1: Mapa conceptual
Les dades que s’utilitzen de manera informatitzada s’emmagatzemen, habitualment, en bases de dades (BD).
El programari que serveix per gestionar les bases de dades es denomina sistema gestors de bases de dades (SGBD).
Contingut
Els tres mons
Per a tot informàtic que hagi de treballar amb bases de dades (BD), és imprescindible saber distingir tres àmbits ben diferenciats:
- El món real. Està constituït pels objectes (materials o no) de la realitat que ens interessen i amb els quals haurem de treballar.
- El món conceptual. És el conjunt de coneixements o informacions obtinguts gràcies a l’observació de la part del món real que ens interessa. Un mateix món real pot donar lloc a diferents mons conceptuals, en funció de la manera de percebre la realitat, o els interessos de l’observador d’aquesta.
- El món de les representacions. Està format per les representacions informàtiques, o dades, del món conceptual, necessàries per poder treballar.
Les diferents visions de les dades
Un dels principals objectius de les BD és proporcionar, als usuaris, una visió abstracta de les dades. Amb aquesta finalitat, el sistema amaga als usuaris certs detalls relatius a l’emmagatzemament i manteniment de les dades, per facilitar-los la feina, d’una banda, però també per garantir certs aspectes en matèria de seguretat.
Perquè les BD resultin útils, han de ser mínimament eficients a l’hora de recuperar les dades. Per aquest motiu, els sistemes de BD tenen implementades, a baix nivell, estructures de dades bastant complexes.
S’utilitzen tres nivells d’abstracció -físic, lògic i de vistes- per tal d’amagar aquestes estructures complexes i simplificar, d’aquesta manera, la interacció dels usuaris amb el sistema.
1. Nivell físic: és el nivell d’abstracció més baix de tots els utilitzats.
- Descriu com s’emmagatzemen realment les dades a baix nivell, especificant en detall les complexes estructures que es necessiten.
- No és freqüent treballar a aquest nivell. Només es fa quan calen optimitzacions en l’estructuració de les dades a baix nivell.
2. Nivell lògic: és el nivell d’abstracció intermedi.
- Descriu totes les dades emmagatzemades en la BD i les seves interrelacions, mitjançant un nombre no gaire elevat d’estructures força simples (típicament, taules).
- La implementació d’aquestes estructures lògiques pot comportar la presència d’estructures molt més complexes a nivell físic. Però els usuaris del nivell lògic no s’han de preocupar d’aquesta complexitat. Ni tan sols necessiten conèixer-la.
- Els administradors de BD treballen habitualment amb aquest nivell d’abstracció.
3. Nivell de vistes: és el nivell d’abstracció més alt.
- La majoria dels usuaris no necessiten conèixer tota l’estructuració lògica de la BD amb què treballen. Tractant-se d’una BD gran, a més, conèixer tota la seva estructura pot comportar un esforç considerable.
- D’altra banda, sovint, i per motius tant de seguretat com de privacitat, no resulta convenient que els usuaris tinguin accés a totes les dades, sinó solament a la part que estrictament necessiten per realitzar la seva feina.
- Cada vista només descriu una part de la BD. L’establiment de vistes simplifica la interacció de l’usuari amb el sistema, el fa més segur, i proporciona més privacitat. Es poden establir diferents vistes, segons les necessitats, sobre la mateixa BD.
En la figura següent, es poden veure els diferents nivells d’abstracció utilitzats per facilitar la interacció dels usuaris amb les BD.
Evolució dels SGBD
l’evolució dels SGBD ha estat, sovint, intrínsecament lligada a l’evolució del maquinari.
La figura següent mostra un esquema de les etapes evolutives per les quals han passat els SGBD, en el qual se n’indiquen les principals característiques.
Objectius i funcionalitats dels SGBD
Tots els SGBD del mercat volen assolir una sèrie d’objectius i oferir una sèrie de funcionalitats, amb més o menys encert, que actualment es consideren indispensables per al bon funcionament de qualsevol sistema d’informació:
- Possibilitar les consultes no predefinides de qualsevol complexitat.
- Garantir la independència física i la independència lògica de les dades.
- Evitar o solucionar els problemes derivats de la redundància.
- Protegir la integritat de les dades.
- Permetre la concurrència d’usuaris.
- Contribuir a la seguretat de les dades.
Llenguatges de SGBD
La comunicació entre els SGBD i els seus usuaris s’ha de realitzar mitjançant algun tipus de llenguatge. Els llenguatges de BD es poden classificar en dues grans tipologies segons la finalitat:
- 1. Llenguatges de definició de dades (data definition languages, en anglès, o DDL). Estan especialitzats en la definició de l’estructura de les BD mitjançant l’especificació d’esquemes.
- 2. Llenguatges de manipulació de dades (data management languages, en anglès, o DML). Possibiliten la consulta, modificació i eliminació, de les dades emmagatzemades, i també la inserció de noves informacions.
El llenguatge més utilitzat per interaccionar amb els SGBD relacionals és l’SQL.
Usuaris i administradors
Podem diferenciar tres categories d’usuaris de SGBD en funció de la manera en què interactuen amb el sistema: externs, sofisticats i programadors d’aplicacions.
1. Usuaris externs. Són usuaris no sofisticats, que no interactuen directament amb el sistema, sinó mitjançant alguna aplicació informàtica desenvolupada prèviament per altres persones amb aquesta finalitat.
- Exemple d’usuari extern
- Qualsevol persona assumeix aquest rol quan treu diners d’un caixer automàtic, ja que accedeix a la BD de l’entitat financera identificant-se mitjançant una targeta magnètica i un número d’identificació personal secret (personal identification number, en anglès, o PIN).
- Una vegada autoritzada a entrar en el sistema, podrà realitzar diferents operacions de consulta o, fins i tot, d’actualització. En el cas plantejat, després de treure diners, el saldo del compte corrent associat a la targeta patirà el decrement corresponent.
2. Usuaris sofisticats. Interactuen directament amb el sistema, sense utilitzar les interfícies proporcionades per programes intermediaris. Formulen les consultes en un llenguatge de BD (normalment, SQL), des de dins de l’entorn que el SGBD posa a la seva disposició. Tradicionalment, aquest entorn ha estat una consola en què es podien escriure les consultes, però cada vegada són més freqüents entorns que permeten construir les consultes de mode visual, com autèntiques eines CASE.
3. Programadors d’aplicacions. Són professionals informàtics que creen els programes que accedeixen als SGBD i que, posteriorment, són utilitzats pels usuaris que hem anomenat externs. Aquestes aplicacions es poden desenvolupar mitjançant diferents llenguatges de programació i eines externes al SGBD. Però molts SGBD comercials també inclouen entorns propis de desenvolupament i llenguatges de quarta generació que faciliten enormement la generació de formularis i informes que permeten visualitzar i modificar les dades.