Glavne DBMS funkcije
Glavne DBMS funkcije

Video: Glavne DBMS funkcije

Video: Glavne DBMS funkcije
Video: Clean Water Lecture Series: Opportunities for Climate Resiliency on Vermont’s Rural Roads 2024, Novembar
Anonim

Moderni sistemi za upravljanje bazama podataka se koriste na mnogim lokacijama, ali ne znaju svi šta su oni i kako možete koristiti funkcije DBMS-a. Ovakvi alati imaju ogroman broj mogućnosti, pa da biste ih u potpunosti iskoristili, morate razumjeti šta oni mogu učiniti i koliko su korisni za korisnika.

Upravljanje podacima

Pre svega, funkcije DBMS-a uključuju obradu informacija u eksternoj memoriji, a ova funkcija je da obezbedi osnovne strukture VI, koje su potrebne ne samo za skladištenje informacija direktno uključenih u bazu podataka, već i za obavljanje različitih servisnih zadataka, kao što je ubrzani pristup bilo kojim datotekama u različitim slučajevima. U određenim modifikacijama aktivno se koriste mogućnosti različitih sistema datoteka, dok druge omogućavaju rad čak i na razini vanjskih memorijskih uređaja. Ali u ovom slučaju vrijedi napomenuti da u funkciji visokorazvijenog DBMS-a korisnik u svakom slučaju nije obaviješten da li se koristi neki sistem, i ako jeste, kako su datoteke organizirane. Konkretno, sistem održava sopstveni redosled imenovanja za objekte uključene u bazu podataka.

subd funkcije
subd funkcije

Upravljanje RAM baferom

U velikoj većini slučajeva, uobičajeno je koristiti DBMS funkcije u prilično velikim bazama podataka, a ova veličina je barem često mnogo veća od dostupne RAM-a. Naravno, ako se u slučaju pristupa svakom elementu podataka izvrši razmjena sa eksternom memorijom, brzina ove potonje će odgovarati brzini samog sistema, stoga je praktično jedina opcija za stvarno povećanje istog baferovanje informacije u RAM-u. Štaviše, čak i ako OS obavlja baferovanje na nivou sistema, na primer sa UNIX-om, to neće biti dovoljno da DBMS obezbedi svrhu i osnovne funkcije, budući da ima mnogo veću količinu podataka o korisnim svojstvima baferovanja za svaki određeni dio korištene baze podataka. Zbog toga, napredni sistemi održavaju svoj vlastiti skup bafera, kao i jedinstvenu disciplinu za njihovu zamjenu.

Vrijedi napomenuti činjenicu da postoji poseban pravac sistema upravljanja, fokusiran na kontinuirano prisustvo cijele baze podataka u RAM-u. Ovaj pravac se zasniva na pretpostavci da će se u bliskoj budućnosti količina RAM-a u računarima moći toliko proširiti da više neće brinuti o bilo kakvom baferovanju, a osnovne funkcije ovog tipa DBMS-a će ovde dobro doći. Trenutno svi ovi radovi ostaju u fazi testiranja.

Upravljanje transakcijama

Transakcija je niz operacija sa korišćenom bazom podataka koju sistem upravljanja smatrajedinstvena celina. Ako je transakcija u potpunosti uspješno izvršena, sistem popravlja promjene koje je napravio u vanjskoj memoriji ili nijedna od ovih promjena neće utjecati na stanje baze podataka. Ova operacija je potrebna kako bi se održao logički integritet korištene baze podataka. Vrijedi napomenuti da je održavanje ispravnog toka mehanizma transakcije preduvjet čak i kada se koristi jednokorisnički DBMS, čija se svrha i funkcije značajno razlikuju od drugih tipova sistema.

glavne funkcije subd
glavne funkcije subd

Svojstvo da svaka transakcija počinje samo kada je baza podataka u konzistentnom stanju i ostavlja je u istom stanju nakon završetka procedure, čini je izuzetno pogodnom za korištenje kao jedinicu aktivnosti u vezi s bazom podataka. Uz pravilno upravljanje istovremeno izvršavajućim transakcijama od strane kontrolnog sistema, svaki pojedinačni korisnik se u principu može osjećati kao dio cjeline. Međutim, ovo je donekle idealizirana reprezentacija, jer će u mnogim situacijama kada zaposleni ljudi i dalje osjećati prisustvo svojih kolega ako koriste višekorisnički sistem, ali to je u stvari predviđeno i samim konceptom DBMS-a.. Karakteristike višekorisničkog tipa DBMS takođe povezuju koncepte kao što su serijski plan izvršenja i serijalizacija sa upravljanjem transakcijama.

Šta oni znače?

Serijalizacija transakcija koje se istovremeno izvršavaju predviđa izradu posebnog plana njihovog rada, u kojemukupan efekat postignute mešavine je ekvivalentan rezultatu dobijenom usled njihovog uzastopnog izvođenja.

