Sistemele de baze de date cuprind structuri complexe de date. Pentru a face sistemul eficient în ceea ce privește regăsirea datelor și pentru a reduce complexitatea în ceea ce privește utilizarea utilizatorilor, dezvoltatorii folosesc abstractizarea, adică ascunde detaliile irelevante de la utilizatori. Această abordare simplifică proiectarea bazei de date.
Nivelul de abstractizare într-un SGBD
Există în principal 3 niveluri de abstractizare a datelor:
- Nivel fizic sau intern
- Nivel logic sau conceptual
- Vizualizare sau nivel extern
Nivel fizic sau intern
Acesta este cel mai scăzut nivel de abstractizare a datelor. Ne spune cum datele sunt de fapt stocate în memorie. Metode de acces, cum ar fi accesul secvenţial sau aleatoriu, şi metodele de organizare a fişierelor, cum ar fi arborii B+ şi hashingul, sunt utilizate pentru acelaşi lucru. Dimensiunea de utilizare a memoriei și numărul de ori înregistrările sunt factori pe care trebuie să-i cunoaștem atunci când proiectăm baza de date.
Să presupunem că trebuie să stocăm detaliile unui angajat. Blocurile de stocare și cantitatea de memorie utilizată în aceste scopuri sunt păstrate ascunse de utilizator.
Nivel logic sau conceptual
Acest nivel cuprinde informațiile care sunt de fapt stocate în baza de date sub formă de tabele. De asemenea, stochează relația dintre entitățile de date în structuri relativ simple. La acest nivel, informațiile disponibile utilizatorului la nivel de vizualizare sunt necunoscute.
Putem stoca diferitele atribute ale unui angajat și relații de ex. cu managerul poate fi de asemenea stocat.
Nivelul logic descrie astfel întreaga bază de date în termenii unui număr mic de structuri relativ simple. Deși implementarea structurilor simple la nivel logic poate implica structuri complexe la nivel fizic, utilizatorul nivelului logic nu trebuie să fie conștient de această complexitate. Aceasta este denumită independență fizică a datelor. Administratorii bazei de date care trebuie să decidă ce informații să păstreze în baza de date folosesc nivelul logic de abstractizare.
Vizualizare sau nivel extern
Acesta este cel mai înalt nivel de abstractizare. Doar o parte din baza de date reală este vizualizată de utilizatori. Acest nivel există pentru a facilita accesibilitatea bazei de date de către un utilizator individual. Utilizatorii vizualizează datele sub formă de rânduri și coloane. Tabelele și relațiile sunt folosite pentru stocarea datelor. Pot exista mai multe vizualizări ale aceleiași baze de date. Utilizatorii pot doar să vizualizeze datele și să interacționeze cu stocarea bazei de date, iar detaliile de implementare sunt ascunse de ei. Chiar dacă nivelul logic folosește structuri mai simple, complexitatea rămâne din cauza varietății de informații stocate într-o bază de date mare. Mulți utilizatori ai sistemului de baze de date nu au nevoie de toate aceste informații; în schimb, trebuie să acceseze doar o parte a bazei de date. Nivelul de vizualizare al abstractizării există pentru a simplifica interacțiunea lor cu sistemul
Exemplu: În cazul stocării datelor clienților
metode java
- Nivelul fizic - va conține blocuri de stocare (bytesGBTBetc)
- Nivel logic - va conține câmpurile și atributele datelor.
- Nivel de vizualizare - funcționează cu CLI sau GUI accesul bazei de date
Scopul principal al abstracției datelor este de a obține independența datelor pentru a economisi timpul și costurile necesare atunci când baza de date este modificată sau alterată.
Independența datelor
Independența datelor este definită în principal ca o proprietate a SGBD care vă ajută să schimbați schema bazei de date la un nivel al unui sistem, fără a necesita modificarea schemei la nivelul următor. ajută la păstrarea datelor separate de toate programele care le folosesc.
Avem și anume două niveluri de independență a datelor care decurg din aceste niveluri de abstractizare:
- Fiz i independența datelor la nivel de cal
- Independența datelor la nivel logic
Independența datelor la nivel fizic
Se referă la caracteristica de a putea modifica schema fizică fără modificări ale schemei conceptuale sau logice făcute în scopuri de optimizare, de ex. Structura conceptuală a baza de date nu ar fi afectat de nicio modificare a dimensiunii de stocare a serverului sistemului de baze de date. Trecerea de la fișiere secvenţiale la fișiere cu acces aleatoriu este un astfel de exemplu. Aceste modificări sau modificări ale structurii fizice pot include:
- Utilizarea de noi dispozitive de stocare.
- Modificarea structurilor de date utilizate pentru stocare.
- Modificarea indexurilor sau utilizarea tehnicilor alternative de organizare a fișierelor etc.
Independența datelor la nivel logic
Se referă la caracteristica de a putea modifica schema logică fără a afecta schema externă sau programul de aplicație. Vizualizarea datelor de utilizator nu ar fi afectată de nicio modificare a vizualizării conceptuale a datelor. Aceste modificări pot include inserarea sau ștergerea atributelor care modifică structurile tabelelor, entități sau relații cu schema logică etc.