Systém riadenia bázy dát

Systém riadenia bázy dát - je množina programov zabezpečujúcich definíciu dát, manipuláciu s nimi, ochranu dát, paralelné spracovanie, apod.
Základné funkcie, ktoré systém riadenia bázy dát (SRBD) musí zabezpečovať sú:
- definícia dát
- manipulácia s dátami
Ďalšie funkcie, ktoré by SRBD mal zabezpečovať sú:
- riadenie prístupu
- intergrita databázy
- obnova databáz
- paralelný prístup
- ochrana dát
- riadenie katalógov (systémové tabuľky) MBD – manager bázy dát
Definícia dát
SRBD musí zabezpečiť možnosť definovať dátové štruktúry v súlade s návrhom bázy dát. Okrem názvu, je potrebné zadať typ dát, ich veľkosť (počet bajtov, znakov,...), presnosť (v prípade číselných údajov), rozsah alebo množinu možných hodnôt či iné vlastnosti. Súčasťou SRBD je jazyk na definíciu dát (DDL).
Manipulácia s dátami
SRBD musí byť schopný zabezpečiť používateľské požiadavky na aktualizáciu dát (vkladanie dát, korekcia dát, vymazanie dát) a čítanie dát z databázy. Súčasťou SRBD je jazyk na manipuláciu s dátami (DML).
Riadenie prístupu
SRBD by mal umožniť definovať prístupové práva k dátam pre jednotlivých používateľov, alebo aplikácie.
Integrita databázy
SRBD by mal poskytovať nástroje, ktoré umožnia zabezpečiť všetky integritné obmedzenia definované pre dátový model. Okrem toho SRBD musí zabezpečiť integritu databázy v prípade porúch, ktoré sa vyskytnú pri spracovaní aplikácie.
Obnova databázy
S integritou databázy súvisí obnova stavu databázy v prípade chýb, ktorá je zabezpečená pomocou transakcií. Transakčné spracovanie musí zabezpečiť obnovu databázy v prípade chýb spracovania.
Paralelný prístup
SRBD by mal poskytovať nástroje zabezpečujúce zdielanie dát, resp. riadenie paralelného prístupu k dátam.
Ochrana dát
SRBD by mal umožniť vytvárať archívne kópie databáz a aj mechanizmy kryptovania citlivých dát tak, aby ich nebolo možné zneužiť pri neoprávnenom prístupe.
Riadenie katalógov
SRBD má spravidla v MBD informácie o schémach uložené v špeciálnych tabuľkách, pre ktoré sa zaužíval názov katalógy. Tieto katalógy obsahujú vlastne dáta o dátach (metadáta), čo sú definície objektov, integritných obmedzení ...
Okrem toho SRBD by mal mať nástroje, ktoré umožnia monitorovať výkonnosť databázy a nastavovať parametre, prípadne meniť spôsob uloženia dát a prístupových metód k dátam z hľadiska efektívnosti spracovania dát, alebo ich ochrany.

Obr. 3 1 Vzájomné väzby častí SRBD


3.1 Architektúry SRBD
Počítačové systémy, na ktorých sú prevádzkované databázové systémy je možné rozdeliť na tieto architektúry:
- centralizované
- klient/server
- distribuované.
Samotná architektúra SRBD určuje akým spôsobom bude prevádzkovaná. Prístup aplikácií ak BD sa realizuje cez SRBD nasledovným spôsobom:


Obr. 3. 2 Rozdelenie služieb do vrstiev


3.1.1 Centralizovaná architektúra
V centralizovanom systéme sa na hlavnom hostiteľskom počítači spracovávajú všetky programy, to znamená, že okrem SRBD na tomto počítači beží komunikačný software (obr. 3.3), ale aj aplikácie patriace k danému informačnému systému. Veľké množstvo súčasných informačných systémov, ale aj veľké mnžstvo inofrmačných systémov zdedených z minulosti (Legacy Systems), pracuje v centralizovanej architektúre, ktorá je charakterizovaná nasledovne:
- centralizovaný s viacpoužívateľským spracovaním - keď celá inteligencia je sústredená na centrálnom počítači
- interakciou pomocou terminálu – keď používatelia komunikujú s hlavným počítačom cez počítačovú sieť



















Obr. 3.3 Centralizovaná architektúra DBS
Základnou výhodou centralizovaných systémov je centrálna bezpečnosť a centralizované umiestnenie veľkého rozsahu dát. Nevýhody súvisia s veľkými nákladmi na zakúpenie a údržbu týchto systémov.
Je potrebné si uvedomiť, že v centralizovanej architektúre používateľ komunikuje s informačným systémom (s bázou dát) pomocou terminálu, na ktorom sa mu zobrazujú príslušné obrazovky vyslané z centrálneho počítača (obr. 3.4 ). Aplikácia aj SRBD komunikujú spolu cez zdielanú oblasť pamäti, alebo cez pamäťové oblasti, ktoré sú pridelené aplikácii a sú riadené operačným systémom.


Obr. 3.4 Spracovanie databázy na centralizovanom systéme

3.1.2 Architektúra klient/server
Architektúra klient/server je v súčasnosti jednou z architektúr, ktorú podporujú SRBD a ktorá sa často využía v Informačných systémoch.. Základným predpokladom je, že aplikácia beží v počítačovej sieti a funkcionalita aplikácie je rozdelená na dve časti:
- klient
- server
V základmom modeli klinet/server SRBD beží na serveri a čaká na požiadavky prichádzajúce od jednotlivých klientov. V prípade príchodu nejakej požiadavky od klienta sa požiadavka začne spracovávať v SRBD a výsledok spracovania je odoslaný klientovi. Každá požiadavka od klienta vytvorí nový proces servera, ktorý s ostatnými procesmi zdieľajú procesor počítača a jeho disky. V niektorých prípadoch sa stretávame s variantou, keď klientská aj serverovská aplikácia bežia na tom istom počítači. V súčasných databázových systémoch sa komunikácia medzi klientom a serverom uskutočňuje pomocou jazyka SRBD (napr. SQL, 4GL, ...) keď požiadavka v aplikácii je formulovaná v jazyku SQL, alebo transformovaná do jazyka SQL a následne vyslaná na server. Server (SRBD) kontroluje syntaktickú správnosť požiadavky, prístupové práva, použité typy dát, integritné obmedzenia, optimalizuje vyhodnotenie požiadavky a pod. Výsledok spracovania je odoslaný klientskej aplikácii, ktorá ho môže spracovať prezentačným spôsobom. Prevádzka systému sa podstatne zníži, ak by sme ju porovnávali so súborovým spracovaním (súborovou architektúrou).
Architektúra klient/server odľahčuje SRBD od prevádzky aplikačných programov a funkcií prezentačného softwaru, ktoré bežia na klientskom počítači, bez toho aby ovplyvňovali SRBD.

Obr. 3.5 Systém klient/server

3.1.3 Distribuovaná architektúra

Distribuovaný databázový systém je množina uzlov počítačovej siete, navzájom prepojených v komunikačnej sieti pričom:
1. Každý z uzlov je samostatný databázový systém, ale
2. Tieto uzly navzájom spolupracujú tak, že z každého uzla je možné sprístupniť údaje uložené na inom uzle presne tak, akoby boli umiestnené na vlastnom uzle.

Samotná databáza je množina navzájom prepojených databáz, ktoré sú umiestnené na rôznych uzloch tak, že užívateľ s nimi manipuluje akoby boli umiestnené v centralizovanej databáze.
O celé riadenie databázy sa stará Distribuovaný systém riadenia bázy dát, ktorý spolupracuje s lokálnymi systémami riadenia databáz