Plan serijskog izvršenja je specifična struktura akcija koja vodi do serijalizacije. Naravno, ako sistem uspe da obezbedi zaista serijsko izvršenje mešavine transakcija, tada će za svakog korisnika koji započne transakciju prisustvo drugih biti potpuno neprimetno, osim što će raditi malo sporije u odnosu na jednokorisničko način rada.

broj osnovnih subd funkcija
broj osnovnih subd funkcija

Postoji nekoliko osnovnih algoritama za serijalizaciju. U centralizovanim sistemima, najpopularniji algoritmi danas se zasnivaju na sinhronizacionom hvatanju različitih objekata baze podataka. U slučaju korištenja bilo kojeg serijalizacijskog algoritama, pruža se mogućnost sukoba između dvije ili više transakcija pri pristupu određenim objektima baze podataka. U takvoj situaciji, da bi se podržala ova procedura, potrebno je izvršiti rollback, odnosno eliminisati sve promjene u bazi podataka kroz jedan ili više procesa. Ovo je samo jedna od situacija u kojoj osoba osjeća prisustvo drugih u višekorisničkom sistemu.

Dnevnik

Jedan od glavnih zahteva za moderne sisteme je da se obezbedi pouzdanost skladištenja informacija u eksternoj memoriji. Ovo posebno predviđa da glavne funkcije DBMS-a uključuju mogućnost vraćanja posljednjeg dogovorenogstanje baze podataka nakon bilo kakvog softverskog ili hardverskog kvara. U velikoj većini slučajeva, uobičajeno je razmotriti dvije opcije za hardverske kvarove:

  • soft, što se može protumačiti kao neočekivano gašenje računara (najčešći slučaj je hitni nestanak struje);
  • hard, koje karakteriše djelomični ili potpuni gubitak podataka pohranjenih na vanjskom mediju.

Primjeri softverskih kvarova uključuju rušenje sistema prilikom pokušaja korištenja neke funkcije koja nije dio glavnih funkcija DBMS-a, ili rušenje nekog korisničkog uslužnog programa, zbog čega određena transakcija nije završena. Prva situacija se može smatrati posebnom vrstom mekog kvara, dok druga zahtijeva oporavak jedne transakcije.

podsvrha i glavne funkcije
podsvrha i glavne funkcije

Naravno, u svakom slučaju, da biste normalno vratili bazu podataka, morate imati određenu količinu dodatnih informacija. Drugim riječima, za normalno održavanje pouzdanosti skladištenja podataka u bazi podataka potrebno je osigurati redundantnost pohranjivanja informacija, a dio podataka koji se koristi prilikom oporavka mora se posebno pažljivo čuvati. Najčešći metod za održavanje ovih suvišnih podataka je evidentiranje promjena.

Šta je to i kako se koristi?

Evidencija je poseban dio baze podataka, pristupkoja nije uključena u broj funkcija DBMS-a, a podržava se vrlo pažljivo. U nekim situacijama čak pruža podršku za dvije kopije dnevnika u isto vrijeme, smještene na različitim fizičkim medijima. Ova spremišta primaju informacije o svim promjenama koje se dešavaju u glavnom dijelu baze podataka, au različitim sistemima upravljanja, promjene se mogu evidentirati na različitim nivoima. U nekim situacijama, unos dnevnika u potpunosti odgovara specifičnoj logičkoj operaciji ažuriranja, u drugim - minimalnoj internoj operaciji povezanoj sa ažuriranjem stranice eksterne memorije, dok neki DBMS omogućavaju kombinaciju ova dva pristupa.

U svakom slučaju, koristi se takozvana strategija evidentiranja "napišite unaprijed". Kada se primijeni, zapis koji označava promjenu u bilo kojem objektu baze podataka ulazi u vanjsku memoriju dnevnika prije nego što se objekt mijenja. Poznato je da ako funkcije Access DBMS-a omogućavaju normalnu implementaciju ovog protokola, korištenje dnevnika rješava sve probleme vezane za vraćanje baze podataka u slučaju bilo kakvog kvara.

Rollback

Najjednostavnija situacija oporavka je vraćanje pojedinačne transakcije. Za ovu proceduru ne morate koristiti sistemski dnevnik promjena, a sasvim je dovoljno koristiti lokalni dnevnik operacija modifikacije za svaku transakciju, a zatim vratiti transakcije izvođenjem obrnutih operacija, počevši od kraja svake od zapisima. Struktura DBMS funkcije često pružakorištenje upravo takve strukture, ali u većini slučajeva lokalni dnevnici još uvijek nisu podržani, a pojedinačno vraćanje čak i za pojedinačne transakcije se provodi prema onoj za cijeli sistem, a za to se kombiniraju svi zapisi svake od transakcija u obrnutoj listi.

