Sunteți pe pagina 1din 14

Introducere n Ssisteme de Baze de Date

Sisteme de baze de date (SBD)


Baze de date (BD)
Sisteme de gestiune a bazelor de date (SGBD)
SBD relaionale

SISTEME DE BAZE DE DATE (SBD)

n contextul dezvoltrii societii informaionale actuale, numeroase noiuni din domeniul


informaticii, altdat cunoscute doar de specialiti, au devenit familiare tuturor. Este i
cazul unor noiuni informatice utilizate n dezvoltarea aplicaiilor cu baze de date. Mult
lume folosete noiunile de: sistem de baz de date, baz de date, sistem de gestiune a
bazelor de date. Dei n limbajul curent ele pot fi confundate ca semnificaie, pentru
specialiti fiecare dintre aceste concepte trebuie s fie delimitat, innd cont c fac parte
din acelai domeniu al informaticii

Printre produsele informatice care sunt consumate de societatea informaional se afl


i aplicaiile informatice. Acestea se dezvolt pornind de la lumea real nconjurtoare i
apoi utiliznd calculatoarele.
O aplicaie informatic presupune un ansamblu de elemente intercorelate funcional
pentru culegerea, transmiterea, stocarea i prelucrarea datelor cu ajutorul calculatorului.
Aplicaia informatic cu baze de date presupune urmtoarele aspecte:
- organizarea datelor se face n memoria extern, ntr-o baz de date. Fluxul datelor
presupune preluarea acestora ca date de intrare, stocarea lor n memoria extern,
prelucrarea datelor i obinerea unor situaii de ieire;
- operaiile din fluxul datelor vor fi realizate cu ajutorul unor programe de aplicaie
dezvoltate de specialiti;
- dezvoltarea i exploatarea aplicaiei se face ntr-un anumit context dat de cerinele
informatice, dar i de cerinele beneficiarului.

Sistemul de baz de date (DataBase System) este un ansamblu de elemente


intercondiionate care contribuie la realizarea i exploatarea unei aplicaii cu baze de date.

Elementele care fac parte din acest ansamblu se refer la: date, software i alte resurse
necesare.
Datele sunt structurate i stocate n calculator, att n memoria intern ct i n cea
extern cu ajutorul unor produse software i ntr-un anumit context de lucru.
Arhitectura pe componente d o imagine asupra elementelor constitutive ale unui SBD i
a interdependenei dintre ele.

utilizatori Arhitectura pe componente


date software
a unui SBD

Elem.auxiliare

Din aceast arhitectur rezult componentele unui sistem de baz de date:

1.Datele organizate ntr-o baz de date care conine:


coleciile cu datele propriu-zise;
dicionarul de date (structura de date, restriciile de integritate, viziunile,
clusterele etc.);
fiierele anexe (fiiere de parametri, fiiere de index etc.).

2.Software-ul aferent realizrii i expoatrii bazei de date, care conine:


sistemul de gestiune a bazelor de date (SGBD);
programele de aplicaie, dezvoltate, n cea mai mare parte, ntr-un SGBD.

3.Elementele auxiliare sunt componente care contribuie la realizarea i funcionarea


ntregului SBD:
set de proceduri automate (rutine) i manuale;
reglementri legale i administrative;
mijloace hardware utilizate;
personalul implicat pe categorii de utilizatori.

EVOLUIE SBD

ntr-un calculator datele sunt stocate att n memoria intern (temporar) ct i n memoria
extern (persistent).

n memoria extern, evoluia modului de memorare a datelor a fost determinat de


urmtoarele aspecte:
accesul ct mai rapid i uor la date;
stocarea unui volum ct mai mare de date;
creterea compexitii datelor;
perfecionarea echipamentelor de culegere, stocare, transmitere i
prelucrare a datelor.
Bazele de date, ca mod de organizare a datelor n memoria extern, au evoluat din fiiere
printr-un proces de integrare a lor (fiierele i legturile dintre ele) i innd cont de
cerinele aplicaiilor informatice.
Sunt numeroase aspecte care privete trecerea de la fiiere la baze de date dar cel mai
important este modelul de structurare a datelor n memoria extern care difer pentru cele
dou noiuni.

