Sunteți pe pagina 1din 4

Curs III Baze de date relaţionale

Independenţa datelor
Independenţa datelor realizează o delimitare clară între reprezentarea fizică a datelor şi
structura pe care o are utilizatorul asupra acestor date. Astfel, programatorul unei aplicaţii
nu mai este preocupat de modul în care datele vor fi păstrate pe suportul extern (modul
concret sub care datele sunt reprezentate pe disc), fiind preocupat doar de problema
concretă pe care o are de rezolvat. Utilizatorul operează la nivelul bazei de date cu
modelul propriu de date, detaliile de implementare sunt sarcina sistemului de gestiune a
bazei de date. Independenţa datelor se divide în două categorii, funcţie de nivelul la care
apar aceste probleme şi anume:
• independenţa fizică a datelor
• independenţa logică a datelor
Independenţa fizică. Modificările în structura fizică de memorare a datelor nu modifică
aplicaţiile, modificări ale aplicaţiei nu modifică structura fizică. O aplicaţie este
independentă în raport cu structura fizică de memorare a datelor dacă ea nu conţine nici o
referire la tipul fişierelor folosite pentru memorarea datelor (fişiere secvenţiale, indexate,
cu acces direct, tabele de dispersie), tipul dispozitivului de stocare folosit, strategia de
acces la date. Aceste detalii nu trebuie cunoscute de utilizator.Pentru aplicaţie datele sunt
entităţi constituite din atribute, referirea la date se face prin numele entităţii sau numele
atributului.
Independenţa logică. Modificările în structura logică (conceptuală) globală a datelor nu
influenţează modelul aplicaţiei. Este posibilă de adăugare de noi entităţi şi atribute la
entităţile deja existente de a reorganiza baza de date (dezvoltarea bazei de date) fără a
influenţa utilizatorii care nu au nevoie de aceste date şi aplicaţiile existente. De asemenea
modificările pe care un utilizator le poate aduce la vederea proprie astfel încât acestea să
nu modifice vederile celorlalţi utilizatori care folosesc parţial sau total aceleaşi date.
Acest tip de independenţă este dependent de tipul de model de date folosit ( ierarhic,
reţea, relaţional)

Structura unei baze de date


Asigurarea independenţei fizice şi logice a datelor dintr-o bază de date impune
organizarea datelor pe mai multe nivele. Aceste nivele sunt (fig.3.1.):
• nivelul fizic (intern)
• nivelul logic (conceptual)
• nivelul aplicaţiei (extern)
Nivelul fizic. Se mai numeşte şi nivelul (structura) intern al bazei de date. Este constituit
dintr-o colecţie de fişiere ce conţin datele fizice, la care se adaugă structuri auxiliare cum
ar fi directoare, fişiere index, pointeri, tabele de dispersie ce au rolul de a asigura accesul
rapid la datele fizice. Suportul de stocare a acestor date este memoria externă de regulă
hard-discul calculatorului sau CD-ROM-ul. Modul de organizare a bazei de date fizice şi
performanţele acesteia sunt influenţate atât de componenta hardware a sistemului pe care
se află baza de date respectivă (tipul de calculator, resursele acestora), cât şi de
componenta software (în special sistemul de operare). Modificări în configuraţia
echipamentelor hardware sau a sistemului de operare atrage modificări a structurii fizice
a bazei de date, dar dacă există independenţă fizică a datelor, aceste modificări nu vor
afecta nivelele superioare ale bazei de date.

Utilizator m ... Utilizator 2 Utilizator 1

...

Nivelul
aplicatiei Vedere n Vedere 2 Vedere 1
...

Nivelul
logic
Modelul
conceptual SGBD

Nivelul
fizic

Figura 3.1. Structura unei baze de date


