SUPB
Iz E-študij, proste zakladnice študentskega znanja
Sistem za upravljanje podatkovnih baz (SUPB) je skupek programske opreme, ki omogoča kreiranje, vzdrževanje in nadzor nad dostopom do podatkov v podatkovni bazi:
- Kreiranje podatkovnih struktur je omogočeno preko DDL (Data Definition Language)
- Vzdrževanje podatkov (Create, Insert, Update, Delete) pa preko DML (Data Manipulation Language)
- Povpraševalni jeziki (query language)
Vsebina |
Jeziki četrte generacije (4GLs)
- So pretežno ne-proceduralni
- v večini primerov lahko specificiramo, kaj je potrebno narediti in ne tudi kako
Transakcija
- Transakcija predstavlja skupek ažuriranj, ki jih izvede transakcijski program
- Z vidika SUPB predstavlja transakcija osnovno enoto spremembe transakcija se mora izvesti v celoti ali sploh ne
- Dve pomembni nalogi SUPB pri izvajanju transakcij:
- Zagotavljanje sočasnosti pri izvajanju transakcij
- Obnavljanje PB po transakcijskih in sistemskih nesrečah (razveljavljanje, ponavljanje transakcij...)
Nadzor nad dostopom do podatkov
Nadzor nad dostopom do podatkov obsega več področij:
- Sistem varnosti: dostop do podatkov v skladu z avtorizacijo
- Sistem nadzora integritete: zagotavlja integriteto (smiselno vsebino, konsistenco) podatkov
- Sistem nadzora sočasnega dostopa
- Sistem obnove podatkovne baze (recovery)
- Sistemski katalog (data dictionary)
Poizvedovanje v podatkovnih bazah
- Enostavnost pridobivanja informacij iz PB je ključna prednost SUPB za uporabnike
- Relacijske PB omogočajo uporabnikom postavljati enostavna vprašanja (poizvedbe), s katerimi pridobivajo podatke/informacije
- Poizvedbe se podaja v jeziku, ki je prirejen za opisovanje poizvedb – poizvedovalni jezik
- Relacijski model podpira zelo močne poizvedovalne jezike
- Ena pomembnih nalog SUPB je optimizacija poizvedb, tako da se te čim hitreje izvedejo
- Učinkovitost poizvedb je močno odvisna od načina, kako so podatki shranjeni v fizični obliki ter indeksirani
SUPB omogoča uporabnikom izvajati poizvedbe ter kreirati in posodabljati vrednosti s pomočjo DML
Aplikacija v SUPB
Aplikacija (aplikacijski sistem, aplikativni sistem): program, ki v okviru informacijskega sistema delno ali v celoti podpira enega ali več poslovnih procesov in za shranjevanje podatkov uporablja podatkovno bazo
Komponente
Stroj
- Strojna oprema
- Podatkovni strežnik
- Pomembna parametra strežnika: pomnilnik in diskovni prostor
- Ostala oprema
- Programska oprema
- SUPB, operacijski sistem, omrežna programska oprema
- Aplikacije, različna orodja (razvojna in orodja za dostop do podatkov)
Most
- Podatki
Človek
- Postopki
- Načini logiranja (prijave)
- Uporaba posameznih orodij
- Zagon in zaustavitev podatkovne baze
- Izdelava varnostnih kopij
- Obvladovanje nesreč/okvar
- Ljudje, njihove vloge
- Skrbnik podatkov
- je tisti, ki pozna kaj vsak record pomeni
- Skrbnik podatkovne baze (DBA – Database Administrator)
- je oseba, ki lahko spreminja strukturo baze, jo zaustavi, ponovno zažene...
- Analitik in načrtovalec
- Razvijalci
- so programerji, ki naredijo vmesnike za končne uporabnike
- Končni uporabniki (izkušeni, neizkušeni)
- Skrbnik podatkov
Zgodovina
Prva generacija
- Hierarhične in mrežne PB
Druga generacija
- Relacijske PB
Tretja generacija
- Objektno-relacijske PB
- Objektne PB
Prednosti uporabe
- Zagotavljanje varnosti in zaupnosti
- Vpeljava standardov
- Relativno nižja cena
- Izdelava varnostnih kopij podatkov in možnost obnavljanja PB
- Krajši čas potreben za razvoj aplikacij
Slabosti uporabe
- Kompleksnost
- Velikost
- Cena nabave in strošek obratovanja
- Stroški nadgradenj strojne opreme (diski in pomnilnik)
- Strošek in napor pretvorbe podatkov
Struktura SUPB
Funkcije posameznih enot SUPB:
Query Evaluation Engine
- Parser
- Sintaktično analizira poizvedbo, ki jo SUPB-ju posreduje aplikacija
- Optimizer
- Na podlagi informacij o tem, kako so podatki shranjeni, izdela učinkovit plan za izvajanje poizvedbe. Plan izvajanja predstavlja načrt za izvedbo poizvedbe in je ponavadi predstavljen kot drevo relacijskih operatorjev.
- Operator Evaluator
- Na osnovi plana izvajanja analizira poizvedbo
- Plan Executor
- Izvede poizvedbo po navodilih plana poizvedbe
Centralne komponente
- Files and Access Methods
- Enota, ki omogoča delo z datotekami
- Buffer Manager
- Prenaša strani iz diska v pomnilnik glede na bralne potrebe
- Disk Space Manager
- Najnižji nivo SUPB je zadolžen za upravljanje z diskom. Vse operacije višjih plasti se tukaj prevedejo v nizko-nivojske ukaze za delo z diskom
Concurrency Control
- Transaction Manager
- Zagotavlja zaseganje podatkov z uporabo določenih protokolov in skrbi za razporejanje izvajanja transakcij
- Lock Manager
- Vzdržuje informacije o zahtevanih in odobrenih zaseženjih podatkov
Recovery Manager
- Vzdržuje dnevnik in skrbi za obnavljanje sistema v zadnje skladno stanje pred nesrečo
- Query processor
- Transformira poizvedbe v skupino ukazov nižje nivojskih jezikov in jih posreduje Database Managerju
- Database manager
- Prejema zahteve od Query processorja (poizvedbe uporabnikov in aplikacij) ter zahteve, ki so posledica ostalih DML ukazov
- Preverja zunanje in konceptualne sheme, da ugotovi, kateri zapisi konceptualnega nivoja “ustrezajo” zahtevi
- Preverja avtorizacijo
- Posreduje zahteve naprej File Managerju
- File manager
- Upravlja s podatkovnimi datotekami oz. fizičnimi enotami, kjer se nahajajo podatki
- DML preprocessor
- Pretvarja DML ukaze bodisi v poizvedbe, bodisi v standardne funkcijske klice, ki se nahajajo prevedeni v Object code
- DDL compiler
- Na podlagi prejetega DDL ukaza izdela vse ukaze za poseg v eno ali več tabel v Data Dictionary in jih posreduje Dictionary Managerju
- Dictionary manager
- Omogoča dostop do sistemskega kataloga
- Upravlja s sistemskim katalogom
- Predstavljena je bila tipično, splošna struktura
- Posamezni SUPB imajo lahko nekoliko drugačno zasnovo, vsekakor pa lahko za iste komponente/koncepte uporabljajo druge izraze
- Oracle, IBM DB2 in MS SQL bomo spoznali preko vabljenih predavanj