De la apariia lor i pn astzi, bazele de date au parcurs urmtoarele generaii


(determinate n principal de modelul de date implementat):

generaia I: BD arborescente i reea (pn la sfritul anilor 70);


generaia a-II-a: BD relaionale (sfritul anilor 70 i pn acum);
generaia a-III-a: BD orientate obiect (sfritul anilor 80 i pn acum).
BAZE DE DATE (BD)

Din punct de vedere al conceptelor folosite, vom spune: o baz de date este format din
mai multe colecii de date. Fiecare dintre acestea are ataat o familie de caracteristici,
care este format din mai multe caracteristici, care iau valori dintr-un domeniu de valori.

n mod similar se citete rndul de jos: un sistem de fiiere este format din mai multe
fiiere. Fiecare dintre acestea are ataat o nregistrare, care este format din mai multe
cmpuri, care iau valori.

Baza de date Clecii de date Familie de Caracteristici Domenii de


caracteristici valori
Sistem de Fiiere nregistrare Cmpuri Valori
fiiere

Domeniul de valori este dat de mulimea valorilor posibile pentru o caracteristic


(exemplu: culorile posibile pentru un automobil).
Caracteristica semnific definirea i descrierea unui anumit aspect (proprieti) dintr-o
entitate a lumii reale (exemplu: marca auto)
Familia de caracteristici este ansamblul caracteristicilor care se refer la aceeai entitate
din lumea real (exemplu: mulimea caracteristicilor prin care se poate descrie un
automobil {NUMR, MARCA, CAPACITATE_CILINDRIC, CULOARE}).
Colecia de date(entitatea) este o familie de caracteristici asupra creia se aplic un
predicat (care conduce la o relaie de ordine ntre caracteristici i la obinerea
informaiilor cu un anumit scop) cruia i se afecteaz anumite legturi.

Baza de date este un ansamblu de date n memoria extern cu urmtoarele caracteristici:


- organizat, pe trei niveluri (conceptual, logic, fizic);
- structurat, conform unui model de date;
- coerent, prin restriciile de integritate i protecia datelor;
- cu o redundan minim i controlat, prin implementarea unui model de date i prin
aplicarea unei tehnici de proiectare;
- accesibil mai multor utilizatori n timp util.
SISTEME DE GESTIUNE A BAZELOR DE DATE (SGBD)

SGBD este un ansamblu complex de programe care asigur interfaa ntre o baz de date
i utilizatorii acesteia.

SGBD este componenta software a unui sistem de baz de date care interacioneaz cu
toate celelalte componente ale acestuia, asigurnd legtura i interdependena ntre
elementele sistemului (vezi arhitectura unui SBD)

Note.

1) Conceptul de Sistem de Gestiune a Bazelor de Date (SGBD) se regsete cu aceeai


denumire i semnificaie n terminologia de informatic francez (SGBD - Systeme
de Gestion de Bases de Donnees) i englez (DMBS - DataBase Management
System).

2) Un produs software este un SGBD dac (concomitent):


- este un sistem, adic un ansamblu de programe intercorelate ntre ele care
concur la atingerea unui scop comun (pentru atingerea unor obiective i a
unor funcii);
- gestioneaz date organizate n memoria extern conform unui model de date
pentru baze de date;
- ndeplinete obiectivele i funciile unui SGBD.

3) Un SGBD, n mod minimal (obligatoriu), trebuie s:


- implementeze un model de date pentru baze de date;
- conin cel puin un limbaj de programare, precum i interfee/instrumente
pentru gestionarea optim a datelor.

