Sunteți pe pagina 1din 17

1.3.

SISTEME DE GESTIUNE A BAZELOR DE DATE


Baza de date reprezint una sau mai multe colecii de
date aflate n interdependen mpreun cu descrierea
datelor i a relaiilor dintre ele.
Colecia de date reprezint un ansamblu de date
organizat dup anumite criterii i este format din
componentele:
a) o familie de caracteristici alctuit din atribute ce
definesc aspecte ale obiectelor din lumea real;
b) un predicat aplicat familiei de caracteristici ce conduce la
o submulime ce definete o relaie de ordine ntre
caracteristici;
c) o suit temporal T = {t0, t1, ..., tj, ...} ce definete un
decalaj al timpului n intervale discrete;
d) afectarea la fiecare moment tj a unei relaii asociat
predicatului.
Bazele de date sunt gestionate cu ajutorul unui program
numit sistem de gestiune al bazelor de date. Sistemul de
gestiune a bazelor de date (SGBD) este un sistem de
programe ce permite definirea, crearea i ntreinerea bazei
de date precum i accesul controlat la acesta.
Din punct de vedere conceptual, gestiunea bazelor de date
se bazeaz pe ideea separrii structurii bazei de date de
coninutul acesteia. n sistemele de baze de date definirea
datelor se separ de programele aplicaie, astfel nct
utilizatorii vd doar definiia extern a unui obiect fr a
1

cunoate modul n care e definit acesta i cum


funcioneaz. n acest mod, definiia intern a obiectului
poate fi modificat fr a afecta utilizatorii acestuia dac nu
se modific definiia extern. De exemplu, dac sunt
adugate noi structuri de date sau sunt modificate cele
existente, atunci programele aplicaie nu sunt afectate dac
nu depind direct de ceea ce se modific.
Structura bazei de date reprezint o colecie de descrieri
statice ale tipurilor de entiti mpreun cu relaiile logice
stabilite ntre ele.
Relaiile logice reprezint asociaiile dintre mai multe
entiti.
O entitate este un obiect distinct ce trebuie reprezentat n
baza de date.
Un atribut este o proprietate ce descrie un anumit aspect
al obiectului ce se nregistreaz n baza de date.
Scopul unui sistem de gestiune al unei baze de date este
acela de a oferi un mediu care s fie i convenabil, dar i
eficient pentru a putea fi folosit la:
- extragerea informaiilor din baza de date;
- nmagazinarea datelor n baza de date.
Bazele de date sunt de obicei folosite la gestionarea unei
mari cantiti de date, ceea ce presupune existena
urmtoarelor caracteristici:
-

definirea structurilor (modelarea datelor);


utilizarea unor mecanisme de manipulare a datelor;
asigurarea securitii datelor n baza de date;
asigurarea controlului concurenei n cazul utilizrii
sistemului de ctre mai muli utilizatori
Orice sistem de gestiune al bazelor de date are urmtoarele
componente:
2

Limbajul de definire a datelor

Cu ajutorul acestui limbaj se specific tipurile de date i


structurile precum i constrngerile asupra datelor.
Instruciunile limbajului sunt compilate i transformate ntrun set de tabele nmagazinate ntr-un fiier special numit
dicionar de date sau catalogul sistemului (descrierea
datelor se ntlnete sub denumirile de catalog de sistem,
dicionar de date sau meta-date ceea ce nseamn date
despre date). Structura de nmagazinare a datelor precum i
metodele de acces utilizate de sistemul bazei de date sunt
specificate cu ajutorul unui set de definiii folosit cu scopul
ascunderii detaliilor de implementare a schemelor bazei de
date

Un limbaj de manipulare a datelor

Acest limbaj este folosit pentru a ajuta utilizatorul s


acceseze i s foloseasc datele aflate n baza de date ntrun mod interactiv. Cu ajutorul acestui limbaj se pot:
-

extrage date din baza de date;


introduce date n baza de date;
elimina date din baza de date;
actualiza date din baza de date.

