Sunteți pe pagina 1din 25

Universitatea ”Constantin Brancusi” din Targu Jiu

BAZE DE DATE - curs


Anul I, FB, CIG,
Anul II IE

Prof. univ. dr. Babucea Ana-Gabriela

An universitar 2019-2020
TEMA 2
MODELAREA BAZELOR DE DATE

Conținuturi:
2.1. Niveluri de abstractizare a datelor –
schemele BD
2.2. Modele de date
2.3. Limbajele bazelor de date
Argument:
 Modelarea datelor este prima etapă a procesului de
proiectare a unei baze de date și are ca obiectiv crearea
unui model de date pentru ca datele să poată fi stocate într-
o bază de date.
 În sensul cel mai larg, baza de date este un model, o
reprezentare abstractă a unui aspect al lumii reale sau o
colecție de elemente de date (fapte) care reprezintă
informații din lumea reală având drept scop o mai bună
înțelegere a unui proces, fenomen, sau activitate.
 Un model oferă o reprezentare a obiectelor, evenimentelor
și tipurilor de relații dintre acestea, dar și toate conceptele
fundamentale și regulile de comunicare între programatori
și utilizatori/beneficiari.
Recapitulare concepte definite
anterior:
• DATA este un model de reprezentare a informației într-un format
accesibil unui calculator
• Informația se referă la un obiect distinct al lumii reale, descris prin
însușirile sale, care măsurate au anumite valori .
• Entitatea este un obiect distinct din lumea reală ce trebuie reprezentat
în baza de date prin proprietăţile sale numite atribute.
• Atribut (câmp, caracteristică) este o proprietate, o însuşire ce descrie
un anumit aspect al entității ce se înregistrează în baza de date. O
entitate are mai multe atribute din care cel putin unul este identificator.
• Baza de date - un ansamblu de date structurate proiectată în scopul
gestionării unei/unor activități, accesibile unui grup de utilizatori.
• SGBD: software interfață între date și utilizatorii BD care recepţionează
cererile acestora de acces la baza de date (pentru operaţii de
introducere, ştergere, modificare sau interogare), le interpretează,
execută operaţiile corespunzătoare şi returnează rezultatul către
utilizatori.
• Sistem de baze de date (Database System) - sistem computerizat de
menținere a evidenței unei/unor activități specifice, folosind baze de
date.
TEMA 2
2.1. Niveluri de abstractizare a datelor – schemele BD

 Sistemele cu baze de date cuprind


structuri complexe de date.
 Pentru eficientizarea regăsirii datelor și
pentru reducerea complexității sistemului
din perspectiva utilizatorilor,
dezvoltatorii de astfel de sisteme
folosesc metoda abstractizări datelor.
TEMA 2
2.1. Niveluri de abstractizare a datelor – schemele BD

 Cum cei mai mulți dintre utilizatorii BD sunt, de regulă,


minimal instruiți pentru lucrul cu baza de date,
sistemele de baze de date (SBD) ascund anumite
detalii privind modul în care datele sunt stocate și
întreținute, oferind utilizatorilor o ”vedere abstractă
asupra datelor bazei de date”.
 Dezvoltatorii evită vizualizarea complexității datelor de
către utilizatori prin mai multe niveluri de abstractizare,
tocmai pentru a simplifica interacțiunile acestora cu
SBD-ul.
TEMA 2
2.1. Niveluri de abstractizare a datelor – schemele BD

 Această abordare are scopul de a separa ”vederile”


utilizator asupra bazei de date de modul în care ea
este de fapt reprezentată fizic.
 Arhitectura pe nivele a BD asigură o delimitare certă
între reprezentarea fizică a datelor și modul în care
utilizatorul percepe aceste date, o deosebire clară
între logic și fizic.
 Utilizatorii trebuie să cunoască modelul, nefiind
necesară cunoașterea implementării acestuia.
TEMA 2
2.1. Niveluri de abstractizare a datelor – schemele BD

 Organizarea datelor bazei de date este


abordată pe trei nivele, cunoscută ca
”arhitectura pe 3 nivele a BD”:
 nivelul intern: descrie structura de stocare fizică și
căile de acces la date;
 nivelul conceptual sau logic: descrie structura și
constrângerile pentru întreaga bază de date;
 nivelul extern sau ”vederile”: descrie diferitele
vizualizări ale utilizatorilor asupra bazei de date
TEMA 2
2.1. Niveluri de abstractizare a datelor – schemele BD

Arhitectura pe trei nivele a unei baze de date


TEMA 2
2.1. Niveluri de abstractizare a datelor – schemele BD

 Practic, fiecare nivel de abstractizare este un nivel de


percepție a datelor.
 Pentru fiecare nivel de abstractizare se poate realiza un
model de date, o colecție integrată de concepte cu ajutorul
cărora se descriu datele, relațiile dintre ele și constrângerile
existente asupra respectivelor date, respectiv schema
bazei de date.
 Cele mai multe dintre SGBD-urilor comerciale se bazează