4) Orice organizare a datelor n memoria extern n colecii de date, care nu are un


SGBD asociat, nu conduce la un SBD, ci la fiiere sau sisteme de fiiere prelucrate
cu programe (scrise n diferite limbaje de programare).

Obiectivele unui SGBD

Obiectivul general al unui SGBD este de a furniza suportul software complet pentru
dezvoltarea de aplicaii informatice cu baze de date. Fiind un mediu specializat, SGBD
satisface cerinele informaionale ale utilizatorului ntr-un mod optim. Astfel, el asigur
minimizarea costului de prelucrare a datelor, reduce timpul de rspuns (timp util), asigur
flexibilitate i deschidere mari aplicaiei, asigur protecie ridicat a datelor.
Pentru ca un produs software s ating performanele de mai sus i s fie un SGBD, el
trebuie s asigure un set minim de obiective , care va fi prezentat n continuare.

Suport software complet pentru


Obiectiv general dezvoltarea SBD

1. Independena datelor (logic, fizic) 2. Redundan minim i controlat


3. Faciliti de utilizare a datelor 4. Protecia datelor (securitate, integritate)
Set minim
5. Partajabilitatea datelor 6. Legturi ntre date
de 7. Performane globale ale aplicaiei
obiective

Funciile unui SGBD

Realizarea obiectivelor prezentate anterior este asigurat de sistemele de gestiune a


bazelor de date printr-o serie de componente ce permit efectuarea unor operaii specifice.

n funcie de natura lor i scopul urmrit, operaiile pot fi grupate pe activiti. Activitile
accept i ele o grupare pe funcii astfel nct, una sau mai multe activiti, relativ
omogene, vor realiza o anumit funcie.

innd seama de complexitatea sistemului de gestiune, de facilitile oferite de acestea,


de limbaje utilizate i de modul de implementare al modelului de date, gruparea
activitilor pe funcii are un anumit caracter relativ.

Diferitele SGBD-uri, n funcie de model de date implementat, au o serie de particulariti


identificate prin operaii i activiti specifice..

n ciuda acestor particulariti, exist cteva funcii general valabile pentru toate tipurile
de SGBD. Acestea sunt nite funcii de baz, pe care un sistem software, dac nu le are n
totalitate, nu poate fi considerat SGBD.

Iat care sunt aceste funcii:


- descrierea datelor,
- manipularea datelor,
- utilizarea datelor,
- administrarea bazei de date.
utilizatori

Funciile SGBD utilizatori

UTILIZARE

MANIPULARE DESCRIERE ADMINISTRARE

Baza de
date

Arhitectura pe componente (niveluri) a unui SGBD

Nu orice software care gestioneaz date n memoria extern este un SGBD, ci trebuie s
ndeplineasc urmtoarele condiii:

- In primul rnd, produsul software trebuie s fie un sistem, adic un ansamblu de


programe intercorelate ntre ele care lucreaz pentru un scop comun.

- Mai departe, sistemul de programe trebuie s gestioneze date n memoria extern.

- Datele nu pot exista oricum, ci organizate conform unui model de date ntr-o baz de
date (trebuie urmrite obiectivele unei baze de date).

- In sfrit, dac sistemul de programe gestioneaz o baz de date i n plus


ndeplinete funciile specifice, atunci acel sistem este un SGBD.

Rezult c SGBD-ul conine o serie de componente care sunt produse software ce au


scopul de a realiza funciile specifice:
SGBD

INTERFEE

NUCLEU
Baza de
date

INSTRUMENTE

Majoritatea arhitecturilor actuale de SGBD pot fi aduse la forma de mai sus, pe trei
niveluri. Diferitele componente din diferitele SGBD (fiecare tip a venit cu una sau
mai multe propuneri de arhitecturi) pot fi ncadrate (uneori discutabil) n unul
dintre cele trei niveluri.

