Databázy
(sylaby štátnic magisterského štúdia informatiky)
- Účel databáz, charakteristika DB aplikácií, trojstupňová ANSI/SPARC
architektúra, koncepčné dátové modely, navrhovanie databáz
- Entitno-relačný a relačný dátový model.
- Entitno-relačné diagramy, UML diagramy.
- Motivácia normalizácie.
- Teória navrhovania databáz
- Funkčné závislosti, Armstrongove axiómy.
- Uzáver množiny atribútov, uzáver množiny funkčných závislostí.
- Pokrytie a minimálne pokrytie množiny funkčných závislostí.
- Nadkľúče a kľúče.
- Relačné schémy, dekompozícia relačných schém, bezstratovosť
dekompozície.
- Normálne formy: 3NF, BCNF.
- Naivná dekompozícia do 3NF a BCNF.
- Dekompozícia do 3NF zachovávajúca funkčné závislosti.
- Dotazovacie jazyky
- Relácie a predikáty, dotazy, relačný kalkul, Datalog, SQL, relačná
algebra.
- Vyjadrovacia sila a vzájomné simulácie dotazovacích jazykov.
- Agregácia a rekurzia v dotazovacích jazykoch
- Grupovanie a agregácia v relačnej algebre, SQL, relačnom kalkule
a Datalogu.
- Rekurzia v relačnej algebre, SQL, relačnom kalkule a Datalogu.
- Transakcie
- Definícia transakcie, elementárne transakčné operácie, požiadavky na
transakčný systém.
- Komponenty transakčného databázového systému.
- Rozvrhy, triedy rozvrhov.
- Konflikt-sériovateľnosť, testovanie konflikt-seriovatelnosti,
view-sériovateľnosť, dvojfázové zamykanie, obnova.
- Striktné dvojfázové zamykanie, riešenie deadlockov.
- Časové pečiatky, validácia.
- Fyzická organizácia
- Fyzická algebra, zložitosť fyzických operátorov.
- Sekvenčné indexy, B stromy a B+ stromy.
- Hashovanie.
- Štruktúra hashovaného súboru: adresár, základné bloky, bloky
preplnenia.
- Rozšíriteľné hashovanie.
- Lineárne hashovanie.
- Implementácia a zložitosť vybraných fyzických operátorov
(merge-sort, nested-loop-join, ...).