1 / 43

Databázové systémy

Databázové systémy. História vývoja databázových systémov Databázová terminológia - základné pojmy Príklady systémov riadenia bázy dát Charakteristika, základné vlastnosti  databázových systémov Zásady projektovania databázovej aplikácie. Obsah. EXIT.

Download Presentation

Databázové systémy

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Databázové systémy

  2. História vývoja databázových systémov Databázová terminológia - základné pojmy Príklady systémov riadenia bázy dát Charakteristika, základné vlastnosti  databázových systémov Zásady projektovania databázovej aplikácie Obsah EXIT

  3. História vývoja databázových systémov Databázová terminológia - základné pojmy Príklady systémov riadenia bázy dát Charakteristika, základné vlastnosti  databázových systémov Zásady projektovania databázovej aplikácie Systémy súborov Hierarchické a sieťové databázy Relačné databázy Objektovo - orientované databázy Obsah EXIT

  4. Systémy súborov V počiatočnej ére počítačov obsluhoval programátor externé pamäte na nízkej úrovni - v jazyku riadiacej jednotky externej pamäte. S výnimkou perzistencie si všetky ostatné požiadavky kladené na databázové systémy musel zabezpečovať sám. Väčinou sa pravdaže od nich upúšťalo. Vylepšenie priniesli operačné systémy (OS) so systémami súborov (file system- príklad FAT16, NTFS) . Systém umožnil "fyzickú" nezávislosť od konkrétneho typu externej pamäte. Tvorca aplikácie programoval na úrovni vyššieho programovacieho jazyka. Prvé operačné systémy boli dávkovo orientované a jednoužívateľské. Narábali s pomalými externými pamäťami so sekvenčným prístupom (magnetické bubny a pásky). Modernejšie OS priniesli interaktívnu prácu viacerých používateľov a vďaka pokroku v hardwari využívali rýchlejšie externé pamäte s "priamym" prístupom (disky). Pre pohodlnejšiu a efektívnejšiu prácu s perzistentnými údajmi sa dodávali špecializované knižničné funkcie, umožňujúce definovanie a prístup na úrovni záznamov (record), ich triedenie, tvorbu indexových súborov a pod. MENU EXIT Next

  5. Systémy súborov Systémy súborov spolu s databázovými knižničnými funkciami zabezpečili splnenie časti požiadaviek na databázové systémy: • správa externej pamäte - opračný systém obsluhoval vyrovnávacie pamäte (buffer) na čítanie, resp. zápis do externej pamäte (čítanie, resp. zápis sa vykonávali vo vhodnom čase, napríklad pri naplnení vyrovnávacích pamätí, čím sa znižoval počet operácií s externou pamäťou); indexové súbory ďalej zefektívnili vyhľadávanie záznamov v súbore; • konkurentnosť - pri čítaní resp. zapisovaní záznamu sa uzamkol súbor pred iným používateľom; chýbalo však "jemnejšie" uzamykanie na úrovni záznamov; • bezpečnosť - každému súboru bolo možné nastaviť prístupové práva; • spoľahlivosť - súbory sa dali zálohovať do inej externej pamäte; systémy však neposkytovali transakčný mechanizmus. MENU EXIT Back Next

  6. Systémy súborov Systémy súborov s databázovými funkciami nezahŕňali dotazovací jazyk vysokej úrovne. Sumárne povedané, prvá generácia databázových systémov spĺňala iba časť deklarovaných požiadaviek. Ich prípadné komplexnejšie riešenie ostávalo na pleciach programátora. MENU EXIT Back Next theme

  7. Hierarchické a sieťové databázy Koncom šesťdesiatych a začiatkom sedemdesiatych rokov vznikli prvé systémy, ponúkajúce úplnejšie riešenie databázových požiadaviek. Dostali názov systémy riadenia bázy dát (SRDB - anglicky -database management systems - DBMS). DBMS umožnili, navyše oproti systémom súborov, konkurentnú prácu na úrovni záznamov, transakčný mechanizmus, prostriedky na zálohovanie a autorizáciu, nastavovanie parametrov pre správu externej pamäte. Komerčné ODBMS prvého typu sa objavili na trhu v druhej polovici osemdesiatych rokov, kým rozšírené relačné DBMS väčšinou až v deväťdesiatych rokoch. Produkty oboch typov vznikali spočiatku "živelne" - bez existencie prijatého štandardu. Práce na štandardizácii sa odštartovali až začiatkom deväťdesiatych rokov. V rámci zoskupenia objektovo - orientovaných firiem OMG (Object management group) bol prvý štandard pod názvom ODMG - 93 vytvorený v roku 1993. Štandardizácia ODBMS druhého typu prebieha na pôde ANSI: rozširovaním dotazovacieho jazyka SQL2 (SQL - 92). MENU EXIT Next theme

  8. Relačné databázy Tretiu generáciu databázobvých systémov, ktorá oproti predchádzajúcej priniesla kvalitatívny posun, tvoria relačné databázy. Ich teoretický základ položil už v roku 1970 Codd. Vznik priemyselne použiteľných systémov však vyžadoval ďalšie rozpracovanie teoretického základu spolu s pokrokom v hardwari. Komerčné systémy sa objavili až v osemdesiatych rokoch. Medzi najvýznamnejšie patrili Oracle, DB2, Informix, Ingres, Progress a iné. Relačné databázové systémy zjednodušili tvorbu a využívanie aplikácií. Narábanie s databázou nadobudlo charakter práce s obyčajnými tabuľkami. Riadky tabuľky predstavovali záznamy jedného typu a stĺpce ich atribúty. Tabuľky medzi sebou odkazovali pomocou stĺpcou s rovnakými menami (vo všeobecnosti pomocou stĺpcov vyhovujúcich definovanej relácii). MENU EXIT Next

  9. Relačné databázy Relačné databázy majú navyše aj svoje teoretické zázemie v relačnej algebre. Na tabuľku sa dá pozerať ako na podmnožinu karteziánskeho súčinu hodnôt atribútov, čo zodpovedá matematickému pojmu relácia. Nad reláciami sa môžu vykonávať tradičné množinové operácie: zjednotenie, prienik, projekcia, selekcia, karteziánsky súčin a pod. Relačné DBMS zachovali databázové charakteristiky predchádzajúcej generácie (perzistencia, správa externej pamäte, konkurentnosť, bezpečnosť, spoľahlivosť). Pridali k nim ešte štruktúrovaný dotazovací jazyk SQL (structured query language), odbremeňujúci od poznania fyzického uloženia dát v sekundárnych pamätiach. Tento štruktúrovaný dotazovací jazyk bol štandarizovaný inštitúciami ISO aj ANSI. Z programátorského hľadiska priniesli tiež relačné DBMS softwarové prostiredky vyššej úrovne: na navrhovanie a obsluhovanie interaktívnych obrazoviek, tvorbu tlačových zostáv a pod. MENU EXIT Back Next theme

  10. Objektovo - orientované databázy Objektovo orientované DBMS (ďalej ODBMS) priniesli oproti relačným DBMS (RDBMS) bohatšie dátové aj procedurálne modelovanie. Prejavuje sa naledujúcimi charakteristikami: • Spájanie príbuzných dátODBMS umožňujú prirodzenejšiu reprezentáciu zložitejších dátových štruktúr (pri grafickej dokumentácii sa napríklad využívajú vektory, pri riadiacich systémoch robotov matice a pod.). Dáta, ktoré navzájom súvisia v realite, sa spolu ("blízko seba") uchovávajú aj v externých pamätiach. • Spájanie dát s funkciamiODBMS poskytujú tradičné objektovo - orientované črty: spájanie dát s funkciami, ukrývanie dát, používateľsky definovateľné typy, typové dedenie, polymorfizmus a pod. • Spájanie databázového aprogramovacieho jazykaODBMS, na rozdiel od SQL relačných DBMS, ponúkajú výpočtovo úplný jazyk. Snažia sa tiež integrovať databázové prostredia s programovacím prostredím. MENU EXIT Next

  11. Objektovo - orientované databázy Na druhej strane sa v porovnaní s RDBMS znížila jednoduchosť a matematická precíznosť. Od novej generácie DBMS sa tiež očakáva väčšia podpora distribuovanosti. Táto požiadavka (podobne ako reprezentácia multimediálnych dát alebo verziovosť) je však pomerne nezávislá od zvolenej paradigmy. MENU EXIT Back

  12. História vývoja databázových systémov Databázová terminológia - základné pojmy Príklady systémov riadenia bázy dát Charakteristika, základné vlastnosti  databázových systémov Zásady projektovania databázovej aplikácie Databázové spracovanie dát Báza dát Schéma Adresár dát Slovník dát Systém riadenia báze dát Databázový systém Správca bázy dát Správca SRBD Aplikačné programové vybavenie Obsah EXIT

  13. Databázové spracovanie dát Dáta, s ktorými pracujú aplikačné programy nie sú vzájomne izolované v samostatných súboroch, ale sú centralizované v jednom zdroji dát - v báze dát.(Viď. FireBird, Access) Databázový systém,  sa skladá z bázy dát a zo systému riadenia báze dát (skrátka - SRBD). Schéma databázového systému: MENU EXIT Next theme

  14. Báza dát (Database) Báza dát (Database) predstavuje dáta, ktoré sú uložené na pamäťovom médiu a udržiavané a spracovávané prostredníctvom SRBD. Ich štruktúra je definovaná schémou bázy dát. MENU EXIT Next theme

  15. Schéma (Schema) Schéma (Schema) predstavuje opis štruktúry bázy dát uložený v adresári dát, vytvorený pomocou jazyka pre opis (definíciu) dát. Schéma definuje jednotlivé dátové položky, databázové vety a logické vzťahy medzi týmito vetami. Schéma predstavuje opis logickej a fyzickej štruktúry dát. ( Viď. Visual Fox Pro) MENU EXIT Next theme

  16. Adresár dát (Address Dictionary) Adresár dát (Address Dictionary) súbor vytvorený a udržiavaný SRBD. Obsahuje predovšetkým opis štruktúry bázy dát vytvorený schémou a subschémami.Okrem týchto základných prvkov obsahuje aj opis ďalších objektov napr. opis štruktúr pomocných dát, štandartné zdrojové texty pre aplikačné programy, opis máp obrazoviek (Viď. Visual Fox Pro) MENU EXIT Next theme

  17. Slovník dát (Data Dictionary) Slovník dát (Data Dictionary) súbor vytvorený a udržiavaný programovým vybavením SRBD. Obsahuje dáta, ktoré si na základe vlastnej potreby určí používateľ - správca databázového systému. Tieto dáta sa využívajú na podporu projektovania, programovania a prevádzky DBS. Dátový slovník uchováva informácie o databázach. Predstavuje spôsob správy všetkých dátových elementov, ktoré vytvárajú aplikáciu. Obsahuje informácie o názvoch súborov, mená, typy, význam a veľkosť polí, overovacie a indexové výrazy. MENU EXIT Next theme

  18. Systém riadenia báze dát (Database Management System) Systém riadenia báze dát (Database Management System) programový systém, ktorý umožňuje vytvorenie, údržbu a používanie bázy dát, adresára dát a slovníka dát. SRBD poskytuje aplikačným programom služby, ako sú ukladanie dát do BD, výber dát z BD a aktualizáciu dát. MENU EXIT Next theme

  19. Databázový systém (Database System)systém tvorený troma objektmi: BD, schémou bázy dát (viď. Visual Fox Pro ) uloženou v adresári BD a SRBD. Správca (administrátor) bázy dát (Data Base Administrator) osoba zodpovedná za návrh, vývoj, zabezpečenie, údržbu a používanie BD. Správca (administrátor) SRBD osoba zodpovedná za činnosť a používanie SRBD. Aplikačné programové vybavenie systém aplikačných programov vytvárajúcich a používajúcich dáta v počítači. MENU EXIT

  20. História vývoja databázových systémov Databázová terminológia - základné pojmy Príklady systémov riadenia bázy dát Charakteristika, základné vlastnosti  databázových systémov Zásady projektovania databázovej aplikácie Rozdelenie: Zobraziť diagram Obsah EXIT

  21. MENU EXIT

  22. História vývoja databázových systémov Databázová terminológia - základné pojmy Príklady systémov riadenia bázy dát Charakteristika, základné vlastnosti  databázových systémov Zásady projektovania databázovej aplikácie Základne vlastnosti 1. Perzistencia 2. Správa externej pamäte 3. Konkurentnosť 4. Bezpečnosť 5. Spoľahlivosť 6. Dotazovanie Obsah EXIT

  23. Perzistencia Perzistencia (travnie, stálosť)- životnosť dát nie je ohraničená časom vykonávania programu - t.j. dáta existujú aj po ukončení programu, ktorý s nimi manipuluje. Môžu sa spracovávať opätovným vykonaním daného programu, resp. iným programom. Uchovávajú sa preto v externých (sekundárnych) pamätiach: disky, magnetické pásky,  a iné dátové nosiče. MENU EXIT Next theme

  24. Správa externej pamäte Správa externej pamäte - väčšina dát sa uchováva v externých pamätiach. Ak chce program aktualizovať niektoré údaje, musí ich najprv načítať z externej do operačnej pamäte, tam ich spracovať a potom opätovne zapísať do externej pamäte. Operácie na sprístupňvanie externej pamäte trvajú rádovo dlhšie ako operácie vykonávané v operačnej pamäti. Databázový systém musí preto poskytovať prostriedky na zefektívnenie práce s externou pamäťou. MENU EXIT Next theme

  25. Konkurentnosť Konkurentnosť - s uchovávanými dátami môže súčasne pracovať viac používateľov. Systém musí zabezpečiť riešenie potenciálnych konfliktov, ak sa pokúsi s rovnakými údajmi naraz manipulovať niekoľko používateľov. MENU EXIT Next theme

  26. Bezpečnosť Bezpečnosť - databázové systémy sa často používajú v "citlivých" oblastiach, ako napríklad bankové systémy, registre obyvateľstva a pod. Systém musí byť preto chránený pred nepovoleným prístupom. Najlepšou ochranou sú vo všeobecnosti organizačné opatrenia v organizácii, kde sa systém prevádzkuje. Databázový systém však musí tieto opatrenia podporiť: umožniť identifikáciu používateľa a priradiť mu dáta a programy, ku ktorým má prístup (tzv. autorizácia). MENU EXIT Next theme

  27. Spoľahlivosť Spoľahlivosť - keďže uchovávané dáta bývajú často veľmi dôležité, nesmie dôjsť k ich strate alebo poškodeniu pri zlyhaní hardwaru alebo softwaru. Ochrana pred zlyhaním hardwaru (hard crash) sa zabezpečuje predovšetkým harwarovými prostriedkami. Databázový systém ju podporuje iba čiastočne - prostriedkami na zálohovanie dát do záložnej externej pamäte. Výraznejšiu ochranu poskytuje pred zlyhaním softwaru (soft crash). Zahŕňa predovšetkým transakčný mechanizmus, umožňujúci zachovanie konzistentnosti datbázy. Transakciu tvorí skupina príkazov definovaná používateľom, ktorá sa buď vykoná celá, alebo sa nevykoná vôbec. V prípade chyby počas vykonávania transakcie, systém automaticky zabezpečí návrat do konzistentného stavu pred jej začiatkom. MENU EXIT Next theme

  28. Dotazovanie Dotazovanie - na bežnú prácu s uchovávanými dátami využívajú koneční používateľia aplikačné programy, vytvorené programátormi. Používatelia však častokrát potrebujú vyhľadávať údaje v báze dát podľa ad - hoc kritérií. Tieto kritériá nebývajú známe vopred a sú zvyčajne natoľko jednoduché a dočasné, že sa pre ne neoplatí vytvárať špeciálne programy. Databázový systém preto má poskytovať jazyk veľmi vysokej úrovne, ktorý dovolí laickému používateľovi, so znalosťou základnej štruktúry bázy dát, vyhľadávanie dát podľa jednoduchých kritérií. Tento deklaratívny dotazovací jazyk je štandardizovaný, aby sa dal využiť v rôznych databázových systémoch. MENU EXIT

  29. História vývoja databázových systémov Databázová terminológia - základné pojmy Príklady systémov riadenia bázy dát Charakteristika, základné vlastnosti  databázových systémov Zásady projektovania databázovej aplikácie Etapy vývoja databázovej aplikácie 1. Identifikácia úlohy 2. Načrtnutie toku úloh 3. Identifikácia dátových prvkov 4. Usporiadanie dát 5. Návrh prototypu a používateľského rozhrania 6. Vytvorenie aplikácie 7. Testovanie aplikácie Obsah EXIT

  30. Etapy vývoja databázovej aplikácie 1. Identifikácia úlohyUrčíme rozsah, veľkosť údajov, ktoré chceme spracovať a spôsob ich použitia, definujeme vstupy, výstupy a úlohy. Spíšeme všetky hlavné úlohy, ktoré by mala aplikácia vykonávať. Napr. hlavnými úlohami sú vytvorenie objednávky pre zákazníka, pridanie novej objednávky, informácie o autoroch kníh, vyhľadávanie zadaných dát,.a ďalšie. Hlavná úloha popisuje činnosť. Sú aj podúlohy, napr. výpočet celkovej ceny vytvorenej objednávky. MENU EXIT Next theme

  31. Etapy vývoja databázovej aplikácie 2. Načrtnutie toku úlohZoradíme hlavné úlohy do tematických skupín. Napr. úlohy, ktoré sa týkajú len zamestnancov, alebo úlohy, ktoré sa týkajú len predaja. Spresníme podmienky, za ktorých môžu nastať alebo existovať ( napr. dátum uzavretia zmluvy, existencia výrobku, má zamestnanec dieťa, atď. ). Úlohy logicky prepojíme podľa toho, čo sa bude vykonávať skôr a čo potom. Zakreslíme si diagram prepojení medzi úlohami, z čoho neskôr vyplynie väzba medzi formulármi. MENU EXIT Next theme

  32. Etapy vývoja databázovej aplikácie 3. Identifikácia dátových prvkovVytvoríme zoznam dát pre každú úlohu a upresníme operácie, ktoré sa majú nad dátami vykonávať. Napr. pre vytvorenie objednávky pre zákazníka potrebujeme tieto dáta: kód objednávky, kto objednáva, čo objednáva, cena výrobku, a iné. Určíme, ktoré dáta sú vstupné ( cena výrobku), a ktoré sú výstupné ( cena celej objednávky) Každý údaj  toho zoznamu patrí do akéhosi predmetu (tabuľky Napr. kód objednávky bude zrejme opísaný  v predmete „objednávky“, údaj - kto objednáva - bude špecifikovaný v predmete „zákazníci“, čo sa objednáva bude asi opísané v predmete „tovar“, atď. Operácie nad dátami môžu byť napr. aktualizácia dát (napr. došlo k zmene mena zákazníka), vymazanie napr. už zaplatenej faktúry, pridanie novej objednávky, spočítanie celkovej ceny objednávky, ktorá sa nemusí ukladať do databázy, ale sa len vytlačí. MENU EXIT Next theme

  33. Etapy vývoja databázovej aplikácie 4. Usporiadanie dátPozbierané informácie zoradíme do okruhov, tabuliek (normalizácia). Treba dbať nato, aby dupilcita údajov sa nevyskytla a aby sme nevymazali dôležité údaje.Určíme názvy a typ položiek jednotlivých tabuliek, musíme dbať nato, aby sme nepoužívali redundantné položky, také položky, ktoré už figurujú v inej tabuľke. Zistíme, či v tabuľke existuje položka, ktorá jednoznačné určuje záznam. Keď je taká položka, tak táto položka bude primárnym kľúčom tabuľky. Keď taká položka nie je v tabuľke, tak rozšírime tabuľku o jednú položku, ktorá jednoznačne určí záznam. Uložíme dáta do tabuliek (to sú tie už spomínané predmety), ktoré patria úlohám. MENU EXIT next

  34. Etapy vývoja databázovej aplikácie Napr. predmet „zákazníci“ je jedna tabuľka, predmet „objednávky“ je druhá tabuľka, kde sú uložené údaje o objednávkach. Zistíme, že ktoré výstupy z ktorých tabuliek získame. Keď pre daný výstup neexistuje vzťah medzi tabuľkami, tak takýto vzťah vytvoríme. Kontrolujeme typy vzťahov. MENU EXIT Back Next theme

  35. Etapy vývoja databázovej aplikácie 5. Návrh prototypu a používateľského rozhraniaPo vytvorení štruktúry tabuľky napodobíme „tok“ aplikácie zápisom do formulárov. Navrhneme vonkajší vzhľad  aplikácie pre používateľa a navrhneme spôsob komunikácie používateľa s aplikáciou. Vytvoríme skúšobnú bázu dát, zistíme, ktoré položky nie sú použité, či primárne kľúče boli zvolené správne. MENU EXIT Next theme

  36. Etapy vývoja databázovej aplikácie 6. Vytvorenie aplikácieU jednoduchých aplikáciách je ňou priamo prototyp. Ak je aplikácia zložitejšia, treba podľa návrhu napísať kód a formuláre, ktoré zaistia prechod z jednej úlohy do druhej úlohy a možno bude aj treba vytvoriť dialógové formuláre pre vstup od používateľa. MENU EXIT Next theme

  37. Etapy vývoja databázovej aplikácie 7. Testovanie aplikácieMali by sme otestovať každú možnosť, ktorú ponúkame. Akceptujeme opravné a zmysluplné návrhy od používateľov ( napr. odstránenie neužitočných funkcií) MENU EXIT

  38. Vyrobil: Matej Nosáľ

More Related