Nivelul logic. Se mai numeşte şi nivelul conceptual al bazei de date, este o abstractizare a
unei părţi din lumea reală şi constă în descrierea structurii datelor prin folosirea unor
denumiri logice a atributelor entit,aţilor cu care operează utilizatorii şi a legăturilor dintre
aceste entităţi utilizate. Modelul conceptual specifică ce date pot să facă parte din baza de
date şi ceaa ce nu poate face parte din baza de date prin specificarea unor restricţii
explicite asupra datelor. Aceste restricţii se referă la valorile pe care le pot lua datelor şi
la restricţii asupra legăturilor dintre entităţile constituente. Orice actualizare a bazei de
date se face prin verificarea acestor restricţii şi apoi modificarea valorilor propriuzise.
Modelul conceptual este o descriere a conţinutului de informaţie al bazei de date şi nu
cuprinde nici o referire la modul de memorare a datelor sau la strategia de acces la date.
Prin nivelul logic (conceptual) se realizează independenţa fizică a datelor.
Nivelul aplicaţiei. Se mai numeţe şi nivelul extern sau virtual al bazei de date fiind o
descriere a unei baze de date virtuale corespunzătoare viziunii fiecărui utilizator sau grup
de utilizatori ai bazei de date. Această descriere se face având la bază entităţile logice din
modelul conceptual al bazei de date şi poate conţine entităţi care nu există în modelul
conceptual şi care nu au corespondent direct în baza de date fizică. Aceste entităţi sunt
entităţi virtuale obţinute prin modificarea, efectuarea de operaţii sau combinarea
entităţilor reale. Nivelul aplicaţiei este cel mai apropiat de utilizator, fiecăreui utilizator
sau grup de utilizatori îi corespunde un model propriu particularizat de bază de date
corespunzător cerinţelor sale specifice. Nivelul aplicaţiei derivă din nivelul logic dar
poate prezenta diferenţe importante faţă de acesta. Din punct de vedere practic acest nivel
al bazei de date poartă numele de vizor sau vedere. Prin utilizarea vederilor se asigură
securitatea bazei de date prin limitarea accsesului la date a anumitor categorii de
utilizatori, aceştia au acces doar la anumite părţi din baza de date fiindu-le ascunse alte
părţi ale bazei de date. De asemenea, un utilizator, prin vederi, poate avea drepturi
diferite de acces la părţi diferite ale bazei de date. Vederile oferă şi viziuni particularizate,
şi simplificate asupra bazei de date, ascunzând utilizatorului acele părţi din descrierea
bazei de date care nu-l interesează. Modelul aplicaţiei oferă un nivel de abstractizare mai
ridicat decât modelul conceptual. De exemplu o entitate virtuală poate fi derivată din una
sau mai multe entităţi logice (conceptuale) existente în modelul logic. Aceste entităţi
virtuale, de regulă, sunt mai apropiate de utilizatori, astfel încât utilizatorului îi este mai
uşor să opereze cu aceste entităţi decât cu entităţile logice originare din care entităţile
virtuale au fost derivate. De exemplu, fie o bază de date conţine date referitoare la
angajaţii unei firme. Vechimea unui salariat este o informaţie care interesează atât direct
pentru rapoarte statistice, cât şi pantru stabilirea unor drepturi băneşti. Pe de altă parte,
din punct de vedere practic nu trebuie să se memoreze ca atare vechimea fiecărui angajat,
deoarece aceasta ar implica actualizarea zilnică a bazei de date. Soluţia este de memora
nu vechimea ci data angajării, iar pantru utilizatorii (aplicaţiile) interesaţi de vechime, se
defineşte o vedere în care apare o entitate virtuală obţinută prin diferenţa între data
curentă şi data angajării.
De regulă, operaţiile asupra unor entităţi virtuale, se traduc prin operaţii similare asupra
entităţilor logice originare. Există situaţii când acestă transpunere nu este posibilă. este
cazul entităţilor virtuale definite pe baza mai multor entităţi logice din modelul
conceptual, anumiteoperaţii nu sunt permise deoarece nu pot fi transpuse în mod univoc
în operaţii asupra entităţilor logice din care sunt derivate.
Prin modelul la nivelul aplicaţiei (nivelul virtual sau extern) se realizează independenţa
logică a datelor.

Avantajele folosirii bazelor de date:


ƒ Reducerea redundanţei datelor. Datorită abordării centralizate, se poate sesiza
eventualele suprapuneri între diverse aplicaţii şi se poate interveni astfel încât
aplicaţii diferite ce utilizeze date similare să utilizeze în comun un singur set de
date.
ƒ Evitarea inconsistenţei datelor. Derivă din reducerea redundanţei datelor,
caurmare a faptului că se foloseşte un singur set de date. Astfel la actualizare se
va modifica valoarea unei singure enităţi.
ƒ Utilizarea în comun a datelor (partajare). Se referă atât la centralizarea utilizării
datelor cât şi la posibilitatea de a dezvolta noi aplicaţii pornind de la datele deja
existente în baza de date.
ƒ Standardizare. Se pot impune uşor unele standarde legate de modul de stocare a
datelor, transferul datelor întere diferite aplicaţii sau între diferite baze de date.
ƒ Aplicarea restricţiilor de securitate se referă la posibilitatea introducerii de
verificări asupra autorizării accesului la bazele de date pentru fiecare utilizator şi
pentru fiecare tip de operaţie.
ƒ Menţinerea integrităţii datelor. Consistenţa datelor şi protecţia datelor împotriva
diverselor accidente sau incidente tehnice ce pot avea loc

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