Independența datelor în DBMS: fizică și logică cu exemple
⚡ Rezumat inteligent
Independența datelor este o proprietate a SGBD care permite modificarea schemei la un anumit nivel fără a impune o modificare la nivelul imediat superior. Aceasta se prezintă în două forme, fizică și logică, și păstrează datele separate de programele care le utilizează.
Ce este independența datelor într-un SGBD?
Independența datelor este definită ca o proprietate a unui SGBD care vă ajută să modificați schema bazei de date la un nivel al unui sistem de baze de date fără a fi necesară o modificare a schemei la nivelul superior. Independența datelor vă ajută să păstrați datele separate de toate programele care le utilizează.
Puteți utiliza aceste date stocate pentru calcul și prezentare. În multe sisteme, independența datelor este o funcție esențială pentru componentele sistemului.
Tipuri de independență a datelor
In Baze de date Există două tipuri de independență față de date:
- Independența datelor fizice.
- Independenta logica a datelor.
Ambele tipuri se bazează pe designul stratificat al unei baze de date, așa că este util să revizuiți mai întâi aceste niveluri.
Nivelurile unei baze de date
Înainte de a învăța despre independența datelor, este importantă o reamintire a nivelurilor bazei de date. Baza de date are trei niveluri, așa cum se arată în diagrama de mai jos:
- Fizic / Intern
- Conceptual
- Extern

Acestea sunt aceleași straturi descrise în detaliu la Scheme DBMSLuați în considerare un exemplu de bază de date universitară. La diferite niveluri, implementarea arată astfel:
| Tipul Schemei | Punerea în aplicare |
|---|---|
| Schema externă |
Vizualizare 1: Info_curs(cid:int, cname:string) Vizualizare 2: student_info(id:int, name:string) |
| Schemă conceptuală |
Students(id: int, name: string, login: string, age: integer) Courses(id: int, cname: string, credits: integer) Enrolled(id: int, grade: string) |
| Schema fizica |
|
Independența datelor fizice
Independența fizică a datelor vă ajută să separați nivelul conceptual de nivelul intern sau fizic. Vă permite să oferiți o descriere logică a bazei de date fără a fi nevoie să specificați structuri fizice. Comparativ cu independența logică, este ușor de obținut independența fizică a datelor.
Cu independență fizică, puteți modifica structurile sau dispozitivele de stocare fizică fără niciun efect asupra schemei conceptuale. Orice modificare efectuată este absorbită de hartă.ping între nivelurile conceptual și intern. Independența fizică a datelor se realizează prin prezența nivelului intern al bazei de date și transformarea de la nivelul conceptual la nivelul intern.
Exemple de modificări în condițiile independenței datelor fizice
Din cauza independenței fizice, niciuna dintre modificările de mai jos nu va afecta stratul conceptual:
- Utilizarea unui dispozitiv de stocare nou, cum ar fi un hard disk sau o bandă magnetică.
- Modificarea tehnicii de organizare a fișierelor în baza de date.
- Trecerea la diferite structuri de date.
- Schimbarea metodei de acces.
- Modificarea indicilor.
- Modificări ale tehnicilor de compresie sau algoritmi de hash.
- Schimbarea locației bazei de date, de exemplu de pe unitatea C pe unitatea D.
Independența logică a datelor
Independența logică a datelor este capacitatea de a modifica schema conceptuală fără a schimba:
- Vederi exterioare.
- API-uri sau programe externe.
Orice modificare făcută este absorbită de hartăping între nivelurile extern și conceptual. Comparativ cu independența fizică a datelor, este dificil să se obțină independența logică a datelor.
Exemple de modificări sub independența logică a datelor
Din cauza independenței logice, niciuna dintre modificările de mai jos nu va afecta stratul extern:
- Adăugarea, modificarea sau ștergerea unui nou atribut, entitate sau relație este posibilă fără a rescrie programele de aplicație existente.
- Fuzionarea a două înregistrări într-una singură.
- Descompunerea unei înregistrări existente în două sau mai multe înregistrări.
Diferența dintre independența datelor fizice și logice
| Independența logică a datelor | Independența datelor fizice |
|---|---|
| Preocupat în principal de structura sau modificarea definiției datelor. | Preocupat în principal de stocarea datelor. |
| Dificil, deoarece recuperarea datelor depinde în principal de structura logică. | Ușor de recuperat. |
| Comparativ cu independența fizică, este dificil de obținut. | Comparativ cu independența logică, este ușor de realizat. |
| Trebuie să faceți modificări în programul aplicației dacă se adaugă sau se șterg câmpuri noi. | O modificare la nivel fizic nu necesită, de obicei, o modificare la nivel de program de aplicație. |
| Modificarea la nivel logic este semnificativă ori de câte ori structurile logice ale bazei de date sunt schimbate. | Modificările la nivel intern pot fi sau nu necesare pentru a îmbunătăți performanța. |
| Preocupat de schema conceptuală. | Preocupat de schema internă. |
| Exemplu: adăugarea, modificarea sau ștergerea unui atribut nou. | Exemplu: modificarea tehnicilor de compresie, a algoritmilor de hashing, a dispozitivelor de stocare etc. |
Importanța independenței datelor
- Te ajută să îmbunătățești calitatea datelor.
- Face ca întreținerea sistemului de baze de date să fie mai accesibilă.
- Implementează standarde și îmbunătățește securitatea bazelor de date.
- Nu este nevoie să modificați structurile de date din programele de aplicație.
- Permite dezvoltatorilor să se concentreze pe structura generală a bazei de date, mai degrabă decât pe implementarea internă.
- Reduce substanțial inconsistența bazei de date.
- Vă permite să faceți modificări la nivel fizic pentru a îmbunătăți performanța sistemului.