Administratorul bazei de date

Administratorul bazei de date este un program ce asigur


interfaa dintre datele nmagazinate, aplicaiile care
folosesc aceste date i ntrebrile adresate sistemului cu
ajutorul crora se extrag datele necesare. De obicei, bazele
de date necesit un spaiu mare de nmagazinare pe mediul
de stocare ales, ce poate ajunge de ordinul gigabytes-ilor.
Pentru a putea fi prelucrate datele se transfer din memoria
extern n memoria intern a sistemului. Scopul sistemului
bazei de date este acela de a uura accesul la date, iar
administratorul bazei de date este rspunztor de
urmtoarele:
3

asigur interaciunea cu administratorul de fiiere


(trebuie s transfere instruciunile limbajului de
manipulare a datelor n comenzi de nivel sczut
recunoscute de sistemul de fiiere);
asigur integritatea datelor prin verificrile pe care le
efectueaz n momentul actualizrii datelor astfel nct
acestea s nu ncalce constrngerile impuse i s fie
consistente;
asigur securitatea datelor prin accesul controlat la date
pe care l ofer utilizatorilor (acetia nu pot accesa orice
fel de date dac nu le este permis acest lucru);
creeaz copiile de siguran i asigur refacerea datelor,
n cazul apariiei unei erori sau defeciuni n baza de
date, la starea la care acestea se aflau nainte de
apariia erorii sau defeciunii;
asigur controlul concurenei pstrnd consistena
datelor atunci cnd acestea sunt accesate n acelai
timp de mai muli utilizatori.

1.3.1. Componentele unui sistem de gestiune al


bazelor de date
Acestea sunt:
1. Hardware
2. Software
3. Date
4. Proceduri
5. Resurse umane

1.3.1.1. Componenta hardware

Aceast component poate fi reprezentat de un singur


calculator personal, un singur calculator mainframe sau o
reea de calculatoare.
De obicei, ntr-o reea de calculatoare, se aplic urmtoarea
schem:
4

Se folosete un calculator principal pe care se afl


programele back-end - adic partea din sistemul de
gestiune al bazei de date care administreaz i controleaz
accesul la baza de date i mai multe calculatoare aflate n
diferite locaii pe care se afl programele front-end adic
partea din sistemul de gestiune al bazei de date ce
constituie interfaa cu utilizatorul.
n aceast schem, numit client-server, programele backend reprezint serverul iar cele front-end reprezint clienii.

1.3.1.2. Componenta software

Aceast component este alctuit din:


-

programele sistemului de gestiune al bazei de date;


programele aplicaie scrise de obicei n limbaje de
programare de generaia a III-a (C, Pascal, Cobol) sau
SQL ncorporat ntr-un limbaj de generaia a III-a;
- sistemul de operare;
- programe de reea.
Sistemul de gestiune al bazei de date poate avea
ncorporate instrumente din generaia a IV-a, cum ar fi SQL
ce permit:
dezvoltarea rapid de aplicaii;
mbuntirea semnificativ a productivitii;
realizarea unor programe uor de ntreinut.

1.3.1.3. Date

Datele acioneaz ca o punte de legtur ntre


componentele main (hardware i software) i componenta
uman. Baza de date conine att datele operaionale (setul
de nregistrri pe care se lucreaz) ct i metadatele.
Structura bazei de date este numit schem.

1.3.1.4. Proceduri

Procedurile reprezint instruciunile i regulile aplicate n


proiectarea i utilizarea bazei de date.
Acestea pot fi:
-

deschiderea unei sesiuni de lucru n sistemul de gestiune


al bazei de date;
pornirea sau oprirea sistemului de gestiune al bazei de
date;
utilizarea unui program de aplicaie sau a unei funcii a
sistemului de gestiune al bazei de date;
efectuarea de copii de siguran;
tratarea defeciunilor hardware i software;
modificarea structurii unui tabel, reorganizarea bazei de
date, mbuntirea performanelor, arhivarea datelor.