Nivelurile din arhitectura de mai sus, pot conine urmtoarele componente ale unui
SGBD:

Nucleul (motorul) conine limbajul de descriere a datelor (LDD), limbajul de


manipulare a datelor (LMD), componente obligatorii n kit-ul minim de SGBD.
Componenta este destinat analitilor, programatorilor i administratorilor BD.

Interfeele sunt formate din: generatoarele de diferite tipuri (de meniuri, de


videoformate, de rapoarte etc.), elementele de CASE (Computer Aidede Software
Engeenering), interfee cu limbaje de programare universale, interfee cu alte sisteme
etc. Componenta este destinat tuturor categoriilor de utilizatori: finali, intensivi,
specialiti.

Instrumentele sunt formate din: editoarele, navigatoarele (browsers), utilitarele


(shells) de diferite tipuri. Componenta este destinat, n principal, administratorului
bazei de date, dar i altor categorii de utilizatori.
SBD RELAIONALE

Bazele de date relaionale (BDR) utilizeaz modelul de date relaional i noiunile


aferente.

BDR au o solid fundamentare teoretic, n special prin cercetrile de la IBM conduse de


E.F.Codd.

BDR este un ansamblu organizat de tabele (relaii) mpreun cu legturile dintre ele.

Avantajele BDR fa de fiiere (cteva):

CRITERIU BDR FIIERE


Independena datelor logic i fizic fizic
Niveluri de structurare conceptual, logic i fizic logic i fizic
Deschidere i portabilitate mare mic
reprezentarea i utilizarea simplificat prin model complicat
datelor
structura de date se n dicionarul BD n programe.
pstreaz

Condiii minimale pentru ca un SGBD s fie relaional:


s implementeze modelul de date relaionale prin LDD i LMD;
s implementeze cel puin un limbaj relaional.

Modelul relaional

1. Definirea structurii modelului relaional.

a) Definirea entitilor se face sub forma unor tablouri bidimensionale


numite tabele sau relaii de date.

Conceptele utilizate sunt:

DOMENIU este un ansamblu de valori caracterizat printr-un nume.El poate fi


explicit (se enumer valorile posibile, de exemplu D1:{M, F}) sau implicit (se
precizeaz proprietile valorilor, de exemplu D1:{a/aN}).
TABELA/RELAIA este un subansamblu al produsului cartezian al mai
multor domenii, caracterizat printr-un nume.

ATRIBUTUL este coloana unei tabele, caracterizat printr-un nume

TUPLUL este linia dintr-o tabel i nu are nume.


Not. Ordinea liniilor (tupluri) i coloanelor (atribute) dintr-o tabel nu trebuie
s prezinte nici-o importan.

SCHEMA TABELEI este numele tabelei, urmat ntre paranteze rotunde de


lista atributelor, iar pentru fiecare atribut se precizeaz domeniul asociat.

CHEIA este un atribut sau un ansamblu de atribute care au rolul de a identifica


un tuplu dintr-o tabel.
Tipuri de chei: primare/alternate, simple/comune, externe.

SCHEMA RELAIONAL este schema tabelei + cheile + restriciile de


integritate.

Exemplu. Fie tabela STUDENT cu atributele: NUME din domeniul D1


(numele de persoane), ANSTUDIU din domeniul D2(anii de studiu dintr-o
facultate), ANNATERE din domeniul D3(anii calendaristici).

STUDENT
NUME: D1 ANSTUDIU : D2 ANNATERE: D3
tuplu POPA A. 2 1982
PETRE M. 2 1982
ILIE C. 3 1981

Schema tabelei : STUDENT(NUME: D1, ANSTUDIU: D2, ANNATERE: D3).

Not. Numrul de domenii este mai mic sau egal cu numrul de atribute
pentru o tabel (mai multe atribute pot lua valori din acelai domeniu).

b) Definirea legturilor dintre entiti se face logic construind asocieri ntre