pe arhitectura ANSI-SPARC a bazei de date care descrie
BD pe trei niveluri (intern, conceptual și extern), care pe
lângă faptul că fac posibilă utilizarea unei structuri
complexe la nivel intern pentru eficientizarea operațiilor,
oferă în același timp o interfață mai simplă și mai
convenabilă la nivel extern.
TEMA 2
2.1. Niveluri de abstractizare a datelor – schemele BD

 Arhitectura ANSI/SPARC -
este un standard de
abstractizare a unei baze
de date propus de
American National
Standards Institute,
Standards Planning And
Requirements Committee
pentru prima dată în 1975.
TEMA 2
2.1. Niveluri de abstractizare a datelor – schemele BD

2.1.1. Nivelul extern de abstractizare


 Nivelul extern, cel mai înalt nivel de abstractizare, privește
modul în care datele sunt percepute de utilizatorul final,
modul cum acesta ”vede” datele.
 Fiecare utilizator are acces doar la o anumită parte din
baza de date, cea care îl interesează, restul bazei de date
fiindu-i ”ascunsă”, ceea ce simplifică mult interacțiunea
acestuia cu BD.
 La acest nivel, pentru fiecare utilizator, se descrie doar o
parte a BD cu ajutorul unui model de date numit model
extern. Astfel, fiecare utilizator ”vede” structurarea datelor
în funcție de cerințele informaționale ale aplicației sale, așa
încât orice bază de date are mai multe (sub)scheme
externe.
TEMA 2
2.1. Niveluri de abstractizare a datelor – schemele BD

 O (sub)schemă externă descrie partea din baza de date


de care este interesat un anumit utilizator. Acesta ascunde
utilizatorului detaliile legate de baza de date.
 Astfel, pentru orice bază de date există mai multe de
”vederi” externe. Fiecare ”vedere” externă este definită
utilizând o schemă externă, care constă din definiții ale
diferitelor tipuri de înregistrări externe ale acelei vizualizări
specifice.
 O ”vedere” externă se referă doar la conținutul bazei de
date văzut de un anumit utilizator particular. De exemplu,
un utilizator din departamentul de vânzări va vedea numai
date referitoare la vânzări.
TEMA 2
2.1. Niveluri de abstractizare a datelor – schemele BD

 Practic, (Sub)schema externă descrie acea parte a bazei


de date care este necesară unui anumit grup de utilizatori
și ascunde detaliile cu privire la restul bazei de date
grupului respectiv de utilizatori.
 Cel mai utilizat model de date extern este modelul logic
bazat pe înregistrări.
 Modelarea logică a datelor de la acest nivel este
viziunea programatorului de aplicație asupra datelor,
care realizează descrierea datelor corespunzător unui
anumit program de aplicație.
 Programele de aplicații prezintă independență fizică față de
date dacă nu depind de schema fizică și, prin urmare, nu
trebuie rescrise dacă schema fizică se modifică.
TEMA 2
2.1. Niveluri de abstractizare a datelor – schemele BD

2.1.2. Nivelul intern de abstractizare


 Cel mai de jos nivel de abstractizare este nivelul intern și
privește modul în care datele sunt memorate pe suport fizic
și sunt percepute de SGBD și sistemul de operare.
 La acest nivel sunt descrise detaliile complete ale structurii
în care sunt stocate datele și modul de acces la acestea cu
un model ce permite translatarea modelului conceptual de
date într-un anume SGBD.
 Modelul de date fizic este un astfel de model.
 Structura fizică exprimă viziunea inginerului de sistem
asupra datelor.
TEMA 2
2.1. Niveluri de abstractizare a datelor – schemele BD

 Modelul de date fizic corespunde schemei interne a bazei


de date prin care se realizează o descriere a datelor pe
suport fizic de memorie.
 Schema internă ajută la păstrarea informațiilor despre
reprezentarea reală a întregii baze de date, ca stocare
efectivă a datelor pe disc sub formă de ”înregistrări
stocate”, vizualizarea internă a datelor specificând care
sunt datele stocate în baza de date și cum este realizată
stocarea lor.
TEMA 2
2.1. Niveluri de abstractizare a datelor – schemele BD

2.1.3. Nivelul intern de abstractizare


 Interpus între nivelurile intern și extern este nivelul
conceptual, elementul ce diferențiază practic SBD-urile de
sistemele clasice de procesare a fișierelor, și care asigură
independența dintre hardware și software.
 La acest nivel, cu ajutorul unui model conceptual de date,
sunt descrise datele stocate în bază de date și ce legături
există între acestea.
 La nivel conceptual se face o descriere completă, globală,
a întregii baze de date ascunzându-se detaliile legate de
stocarea fizică și detaliind descrierea entităților, tipurilor de
date, relațiile dintre ele și restricțiile asociate.
TEMA 2
2.1. Niveluri de abstractizare a datelor – schemele BD

 Nivelul conceptual nu specifică modul în care datele