1.3.1.5. Resursele umane

Resursele umane sunt reprezentate de:


1. Administratorul de date este responsabil de
gestionarea resurselor de date i proiectarea conceptual /
logic a bazei de date.
2. Administratorul bazei de date este responsabil de
realizarea fizic a bazei de date ce implic proiectarea i
implementarea acesteia. Administratorul bazei de date este
o persoan care are n rspundere controlul centralizat al
datelor i al aplicaiilor ce folosesc aceste date. ndatoririle
administratorului bazei de date cuprind:
-

definete schema bazei de date, ceea ce presupune


scrierea unui set de definiii n limbajul de definire a
datelor care apoi s poat fi compilate de ctre un
compilator DDL i transformate ntr-un set de tabele
pstrate n catalogul sistemului;
definete structura de stocare i a metodele de acces
prin scrierea unui set de definiii transferate
compilatorului;

3.
a)
b)
4.

modific schema i organizarea fizic prin scrierea unui


set de definiii utilizate de ctre compilatorul DDL pentru
a face modificrile cerute n tabele;
asigur securitatea prin acordarea drepturilor de acces
utilizatorilor pe baza unor conturi de utilizator create n
acest scop;
verific respectarea constrngerilor de integritate ori de
cte ori se introduc date n baza de date;
monitorizeaz toate activitile utilizatorilor;
monitorizeaz creterea dimensiunilor bazei de date;
i formeaz o imagine de ansamblu asupra sistemului,
urmrind prile tari i slabe ale acestuia;
asigur controlul concurenei prin alegerea tipului de
blocare ce va fi folosit atunci cnd aceleai date sunt
folosite de mai muli utilizatori n acelai timp;
asigur fiabilitatea sistemului n cazul apariiei unor
erori.
Proiectanii de baze de date care pot fi:
Proiectant de baze de date logice:
identific datele (entiti i atribute);
identific relaiile dintre date;
identific constrngerile;
identific regulile ce descriu principalele caracteristici
ale datelor;
implic utilizatori n realizarea modelului de date.
Proiectant de baze de date fizice:
transpune modelul logic ntr-un set de tabele i
constrngeri;
selecteaz structuri de stocare i metode de acces
specific;
asigur securitatea datelor.
Utilizatorii finali care pot fi de urmtoarele categorii:

Programatorii de aplicaii. Acetia sunt profesionitii ce


interacioneaz cu sistemul folosind instruciuni scrise
n limbajul de manipulare a datelor pe care le
ncorporeaz n cadrul unor interfee create n alte
limbaje de programare. Precompilatorul DML
convertete apelurile scrise n limbajul de manipulare a

datelor n proceduri specifice limbajului gazd.


Compilatorul limbajului gazd genereaz apoi codul
obiect.
- Utilizatori
cu
pregtire
special.
Acetia
interacioneaz cu sistemul fr a scrie programe, dar
ei formuleaz cereri pentru a extrage date din baza de
date cu ajutorul instruciunilor specifice limbajului de
manipulare a datelor. Aceste cereri sunt transmise
procesorului de interogare care desparte o instruciune
specific limbajului de manipulare a datelor n
instruciuni specifice modulului de administrare a bazei
de date.
- Utilizatori specializai. Acetia sunt utilizatori cu
pregtire special care scriu programe aplicaie
specializate pentru diverse zone de interes (sisteme
CAD, sisteme expert etc.).
- Utilizatori obinuii. Acetia sunt utilizatori care
interacioneaz cu sistemul folosind interfeele create
de programatorii de aplicaii.
1.3.2. Componentele unui sistem de gestiune a
bazelor de date
Sistemele de gestiune a bazelor de date sunt alctuite dintro serie de module ce ndeplinesc diverse funcionaliti.
Anumite funcionaliti sunt ndeplinite mpreun cu
sistemul de operare pe care este folosit sistemul respectiv.
Principalele componente ale unui sisteme de gestiune al
bazelor de date sunt:
Administratorul de fiiere gestioneaz alocarea spaiului
pe disc precum i structurile de date utilizate la
reprezentarea datelor pe disc. Acesta transmite cererea
ctre metoda de acces corespunztoare care fie citete
datele din buffer-ul sistemului, fie le scrie n acesta.
8