tabele cu ajutorul unor atribute de legtur.

Legturile se pot reprezenta sub forma unei diagrame de structur numit i


schema BD.

Exemplu. Fie o BD privind desfacerea n care am identifivat tabelele: BENI,


CONTR, PROD. Legturile dintre tabele sunt:
un beneficiar poate ncheia mai multe contracte (1:M);
un produs se poate livra prin mai multe contracte (1:M);
un beneficiar poate cumpra mai multe produse i un produs se poate
livra ctre mai muli beneficiari (M:N).

BENI CODB DENB LOCB CTBC


1:M

CONTR CODB CODP CANTL PRETL TERMENL

1:M
PROD CODP DENP UMP

Not. Legtura M:N nu apare direct n schem.


Atributele subliniate sunt chei.

Caracteristici ale structurii relaionale:

Atributele implicate n realizarea legturilor se gsesc fie n


tabelele asociate, fie n tabele distincte construite special pentru
legturi.

Atributul din tabela iniial se numete cheie extern iar cel din
tabela final este cheie primar.

Legturile posibile sunt 1:1, 1:M, M:N.

Potenial, orice tabel se poate lega cu orice tabel, dup orice


atribute.

Legturile se stabilesc la momentul descrierii datelor (prin


LDD) cu ajutorul restriciilor de integritate.
Practic, se stabilesc i legturi dinamice la momentul execuiei.

2. Operatorii modelului relaional.

a) Operatori din algebra relaional:


standard: selecia proiecia, jonciunea, reuniunea, diferena,
produsul cartezian, intersecia, diviziunea;
extensii : complementarea, descompunerea (splitarea) etc.
Not. Operatorii algebrei relaionale acioneaz la nivel de tabel n expresii
relaionale. Operanzii sunt tabele iar rezultatul este ntotdeauna o tabel.

b) Operatorii din calculul relaional:


orientai pe tuplu: conectivele (conjuncia , disjuncia ,
negaia ), cuantificatorii (existenial , universal );
orientai pe domeniu: idem ca mai sus.

Not. Pentru operatorii calcului relaional operandul poate fi tuplu sau


domeniu.

3. Restriciile de integritate ale modelului relaional.

a) Structurale sunt cele care se definesc prin compararea unor valori din
tabele:
cheie unic : ntr-o tabel nu trebuie s existe mai multe tupluri cu
aceeai valoare pentru ansamblul cheie;
referenial: ntr-o tabel T1 care refer o tabel T2, valorile cheii
externe trebuie s figureze printre valorile cheii primare din T2 sau
s ia valoarea NULL (neprecizat);
entitii : ntr-o tabel, atributele din cheia primar nu trebuie s ia
valoarea NULL.

Not. Cele trei restricii de mai sus sunt minimale.


Pe lng acestea, exist o serie de alte restricii structurale care se refer la
dependenele dintre date: funcionale, multivaloare, jonciune etc. (sunt luate
n considerare la tehnicile de proiectare BD relaionale).

b) Semantice sunt cele care se definesc prin comportamentul datelor i in


cont de valorile din BD:
restricia de domeniu : domeniul corespunztor unui atribut dintr-o
tabel trebuie s se ncadreze ntre anumite valori;
restricii temporare : valorile anumitor atribute se compar cu nite
valori temporare (rezultate din calcule etc.).

Not. Restriciile semantice fiind foarte generale se gestioneaz fie la momentul


descrierii datelor (de exemplu prin clauza CHECK), fie n afara modelului la momentul
execuiei (de exemplu prin instruciunea IF) .

Caracterizarea general a modelului relaional.

1. A fost propus de ctre IBM i a revoluionat reprezentarea datelor n BD


fcnd trecerea la o nou generaie (a doua).

2. Modelul este simplu, are o solid fundamentare teoretic fiind bazat pe