sunt stocate fizic. Un astfel de model este modelul logic
bazat pe obiecte.
 Modelarea datelor la acest nivel exprimă viziunea
administratorul bazei de date asupra datelor, cel care
are rolul principal în definirea datelor BD la acest nivel, în
așa fel încât să satisfacă cerințele tuturor utilizatorilor
asigurând redundanță minimă și control al datelor.
 Acest nivel se concretizează prin schema conceptuală a
bazei de date, prin care se realizează o descriere a tuturor
datelor, într-un mod independent de orice implementare
specifică a unui SGBD, ceea ce face posibilă administrarea
datelor.
TEMA 2
2.1. Niveluri de abstractizare a datelor – schemele BD

 Schema conceptuală descrie structura întregii baze de date


pentru comunitatea de utilizatori.
 Această schemă ascunde informații despre structurile fizice
de stocare și se concentrează pe descrierea tipurilor de
date, a entităților, a relațiilor dintre acestea etc.
 Schema conceptuală a BD definește toate entitățile bazei
de date, atributele acestora și relațiile acestora, oferind
informații privind securitatea și integritatea datelor. La nivel
conceptual, datele disponibile unui utilizator trebuie să fie
conținute sau derivate din nivelul fizic.
 Practic, orice bază de date poate avea mai multe
(sub)scheme externe, și doar o singură schemă
conceptuală și una internă.
TEMA 2
2.1. Niveluri de abstractizare a datelor – schemele BD

 Stabilirea structurii bazei de date (schemei


conceptuale) poate fi abordată:
 de jos în sus - se descriu mai întâi (sub)schemele
externe și pe baza acestora, prin compunere, se
elaborează schema conceptuală – schema BD;
 de sus în jos - se descrie mai întâi schema
conceptuală și ulterior, prin descompunere, se obțin
(sub)schemele externe.
TEMA 2
2.1. Niveluri de abstractizare a datelor – schemele BD

2.1.4. Avantajele și dezavantajele arhitecturii BD pe trei


niveluri
Chiar dacă obiectivul principal al arhitecturii bazei de date pe
cele trei nivele este de a furniza abstractizarea datelor,
această abordare prezintă și alte avantaje:
 aceleași date pot fi accesate simultan de diferiți utilizatori cu ”vederi”
personalizate diferite;
 utilizatorul nu este preocupat de detaliile fizice de stocare a datelor;
 modificările aduse unei anumite ”vederi” nu ar trebui să afecteze
”vederile” altor utilizatori.
 structura de stocare fizică poate fi modificată fără a necesita
modificări ale structurii interne a bazei de date, precum și a
”vederilor” utilizatorilor.
 structura conceptuală a bazei de date poate fi modificată fără a
afecta utilizatorii finali.
TEMA 2
2.1. Niveluri de abstractizare a datelor – schemele BD

Mai mult, arhitectura pe trei nivele permite înțelegerea conceptului


de independență a datelor, ca posibilitate de modificare a schemei
BD pe oricare dintre nivele fără a influența nivelele superioare.
 Independența datelor : are două moduri de definire, aferente nivelelor
inferioare, cel conceptual și cel intern, respectiv independența logică a
datelor și independența fizică a datelor.
 independența logică: implică posibilitatea modificării schemei
conceptuale a BD prin extindere sau pin reducere, fără a necesita
schimbări în schema externă sau în programele de aplicații.
 independența fizică: implică capacitatea de modificare a schemei interne
a BD fără schimbarea schemei conceptuale sau externe. Modificarea
schemei conceptuale poate fi determinată de reorganizarea fizică a unor
fișiere, de necesitatea creării de noi structuri de acces pentru
eficientizarea accesului la date.
De reținut că accesul utilizatorului la date este posibil doar apelând la un
SGBD.
TEMA 2
2.1. Niveluri de abstractizare a datelor – schemele BD

Totuși, există și dezavantaje ale arhitecturii pe nivele,


respectiv ale utilizării diferitelor scheme ale bazei de
date:
 schema conceptuală a BD este o structură
complexă, greu de înțeles de oricine;
 este dificil de configurat și menținut;

 separarea fizică a celor trei nivelele poate afecta


performanța bazei de date.
Urmează Curs 4:

2.2. Modele de date


Studiu Individual:

 Bibliografie suplimentară recomandată:

Sharma, N., Perniu, L., Chong, R.F., Iyer, A., Mitea, A.C.,
Nandan, C., Nonvinkere, M., Danubianu M. (2010). Baze de
date – Fundamente, IBM Canada, prima ediţie tradusă în
limba română de către conf. dr. ing. Liviu Perniu, disponibilă în
format digital la adresa:
http://public.dhe.ibm.com/software/dw/db2/express-
c/wiki/database_fundamentals_ro_ro.pdf

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