Administratorul bazei de date accept interogrile i


examineaz schemele externe i conceptuale pentru a
determina ce nregistrri sunt necesare pentru a satisface o
anumit cerere, dup care apeleaz administratorul de
fiiere pentru a efectua cererea.
Procesorul de interogare transform interogrile ntr-o
serie de instruciuni de nivel jos adresate administratorului
de baze de date.

Preprocesorul DML convertete instruciunile DML dintrun program aplicaie n apeluri de funcii standard ale
limbajului gazd i interacioneaz cu procesorul de
Programatori
Programe aplicaie

Preprocesorul
DML

Codul programului
obiect

Metode de acces

Buffer

Utilizatori

Administratorul bazei de date

Interogri

SGBD
Procesor de interogare

Administrator baza de date

Schema bazei de date

Compilator DDL

Administrator catalog

Administrator de fiiere

Catalogul sistemului

Baza de date

interogare pentru a genera codul corespunztor.

Figura 1.3. Componentele bazei de date


10

Compilatorul DDL transform instruciunile DDL ntr-un


set de tabele ce conin meta-datele. Tabelele sunt stocate n
catalogul sistemului.
Administratorul de catalog gestioneaz accesul i
ntreinerea catalogului sistem. Catalogul sistemului este
accesat de majoritatea componentelor sistemului de
gestiune al bazei de date.

Una dintre cele mai importante funcii din cadrul sistemului


de gestiune al bazelor de date o are administratorul
bazei de date. Acesta pstreaz interfaa cu programele
aplicaie i interogrile lansate de utilizatori.

11

Codul
programului obiect

Procesorul de
interogare

Controlul de autorizare

Verificatorul de
integritate

Procesorul
de comand

Administratorul
de tranzacii

Administratorul
de date

Metode de
acces

Buffer

Administratorul
de buffer

Administratorul
de fiiere

Catalogul
sistemului

Baza de date

12

Administratorul de
catalog

Administratorul
bazei de date

Optimizatorul
de interogare

Planificatorul

Administrator
de reconstitui

Figura 1.4. Componentele administratorului bazei de date

Administratorul bazei de date are una dintre cele mai


importante funcii n cadrul unui sistem de gestiune al
bazelor de date. Principalele componente ale acestuia sunt
prezentate n figura 1.4. Aceste componente pot fi
urmtoarele:
-

13

Procesorul de interogare este utilizat pentru a


simplifica i uura accesul la date. Acesta conine
Evaluatorul de interogare care execut fiecare
interogare pe baza unui plan.
Administratorul de date este utilizat pentru a
minimiza resursele necesare transferului de date dintre
memoria intern i cea extern. Administratorul de date
este un program care ofer o interfa ntre datele
nmagazinate n baza de date i interogrile formulate
prin intermediul aplicaiilor. Conine urmtoarele
componente:

Controlul de autorizare care verific dac


utilizatorul are dreptul de a efectua operaia
cerut.
- Administratorul de fiiere.
- Administratorul de buffer care rspunde de
transferul datelor dintre memoria principal i
dispozitivele de stocare secundare.
Administratorul de tranzacii este utilizat pentru a
controla atomicitatea i concurena tranzaciilor n
scopul pstrrii consistenei i durabilitii bazei de
date. O tranzacie reprezint o colecie de operaii
aplicate bazei de date care sunt efectuate toate
deodat sub forma unei singure uniti logice. Aceast
component este alctuit din:
- Administratorul de tranzacii.
- Administratorul de blocare.
- Administratorul de reconstituire care garanteaz
c baza de date rmne ntr-o stare coerent
dup ce n baza de date a aprut o eroare. Acesta
este responsabil de reluarea sau abandonarea
unei tranzacii.