teoria seturilor (ansamblurilor) i pe logica matematic.
3. Pot fi reprezentate toate tipurile de structuri de date de mare complexitate,
din diferite domenii de activitate.

4. Implementarea modelului se face logic prin atribute avnd rol de chei.

5. Limitele modelului relaional:


prea marea simplitate a modelului l face dificil de aplicat pentru
noile tipuri de aplicaii (multimedia, internet etc.);
nu asigur o independen logic total a datelor de aplicaie;
pentru aplicaii de volum i complexitate foarte mari nu mai face
fa;
poate introduce o redundan prea mare (la proiectare prin tehnica
de normalizare).

6. Baza de date relaional este un ansamblu de tabele prin care se


reprezint att datele ct i legturile dintre ele.

Definirea SGBDR

SGBDR este un sistem software complet care implementez modelul de date relaional,
precum i cel puin un limbaj relaional.

Teoria relaional este un ansamblu de concepte ,metode i instrumente care a dat o


fundamentare riguroas realizrii de SGBDR performante.

Paralela ntre conceptele utilizate n evoluia organizrii datelor n memoria extern pn


la sistemele relaionale.

FIIERE TEORIA BD TERIA SGBDR


RELAIONAL
Fiier Colecie de date Relaie Tabela
nregistrare Familie de Tuplu Linie
caracteristici
Cmp Caracteristic Atribut Coloan
Valoare Domeniu de valori Domeniu Domeniu

Regulile lui Codd

E.F. Codd (cercettor la IBM) a formulat 13 reguli care exprim cerinele maximale
pentru ca un SGBD s fie relaional.
Regulile sunt utile pentru evoluarea performanelor unui SGBDR.

R0. Gestionarea datelor la nivel de relaie: limbajele utilizate trebuie s opereze cu


relaii (unitatea de informaie).

R1. Reprezentarea logic a datelor: toate informaiile din BD trebuie stocate i


prelucrate ca tabele.

R2. Garantarea accesului la date: LMD trebuie s permit accesul la fiecare


valoare atomic din BD (tabel, coloan, cheie).

R3. Valoarea NULL: trebuie s se permit declararea i prelucrarea valorii NULL


ca date lips sau inaplicabile.

R4. Metadatele: informaiile despre descrierea BD se stocheaz n dicionar i


trateaz ca tabele ,la fel ca datele propiu-zise.

R5. Limbajele utilizate: SGBD trebuie s permit utilizarea mai multor limbaje,
dintre care cel puin unul s permit definirea tabelelor (de baz i virtuale), definirea
restriciilor de integritate, manipularea datelor, autorizarea accesului, tratarea
tranzaciilor.

R6. Actualizarea tabelelor virtuale: trebuie s se permit ca tabelele virtuale s fie


i efectiv actualizabile, nu numai teoretic actualizabile (exemplu atributul valoare dintr-
o tabel virtual nu poate fi actualizat).

R7. Actualizrile n baza de date: manipularea unei tabele trebuie s se fac prin
operaii de regsire dar i de actulizare.

R8. Independena fizic a datelor: schimbarea stucturii fizice a datelor (modul de


reprezentare (organizare) i modul de acces) nu afecteaz programele.

R9. Independena logic a datelor: schimbarea structurii de date (logice) a


tabelelor nu afecteaz programele.

R10. Restriciile de integritate: acestea, trebuie s fie definite prin LDD i stocate n
dicionarul (catalogul) BD.

R11. Distribuirea geografic a datelor: LMD trebuie s permit ca programele de


aplicaie s fie aceleai att pentru date distribuite ct i petru date centralizate (alocarea
i localizarea datelor vor fi n sarcina SGBD-ului).

R12. Prelucrarea datelor la nivel de baz (sczut): dac SGBD posed un limbaj de
nivel sczut (prelucrarea datelor se face la nivel de nregistrare), acesta nu trebuie utilizat
pentru a evita restriciile de integritate.

S-ar putea să vă placă și