Sistemi baz podatkov obsegajo kompleksne podatkovne strukture. Da bi bil sistem učinkovit v smislu pridobivanja podatkov in zmanjšal kompleksnost v smislu uporabnosti uporabnikov, razvijalci uporabljajo abstrakcijo, tj. skrijejo nepomembne podrobnosti pred uporabniki. Ta pristop poenostavlja načrtovanje baze podatkov.
Raven abstrakcije v DBMS
Obstajajo predvsem 3 ravni abstrakcije podatkov:
- Fizična ali notranja raven
- Logična ali konceptualna raven
- Pogled ali zunanja raven
Fizična ali notranja raven
To je najnižja raven abstrakcije podatkov. Pove nam, kako so podatki dejansko shranjeni v pomnilniku. Za isto se uporabljajo metode dostopa, kot je zaporedni ali naključni dostop, in metode organizacije datotek, kot so B+ drevesa in zgoščevanje. Velikost uporabnosti pomnilnika in število zapisov sta dejavnika, ki ju moramo poznati pri načrtovanju baze podatkov.
Recimo, da moramo shraniti podatke o zaposlenem. Bloki pomnilnika in količina pomnilnika, ki se uporablja za te namene, ostanejo skriti pred uporabnikom.
Logična ali konceptualna raven
Ta raven obsega informacije, ki so dejansko shranjene v bazi podatkov v obliki tabel. Prav tako shranjuje razmerje med podatkovnimi entitetami v relativno preprostih strukturah. Na tej ravni so informacije, ki so uporabniku na voljo na ravni pogleda, neznane.
Shranjujemo lahko različne atribute zaposlenega in odnose, npr. pri upravitelju lahko tudi shranite.
Logična raven tako opisuje celotno zbirko podatkov v smislu majhnega števila razmeroma preprostih struktur. Čeprav lahko implementacija preprostih struktur na logični ravni vključuje kompleksne strukture na fizični ravni, se uporabniku logične ravni ni treba zavedati te kompleksnosti. To se imenuje fizična neodvisnost podatkov. Skrbniki baz podatkov, ki se morajo odločiti, katere informacije bodo hranili v bazi podatkov, uporabljajo logično raven abstrakcije.
Pogled ali zunanja raven
To je najvišja stopnja abstrakcije. Uporabniki si ogledajo le del dejanske baze podatkov. Ta raven obstaja, da olajša dostopnost baze podatkov posameznemu uporabniku. Uporabniki si ogledujejo podatke v obliki vrstic in stolpcev. Za shranjevanje podatkov se uporabljajo tabele in relacije. Obstaja lahko več pogledov iste baze podatkov. Uporabniki si lahko samo ogledujejo podatke in komunicirajo s shrambo baze podatkov, podrobnosti o izvedbi pa so pred njimi skrite. Čeprav logična raven uporablja enostavnejše strukture, ostaja zapletenost zaradi raznolikosti informacij, shranjenih v veliki bazi podatkov. Mnogi uporabniki sistema baz podatkov ne potrebujejo vseh teh informacij; namesto tega morajo dostopati le do dela baze podatkov. Raven abstrakcije pogleda obstaja, da poenostavi njihovo interakcijo s sistemom
primer: V primeru shranjevanja podatkov o strankah
polimorfizem
- Fizični nivo - vseboval bo blok pomnilnikov (bytesGBTBetc)
- Logična raven - vsebovala bo polja in atribute podatkov.
- Raven pogleda - deluje z CLI oz GUI dostop do baze podatkov
Glavni namen abstrakcije podatkov je doseči neodvisnost podatkov, da se prihrani čas in stroški, ki so potrebni, ko se baza podatkov spreminja ali spreminja.
Neodvisnost podatkov
Neodvisnost podatkov je v glavnem opredeljen kot lastnost DBMS, ki vam pomaga spremeniti shemo baze podatkov na eni ravni sistema, ne da bi morali spremeniti shemo na naslednji ravni. pomaga ohranjati podatke ločene od vseh programov, ki jih uporabljajo.
Imamo namreč dve ravni neodvisnosti podatkov, ki izhajata iz teh ravni abstrakcije:
- Phys i neodvisnost podatkov na ravni
- Logična raven neodvisnosti podatkov
Neodvisnost podatkov na fizični ravni
Nanaša se na značilnost, da je mogoče spremeniti fizično shemo brez kakršnih koli sprememb konceptualne ali logične sheme, narejene za namene optimizacije, npr. Konceptualna struktura zbirka podatkov nanj ne bi vplivala nobena sprememba velikosti pomnilnika sistemskega strežnika baze podatkov. Spreminjanje datotek z zaporednim dostopom v datoteke z naključnim dostopom je en tak primer. Te spremembe ali modifikacije fizične strukture lahko vključujejo:
- Uporaba novih naprav za shranjevanje.
- Spreminjanje podatkovnih struktur, ki se uporabljajo za shranjevanje.
- Spreminjanje indeksov ali uporaba alternativnih tehnik organizacije datotek itd.
Neodvisnost podatkov na logični ravni
Nanaša se na značilnost možnosti spreminjanja logične sheme brez vpliva na zunanjo shemo ali aplikacijski program. Spremembe konceptualnega pogleda podatkov ne bi vplivale na uporabniški pogled na podatke. Te spremembe lahko vključujejo vstavljanje ali brisanje atributov, ki spreminjajo entitete struktur tabel ali razmerja do logične sheme itd.