1.3.3. Funciile sistemelor de gestiune a bazelor de


date

1. Stocarea, regsirea i reactualizarea datelor.


Este funcia fundamental a unui sistem de gestiune
a bazelor de date. Sistemul trebuie s ascund fa
de utilizatori detaliile privind implementarea fizic
intern.
2. Asigurarea unui catalog accesibil utilizatorului
Catalogul sistemului conine date despre scheme,
utilizatori, aplicaii. Acesta trebuie s stocheze:
a. denumirile, tipurile i dimensiunile articolelor de
date;
b. denumirile relaiilor;
c. constrngerile de integritate asupra datelor;
d. numele utilizatorilor autorizai care au acces la
date;

14

e. schemele externe, conceptuale, interne precum i


transpunerile lor;
f. statistica utilizrii (de exemplu: frecvena
tranzaciilor, contorizarea numrului de accesri
ale obiectelor din baza de date).
Utilizarea unui astfel de catalog de sistem asigur o
serie de avantaje care sunt prezentate n continuare:
-

contribuie la controlul datelor ca resurse;


se poate defini n sensul datelor;
simplific comunicarea;
identific utilizatorii;
identific cu uurin redundana i incoerena;
nregistreaz modificrile din baza de date;
impactul unei modificri poate fi determinat
nainte de implementare;
- mbuntete securitatea;
- mbuntete integritatea;
- monitorizeaz operaiile efectuate asupra bazei
de date.
3. Asigurarea tranzaciilor
Tranzacia reprezint un set de aciuni prin care se
acceseaz sau se modific coninuturile bazei de
date. Dac tranzacia eueaz (nu s-au efectuat toate
modificrile, sau modificrile nu s-au efectuat n
toate cazurile) baza de date devine incoerent i, ca
urmare, trebuie avut n vedere un mecanism care s
anuleze toate modificrile efectuate n cadrul
tranzaciei i s aduc baza de date n ultima stare
coerent anterioar nceperii tranzaciei.
4. Asigurarea serviciilor de control concurente
Sistemul de gestiune al bazei de date trebuie s
garanteze c nu vor avea loc interferene atunci cnd
mai muli utilizatori acceseaz baza de date.

15

5. Asigurarea serviciilor de reconstituire


n cazul n care n timpul funcionrii sistemului au
avut loc defeciuni de natur hardware sau software,
acesta trebuie readus ntr-o stare coerent.
6. Asigurarea serviciilor de autorizare
n cazul n care n timpul funcionrii utilizatorii
ncearc intenionat sau accidental s acceseze date
pe care nu au dreptul s le prelucreze, sistemul de
gestiune al bazei de date trebuie s intervin.
7. Asigurarea unui suport pentru comunicarea datelor
Utilizatorii trebuie s poat accesa o baz de date
centralizat de la locaii aflate la distan.
8. Asigurarea serviciilor de integritate
Integritatea bazei de date se refer la corectitudinea
i coerena datelor stocate i se exprim sub forma
unor constrngeri care reprezint regulile de
coeren pe care baza de date nu are voie s le
ncalce.
9. Asigurarea serviciilor pentru promovarea independenei
de date
Independena de date este obinut printr-un
mecanism de vedere sau subschem. Completa
independen logic de date este dificil de obinut.
De obicei se pot aduga entiti, atribute, relaii, dar
eliminarea lor nu este ntotdeauna posibil.
10.Asigurarea de servicii utilitare
Serviciile utilitare ajut la administrarea bazei de
date. Cteva astfel de exemple sunt urmtoarele:
16

faciliti de import;
faciliti de monitorizare, pentru
utilizrii;
programe de analiz statistic;

urmrirea

17

faciliti de reorganizare a indecilor;


compactarea i realocarea spaiului eliberat prin
ndeprtarea unor nregistrri din dispozitivele de
stocare.

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