koncept subd funkcije subd
koncept subd funkcije subd

Tokom laganog kvara, vanjska memorija baze podataka može uključivati različite objekte koji su modificirani transakcijama koje nisu bile dovršene u vrijeme kvara, a također mogu nedostajati razni objekti koji su nadograđeni od strane onih koji su uspješno završeni prije kvara korištenjem bafera RAM-a, čiji sadržaj u potpunosti nestaje kada se pojave takvi problemi. Ako se slijedi protokol za korištenje lokalnih dnevnika, u eksternoj memoriji moraju postojati unosi koji se odnose na modifikaciju bilo kojeg takvog objekta.

Glavni cilj procedure oporavka nakon pojave soft kvarova je takvo stanje eksterne memorije glavne baze podataka, do kojeg bi došlo ako bi promjene bilo koje završene transakcije bile urezane u VI i ne bi sadržavale tragove nezavršenih procedura. Da bi se postigao ovaj efekat, glavne funkcije DBMS-a u ovom slučaju su vraćanje nepotpunih transakcija i ponavljanje onih operacija čiji rezultati na kraju nisu prikazani u eksternoj memoriji. Ovaj proces uključuje prilično veliki broj suptilnosti, koje se uglavnom odnose na organizaciju upravljanja dnevnikom i baferom.

Teški neuspjesi

Kada bazu podataka treba vratiti nakon teškog kvara, ne koristi se samo dnevnik, već i rezervna kopija baze podataka. Potonji je potpuna kopija baze podataka do trenutka kada je počelo popunjavanje dnevnika. Naravno, za normalnu proceduru oporavka potrebno je očuvanje dnevnika, pa se, kao što je ranije spomenuto, postavljaju izuzetno ozbiljni zahtjevi za njegovo očuvanje u vanjskoj memoriji. U ovom slučaju, oporavak baze podataka se sastoji u činjenici da se, na osnovu arhivske kopije, u dnevniku reproduciraju sve transakcije koje su završene do trenutka kada je došlo do kvara. Ako je potrebno, može čak i reproducirati transakcije na čekanju i nastaviti njihov normalan rad nakon završetka procedure vraćanja, ali u većini stvarnih sistema ova procedura se ne provodi iz razloga što je sam oporavak od teškog kvara prilično duga procedura.

Podrška za jezik

Moderne baze podataka koriste različite jezike, a rani DBMS, čija su se svrha, funkcije i druge karakteristike značajno razlikovale od modernih sistema, pružale su podršku za nekoliko visoko specijalizovanih jezika. U osnovi, to su bili SDL i DML, dizajnirani da definišu šemu baze podataka i manipulišu podacima, respektivno.

struktura subd funkcije
struktura subd funkcije

SDL je korišten za određivanje logičke strukture baze podataka, odnosno za prepoznavanje specifične strukture baze podataka koja je predstavljenakorisnika. DML je, s druge strane, uključivao čitav kompleks operatora za manipulaciju informacijama koji su vam omogućavali unos informacija u bazu podataka, kao i brisanje, modificiranje ili korištenje postojećih podataka.

Funkcije DBMS-a uključuju različite tipove podrške za jedan integrisani jezik, koji obezbeđuje prisustvo svih sredstava neophodnih za normalan rad sa bazama podataka, počevši od njenog inicijalnog kreiranja, pa do obezbeđivanja standardnog korisničkog interfejsa. SQL se koristi kao standardni jezik koji pruža osnovne funkcije DBMS-a današnjih najčešćih relacijskih sistema.

Šta je to?

Pre svega, ovaj jezik kombinuje glavne funkcije DML-a i SDL-a, odnosno pruža mogućnost da se odredi specifična semantika relacione baze podataka i manipuliše potrebnim informacijama. Istovremeno, imenovanje različitih objekata baze podataka je podržano direktno na nivou jezika u smislu da kompajler pretvara imena objekata u njihove interne identifikatore, na osnovu posebno održavanih tabela kataloga usluga. Jezgro kontrolnih sistema, u principu, ne stupa u interakciju sa tabelama ili njihovim pojedinačnim kolonama ni na koji način.

nije uključeno u glavne funkcije pod
nije uključeno u glavne funkcije pod

SQL jezik uključuje čitavu listu specijalnih alata koji vam omogućavaju da odredite ograničenja integriteta baze podataka. Opet, sva takva ograničenja su uključena u posebne kataloške tabele, a kontrola integriteta se vrši direktno na nivou jezika, tj.u procesu čitanja pojedinačnih naredbi za modifikaciju baze podataka, kompajler, na osnovu ograničenja integriteta u bazi podataka, generiše odgovarajući programski kod.

Preporučuje se: