Návrat na detail prednášky / Stiahnuť prednášku / Ekonomická univerzita / Podnikovohospodárska Fakulta / Infotmatika
Prednáška 7 (inf7.doc)
EKONOMICKÁ UNIVERZITA V BRATISLAVE
PODNIKOVOHOSPODÁRSKA FAKULTA KOŠICE
Tajovského 13, 041 30 Košice
Katedra hospodárskej informatiky a matematiky
Databázové systémy
Dátové modely
Dáta predstavujú základ všetkých IS. Slúžia na zobrazenie reality. Aby bolo zobrazenie spoľahlivé a presné musí sa im venovať dostatočná pozornosť. Pri procese výstavby databázy sa najčastejšie používa Dátový model IS.
Pri dátovom modelovaní sa používajú diagramy dátových štruktúr v podobe entito relačných diagramov – ERD. Väzby v ERD môžu mať rôznu KARDINALITU – vzájomný počet možných výskytov entít spojených touto väzbou. Môže byť 1:1, 1:N a N:M.
Väzba môže byť:
- nepodmienená – nemusí vždy existovať výskyt entít v danej triede entít ( označenie prázdnym krúžkom)
- podmienená – existuje výskyt určitých entít za podmienky existencie výskytu inej entity ( označenie plným krúžkom)
Diagrami sa kreslia pre triedy entít – ŠTUDENT v obdĺžniku reprezentuje všetkých študentov. Jeden študent je potom výskytom v danej entite.
Hierarchický dátový model
predstavuje dáta ako množinu relácií 1:1 alebo 1:N. Vždy sa jedná o vzťah nadriadený – podriadený (vlastník – člen). Dátový model ODBYTU: Zákazník - Objednávka – Položka – Výrobok.
Sieťový dátový model
reprezentuje dáta ako množinu záznamov (entít) a párových vzťahov medzi nimi, ktoré môžu mať kardinalitu 1:1, 1:N, N:M. Sieťový model môže obsahovať cyklus a slučku.
Relačný dátový model
Na zobrazovanie dát požíva tabuľku. Relačná databáza je taká databáza, ktorú užívateľ vníma ako sústavu v čase sa meniacich normalizovaných tabuliek s usporiadanými stĺpcami.
Každá tabuľka je usporiadanie riadkov a stĺpcov, ktorá reprezentuje určitý typ entity a každý riadok v tejto tabuľke je potom jeden výskyt daného typu entity. Stĺpce potom predstavujú jednotlivé sledované vlastnosti daného typu entity.
SKUSKY(CISlO_PREDMETU, CISLO_STUDENTA, TERMIN, ZNAMKA, DATUM)
STUDENT(CISLO_STUDENTA, MENO, PRIEZVISKO)
PREDMET(CISLO_PREDMETU, NAZOV)
Vlastnosti, ktoré musia spĺňať tabuľky pre efektívne ukladanie do pamäti a ľahkú manipuláciu:
- každá tabuľka má v RDM svoj jednoznačný názov, ktorý ju v tejto databáze jednoznačne identifikuje
- každá tabuľka obsahuje len riadky rovnakého typu
- každý stĺpec tabuľky má svoj názov – meno atribútu, ktorým je identifikovaný v RDM
- na poradí stĺpcov v tabuľke nezáleží
- každý stĺpec obsahuje hodnoty rovnakého atribútu, a tieto hodnoty musia byť rovnakého typu
- každý riadok tabuľky odpovedá jednému výskytu entity daného typu
- každý riadok je jednoznačne identifikovaný tzv. primárnym kľúčom
- na poradí riadkov nezáleží
- všetky hodnoty v danom riadku sú jednoznačne a plne závislé na primárnom kľúči – požiadavka normalizácie
- každé políčko tabuľky, pokiaľ je obsadené, musí obsahovať iba elementárnu hodnotu príslušnej domény, tzn. neopakujúcu sa skupinu hodnôt. Kľúčové hodnoty musia byť vždy obsadené, tzn. nesmú obsahovať neznámu hodnotu.
Celý RDM je tvorený sústavou tabuliek majúcich vyššie uvedené vlastnosti.
K tomu, aby sme mali zaručenú integritu RDM, tzn. aby nami vytvorená sústava tabuliek splňovala požiadavky databázových systémov, musíme dôsledne riešiť problemtiku kľúčov.Sledujeme dvojakú integritu RDM:
- integritu entít – zaručuje, že každá entita bude v RDM jednoznačne identifikovaná. To je dané tým, že žiadna z veličín tvoriacich primárny kľúč nebude mať neznámu hodnotu.
- referenčnú integritu – zaručuje, že sústava tabuliek bude vzájomne prepojená s možnosťou spájať navzájom hodnoty z ľubovoľných tabuliek RDM.
Primárny kľúč – slúži k jednoznačnej identifikácii riadku v každej tabulke. Môže byť tvorený jedným alebo viacerými atribútmi. Potom hovoríme o jednoduchom alebo zloženom kľúči.
Musí spĺňať dve požiadavky:
jedinečnosť – v tabuľke sa nesmú vyskytovať dve a viac rovnakých hodnôt kľúča
minimalizácia – tzn. v prípade, že kľúč je vytvorený zložením viacerých hodnôt, potom žiadna z týchto hodnôt nemôže byť vypustená, nesmie byť porušená zásada jedinečnosti kľúča.
Cudzie kľúče - sú hodnoty umožňujúce spájať výskyt jednotlivých typov entit (riadky tabuliek), ktoré k sebe logicky prislúchajú. Tím sa zabezpečuje referenčná integrita.
Databázové systémy
Sú to systémy slúžiace na riadenie bázy dát – Data Base Manipulation Systems – DBMS. Existuje veľké množstvo DS. ( FOXPRO, dBASE, PARADOX, INFORMIX, ORACLE, ....)
O najvhodnejšom systéme použiteľnom pre náš dátový model rozhodujú nasledovné parametre:
- cena
- tvorca a jej postavenie vo svete a na domácom trhu
- typ použitého DM
- kompatibilita so štandardmi
- podpora exportu a importu súborov z iných systémov
- hardwarová podpora
- podpora OS
- spôsob a úroveň ochrany databázy
- vybavenosť nástrojmi – generátory výstupov, formulárov ..., grafika
- nároky na počítačovú pamäť a efektívnosť práce
- schopnosť práce v sieťovom prostredí – možnosť distribuovaného spracovania – a podpopra viacužívateľského prístupu
Večšina systémov sa vyvíja pod tlakom užívateľov v podstate rovnako – zhodne a vykazuje spoločné funkcie, líši sa len rozdielnym komfortom ovládania a väčšou či menšou efektívnosťou hospodárenia s počítačovými zdrojmi. Uvedené rozdiely sa prejavia v cene – uvedené kritériá nám pomáhajú optimalizovať pomer úžitok/cena.
Trojúrovňová architektúra databázy:
Táto architektúra zavádza tri úrovne dátových štruktúr(schémat, modelov):
- interná štruktúra – zaoberá sa problematikou pamäťových blokov, stránok, adries využíva funkcie a vlastnosti konkrétneho OS. Užívateľ nie je touto vrstvou zaťažovaný. Zaoberá sa ňou administrátor databázy napr. pri zmene OS.
- externá štruktúra – externý pohľad na dáta, predstavuje užívateľove ptreby a požiadavky. Jedná sa o kombináciu dvoch jazykov a to o tzv. Data Definition Language - DDL a Data Manipulation Language – DML. Pomocou nich deklaruje užívateľ svoje dátové objekty a vzťahy medzi nimi a pomocou ktorých potom rieši svoje vlastné úlohy s týmito dátami.
- koncepčná štruktúra – pohľad na dáta reprezentuje informačný obsah databázy, ktorý by mal byť nezávislý ako na fyzickom riešení tak aj na okamžitých užívateľských potrebách.
Postup pri výstavbe databázy:
- Analýza požiadaviek užívateľov – zameriava sa na potenciálnych užívateľov
- Návrh koncepčnej štruktúry databázy – ktorá by mala byť syntézov požiadaviek užívateľov a zároveň obrazom reálneho sveta. Každý model predstavuje určitú abstrakciu reálneho sveta, ktorá vedie k vytvoreniu účelového modelu.
Modelová tvorba prebieha v troch fázach:
- vnímanie reálneho sveta – poznávací proces danej reality – výsledok konečná množina entít a väzieb medzi nimi
- analýza – odhaľuje spoločné vlastnosti – atribúty entít
- klasifikácia a triedenie – upresňuje účel daného systému, vyraďujú sa nedôležité prvky
Výsledkom tohto kroku by malo byť rozhodnutie konečnej štruktúry databázy. Môže dôjsť k nasledujúcim výsledkom:
- centrálna celopodniková databáza
- dielčie objektovo orientované databázy – dáta zoskupované o určitých objektoch
- funkčne orientované databázy – zoskupované dáta do databáz ktoré budú použité pre výkon určitých funkcií. ( Napr. podnik so sériovou výrobou bude budovať funkčnú databázu (zásobovanie, výroba, odbyt a pod.), kým podnik so zakázkovou, dodávateľskou činosťou bude budovať objektové databázy (zákazka-1, zákazka-2, atď.)
- Návrh logickej štruktúry databázy – vychádza z koncepčného modelu – mal by čo najviac vyhovovať externým pohľadom budúcich užívateľov
- Návrh fyzického interného modelu databázy – je určený vlastnosťami zakúpeného systému RBD. Bežný užívateľ nemá žiadnu možnosť rozhodovať o vnútornom usporiadaní záznamov. (náročnosť na pamäť, efektivitu práce ......)
- Implementácia banky dát – zahrňuje jej inštaláciu tzn. oživenie SRBD na konkrétnom počítačovom systéme. Úkon určený pre administrátora.
- Prvotné naplnenie databázy údajmi – kritický moment, zavedenie veľkého objemu dát do počítača
Niekoľko možností:
- dáta sú už v elektronickej forme, jedná sa len o ich konverziu
- špeciálny zber dát v realite – nebezpečie nekonzistencie -neaktuálnosť údajov – rieši sa zmrazením a následnou aktualizáciou pri rozbehu databázy.
Pri vykonávaní tejto etapy musí byť zabezpečené vkladanie správnych dát. (nesprávnosťou – nefunkčnosť DB pri spustení - vysoké náklady na odstránenie)
- Overenie funkcie databázy a príprava užívateľov – testovanie najskôr základných funkcií a následne rozširujeme spektrum funkcií. Súčasne sa prevádza školenie užívateľov. V tejto etape je kritická sociólogicko – psychologická bariéra prechodu na nový štýl práce.
- Prevádzka databanky a jej ďalší rozvoj – po plnom rozbehu databanky nastáva sledovanie chodu a odhaľovanie chyb a nedostatkov a ich odstraňovanie.
Správa databázy
Administrátor databázy:
Je dôležitým prvkom, ktorého funkcie sú:
- definovanie koncepčnéj schémy – rozhodovanie o tom aké entity a v akých reláciách budú uložené v databáze, určenie stupňa integrity a komplexnosti ...
- definovanie internej schémy – určenie potrebných vlastností SRBD
- styk s užívateľom – pomoc užívateľom pri definovaní jeho požiadaviek
- definovanie bezpečnostných a integritných opatrení – riadenie práce užívateľov formou pokynou a smerníc
- vytváranie záložných kópií –použitých napr. pri havárii systému
- sledovanie prevádzky databázy – odhaľovanie chýb ...
- ďalší rozvoj databázy – uspokojovanie ďalších informačných potrieb podniku
Dátový slovník a adresár
Je hlavným pomocníkom administrátora, projektantov i koncových užívateľov pri práci s databázou.
Dátový slovník – obsahuje definície dátových položiek, viet, súborov a ostatných dátových objektov
Dátový adresár – obsahuje informácie kde sú jednotlivé dáta uložené, indexové súbory umožňujúce efektívny prístup k údajom. V relačných databázových systémoch sa nazýva tento adresár – systémový katalóg.
Distribuované databázy
Je to vlastne jedna logická databáza, ktorá je rozmiestnená fyzicky na viac počítačov spojených spolu dátovou komunikačnou sieťou. Je potrebné rozlišovať distribuovanú a decentralizovanú databázu, pretože decentralizovaná databáza je taktiež rozmiestnená na počítačoch v rôznych miestach ale tieto nie sú prepojené dátovou komunikačnou sieťou. Decentralizovaná databáza sa považuje za skupinu nezávislých databáz.
Pri výstavbe DDB postupujeme dvomi spôsobmi:
- Návrh a implementácia DDB zhora dolu ako nový celok s kompaktonou uzavrenou architektúrou.
- Spojiť už existujúce lokálne (decentralizované) databázy do jedného logického celku postupom zdola hore.
Výhody a nevýhody DDB:
- Lokálna transparencia – užívateľ nepotrebuje vedieť kde sa dáta nachádzajú, systém sám automaticky zaistí dodanie dát užívateľovi
- Zvýšená spoľahlivosť – v prípade zrútenia centrálnej databázy je databáza nedostupná pre všetkých užívateľov, v distribuovanom systéme pri zrútení niektorej z databáz dôjde len k k redukci funkcií.
- Vyššia zodpovednosť za dáta – dáta sú uložené u osoby ktorá za ne zodpovedá. Pocit užívateľa – vlastné dáta.
- Modulárny rast systému – možnosť jednoduchšieho pripojenia novej lokality. Pri práci centralizovanej databázy by muselo dôjsť k odpojeniu užívateľov.
- Menšie náklady na komunikáciu – v porovnaní s centrálnym systémom, predpokladá sa že väčšina transakcií sa prevádza s lokálnymi dátami, tým sa zníži záťaž komunikačného systému.
- Rychlejšia odozva – súvisí s predchádzajúcim bodom
- Nákladnejší a zložitejší software – pretože pri lokálnych SRBD je potrebný aj globálny SRBD
- Vyššie prevádzkové náklady – potrebná výmena riadiacich informácií a doplňujúcich výpočtov.
- Zložitejšia kontrola dátovej integrity – v dôsledku viacstupňovitosti SRBD
- Nebezpečie pomalej odozvy – v prípade zlej distribúcie dát, alebo pokiaľ všetci potrebujú všetko.
Ing. Cyril Závadský Prednášky Informatika Strana 2 z celkového počtu 5 strán