independența datelor în SGBD
- Introducere
- ce este independența datelor?
- tipuri de Independență a datelor
Introducere
astăzi, vom prelua unul dintre cele mai importante subiecte ale sistemelor de gestionare a bazelor de date, care este independența datelor. Motivul din spatele implementării a trei niveluri de abstractizare a datelor nu este altul decât obținerea independenței datelor. Independența datelor este ceva care se ocupă cu schimbările care au loc la diferite niveluri de schemă. În afară de semnificația Independenței datelor, veți afla despre nevoia și tipurile sale aici. Deci, să începem fără alte întrebări!
ce este independența datelor?
cu toții suntem deja familiarizați cu cei doi termeni ‘date’ și ‘independență’ separat, astfel încât să putem descifra mai mult sau mai puțin semnificația întregului termen ‘independență date’ în același sens. Din termenul în sine este clar că vorbim despre independența datelor prezente într-o bază de date. În termeni tehnici, puteți spune după cum urmează: ‘independența datelor este proprietatea SGBD care permite utilizatorului să schimbe definiția schemei la un nivel fără a necesita modificarea definiției schemei la nivelurile superioare următoare’. Este foarte necesar ca atunci când facem schimbări la un nivel, să nu împiedice celelalte niveluri. Pentru a fi mai precis, independența datelor se referă la independența sau încrederea în sine a datelor prezente în cele trei niveluri ale arhitecturii bazei de date. Mai mult decât atât, este ceva care vă ajută în păstrarea datelor separate de programele de aplicare a face uz de ea. Este adesea văzut ca un tip de transparență a datelor pe care un sistem centralizat de gestionare a bazelor de date este foarte preocupat.
înainte de a analiza un aspect mai profund al independenței datelor, să facem o rechemare rapidă la nivelurile unei baze de date. Schema internă sau fizică este primul nivel care este în legătură directă cu baza de date care prea la nivel de memorie. Al doilea este schema conceptuală sau logică care servește ca mediator între al treilea și primul nivel. Al treilea nivel este schema externă care dictează modul în care baza de date este vizibilă pentru mai mulți utilizatori finali. Presupunând o instanță a unei baze de date a Bibliotecii, implementarea acestor trei niveluri arată oarecum astfel:
schema internă | schema logică | Schema externă |
fișiere neordonate ale relațiilor bazei de dateprima coloană indexul vizitatorilor | vizitatori (id: int, nume: șir, vârstă: int, contact: numeric, adresă: șir)Cărți (id: int, titlu: șir, autor: șir, isbn: numeric) | View1: BookRecords (b_id: int, b_name: string, autor: string)View2: VisitorRecords (v_id: int, v_name: string) |
independența datelor separă datele de API și implementează modificările făcute la unul dintre niveluri la mapările inter-nivel. Ajută la menținerea libertății acestor niveluri individuale ale bazei de date în același timp. Dintr-un anumit punct de vedere, independența datelor și independența funcționării împreună evidențiază fenomenul de abstractizare a datelor într-un SGBD.
cum se obține independența datelor în SGBD?
pentru obținerea independenței datelor, ne asigurăm că baza noastră de date îndeplinește cerințele de abstractizare a datelor. În cuvinte simple, abstractizarea datelor este procesul de păstrare a detaliilor irelevante ascunse utilizatorului final. Dacă ne gândim cu privire la entitățile din lumea reală, putem lua exemplul unei mașini. Când un șofer conduce o mașină, are cunoștințe complete despre conducerea unei mașini, dar dacă din anumite motive nu poate porni mașina, va avea nevoie de asistență de la un Mecanic auto. Asta pentru că șoferul știe doar cum să conducă o mașină, nu știe cum să se ocupe de problemele circuitelor interne, motivul fiind că circuitele interne și mecanismul mașinii sunt ascunse de el. De asemenea, structura internă este invizibilă pentru programatori și utilizatorii finali. Această proprietate de limitare a vizibilității într-o bază de date este denumită abstractizare a datelor. O bază de date deține până la trei niveluri de abstractizare. Aceste trei niveluri sunt enumerate mai jos:
- nivel fizic (schema internă)
- nivel Conceptual (nivel logic)
- nivel de vizualizare
nivel fizic de abstractizare a datelor are grijă de schema internă. Acest nivel de abstractizare definește modul în care sunt stocate datele dintr-o bază de date. Stochează structurile de date detaliate și complexe ale bazei de date de care utilizatorii finali și programatorii nu ar fi interesați. De asemenea, este considerat cel mai scăzut nivel de abstractizare a datelor.
nivelul conceptual, care este nivelul mediu al abstractizării datelor, este pentru nivelul logic al schemei. Nivelul anterior răspunde la întrebarea ‘ cum?’. În mod similar, acest nivel răspunde la întrebarea ‘ de ce? Descrie ce și ce tip de date sunt stocate în baza de date.
ultimul și cel mai înalt nivel de abstractizare a datelor este nivelul de vizualizare. Acest nivel arată modul în care datele trebuie vizualizate de diferiți n utilizatori. Este responsabil pentru interacțiunea utilizatorului cu baza de date.
să luăm un exemplu la scară foarte mică în care am stocat detaliile clienților unui magazin. Deci, dacă vorbim despre nivelul fizic, datele sunt stocate ca blocuri de memorie în octeți, gigabytes, terabytes etc. Practic, se ocupă de stocarea complexă a memoriei. Aceste informații nu sunt vizibile pentru programatori. Nivelul logic va descrie detaliile clientului introduse și tipurile de date ale acestora. Relația logică este implementată între datele de la acest nivel folosind limbaje de programare. Acest nivel este tratat în principal de programatori. La nivel de vizualizare, utilizatorul interacționează cu sistemul prin GUI pentru a introduce datele, poate într-un format de formular sau într-un alt format setat. Acum, fiecare nivel trebuie să fie independent de celălalt, astfel încât atunci când facem modificări la un nivel, nu suntem obligați să facem modificări la următorul nivel superior. Și asta este ceea ce face independența datelor.
pentru a menține aceste trei niveluri de abstractizare a datelor, s-ar putea să fie nevoie să facem modificări la un nivel al bazei de date, ceea ce ar putea fi o mare problemă dacă nu pentru independența datelor. Veți fi de acord cu privire la faptul că schimbarea întregului program de aplicație pentru a reflecta o ușoară modificare a schemei fizice nu este în favoarea noastră în ceea ce privește timpul și programarea. Independența datelor asigură faptul că efectuarea modificărilor la un nivel nu afectează celelalte niveluri ale bazei de date. Pe baza celor trei niveluri de abstractizare a datelor, independența datelor este ramificată în două tipuri.
tipuri de Independență a datelor
să învățăm despre cele două tipuri de Independență a datelor și proprietățile lor. Cele două categorii sunt:
- independența datelor fizice
- independența datelor logice
independența datelor fizice: Sub independența datelor fizice, obținem libertatea de a modifica schema fizică fără a fi obligați să modifice programele de aplicație pentru asta. Este responsabil pentru separarea nivelului intern de nivelul conceptual al unei structuri de baze de date. Independența fizică a datelor permite furnizarea unei descrieri logice sau a unei imagini de ansamblu a bazei de date, care nu este neapărat necesară pentru a specifica detaliile structurii logice a unei baze de date. În funcție de independența datelor fizice, orice modificări aduse la nivelul intern nu ar trebui să schimbe definiția nivelului conceptual sau a schemei nivelului de vizualizare.
independența fizică vă permite să modificați structurile de stocare a fișierelor, algoritmii de hashing, tehnicile de compresie, dispozitivele de stocare, locația bazei de date, metoda de acces, indexurile și așa mai departe. Deci, practic se ocupă de implementarea unor tehnici eficiente de stocare a memoriei. Orice modificare făcută la acest nivel va fi aplicată pe maparea dintre nivelurile interne și conceptuale ale bazei de date. Rețineți că modificările introduse trebuie localizate. Independența datelor fizice este atinsă de nivelul fizic și apoi se realizează transformarea de la nivelul conceptual la cel intern al bazei de date.
Ocazional, suntem obligați să actualizăm nivelul intern pentru îmbunătățirea performanței SGBD-ului nostru în vederea gestionării memoriei. Astfel, independența fizică a datelor, fără îndoială, joacă un rol vital pe motiv că modificarea tehnicilor de stocare în conformitate cu cerințele noastre este ceva la care trebuie să fie predispus un SGBD eficient.
Independența Datelor Logice: Independența logică a datelor oferă libertatea de a schimba nivelul conceptual al schemei fără a pune nici o constrângere de a schimba vederile externe și programele externe sau API. Modificările efectuate la acest nivel sunt aplicate pe maparea logică și la nivel de vizualizare finală. Programele de aplicații care depind în mare măsură de nivelul conceptual fac dificilă obținerea independenței logice a datelor comparativ cu independența fizică a datelor. Orice modificare minoră sau majoră în structura logică a bazei de date ne-ar cere să schimbăm și programele. Astfel, obținerea independenței logice a datelor poate fi destul de dificilă. Independența logică a datelor guvernează separarea dintre nivelul de vizualizare finală și nivelul conceptual.
independența logică a datelor ne permite să facem modificări precum adăugarea, modificarea sau ștergerea unui atribut, entitate sau chiar o relație. Efectuarea unor astfel de modificări nu necesită rescrierea programului aplicației, ci efectuarea modificărilor corespunzătoare în program. Ne permite să îmbinăm două înregistrări într-una fără a afecta stratul extern. Dacă cineva dorește să împartă o înregistrare existentă în două, este posibil fără a interfera cu structura nivelului de vizualizare a utilizatorului final al unei baze de date date.
efectuarea de modificări în timp util la nivel conceptual, în scopul de a menține DBMS până la data este esențială. Acesta este motivul pentru care se spune că independența logică a datelor conduce un rol esențial. Aceasta nu numai că ajută la îmbunătățirea performanței și viteza de SGBD, dar, de asemenea, se dovedește a fi de ajutor în a face baza de date mult mai la îndemână și mai fiabile.
avantajele Independenței datelor
independența datelor se află pe o bază incontestabilă atunci când vine vorba de a fi una dintre cele mai semnificative caracteristici ale unui sistem de gestionare a bazelor de date. Există mai multe motive pentru a justifica necesitatea independenței datelor în SGBD. Deci, să aruncăm o privire la avantajele care satisfac nevoile SGBD.
- Calitatea Datelor – independența datelor ajută la creșterea calității datelor stocate într-o bază de date. Deoarece modificarea structurii bazei de date devine mai convenabilă cu independența datelor, stocarea datelor devine eficientă. Facilitează îmbunătățirea stării nedivizate sau neafectate. Prin urmare, aceasta duce la îmbunătățirea calității datelor stocate.
- întreținere eficientă din punct de vedere al costurilor-independența datelor ne scutește de problemele de a face modificări în toate nivelurile schematice ale bazei noastre de date dacă sunt necesare modificări într – un singur nivel schematic. Astfel, menținerea bazei noastre de date devine accesibilă într-o măsură plăcută.
- aspect de securitate-aplicarea corectă a standardelor și protocoalelor pentru protejarea bazei de date devine mai ușoară. Prin urmare, independența datelor este într-adevăr utilă în îmbunătățirea securității bazelor de date.
- dezvoltatorii se concentrează pe structura generală: dezvoltatorii se pot concentra exclusiv pe manipularea și actualizarea structurii logice fără a fi deranjați de implantarea internă. Modificările sunt absorbite direct de nivelul conceptual și de maparea nivelului intern.
- reducerea Incongruenței datelor-independența datelor sprijină modificarea structurii bazei noastre de date în vederea creșterii compatibilității acesteia. Acest lucru ajută la controlul incongruenței datelor.
- îmbunătățirea performanței-independența datelor alimentează cauza abstractizării datelor. În plus, facilitează implementarea fără probleme a noilor modificări. Drept urmare, accesarea, recuperarea sau modificarea datelor devine rapidă și convenabilă. Acesta este modul în care independența datelor se dovedește a fi utilă în îmbunătățirea performanței bazei de date.
după cum putem deduce din punctele enumerate mai sus care evidențiază meritele Independenței datelor, independența datelor acționează ca una dintre armele SGBD care depășesc dezavantajele sistemelor bazate pe fișiere. Se poate vedea ca imunitatea aplicațiilor utilizatorilor împotriva modificărilor făcute în definiția schemei și organizarea datelor. Fiecare monedă are două fețe, același lucru este valabil și cu asta. Acum, că sunteți destul de convins că independența datelor este cheia obținerii fiabilității și securității unei baze de date, trebuie să vă întrebați despre aspectul său mai întunecat. Apoi, permiteți-mi să vă spun că există doar două deficiențe majore pe care le întâlnim în mod obișnuit în timp ce ne ocupăm de independența datelor. Primul este complexitatea crescută care vine odată cu adoptarea Independenței datelor. Bazele de date trebuie să fie proiectate cu atenție pentru a utiliza în mod optim independența datelor. Al doilea dezavantaj este legat de primul. Programele de aplicații depind sever de schema logică a datelor. Prin urmare, schimbarea structurii conceptuale impune schimbarea programului de aplicație respectiv.
Sper că acest blog a reușit să arunce o lumină adecvată asupra independenței datelor și să adauge valoare cunoștințelor dvs. despre SGBD. În afară de independența datelor, există și alți factori care au un impact mare asupra unei baze de date. Pentru a obține o bună înțelegere cu privire la astfel de subiecte relevante ale SGBD, vă puteți referi la alte bloguri de mare învățare. Rămâneți la curent și continuați călătoria dvs. de învățare cu noi. S-ar putea prefera optează pentru un curs intensiv pe SGBD cu o șansă amendă de a câștiga un certificat. Avem numeroase cursuri certificate care vă vor aduce beneficii într-un mod sau altul. Deci, ce altceva mai aștepți? Du-te și înscrie-te pentru un nou curs aici! Învățare fericită!
Leave a Reply