Detail předmětu

Databáze

FP-dataPAk. rok: 2026/2027

Předmět seznamuje studenty s principy návrhu, správy a bezpečnosti databázových systémů. Pokrývá široké spektrum témat od modelování dat a relačního modelu přes jazyk SQL, transakce a optimalizaci dotazů až po distribuované a NoSQL databáze. Studenti si osvojí teoretické základy i praktické dovednosti, včetně tvorby ER diagramů, normalizace tabulek, implementace bezpečnostních opatření a práce s moderními databázovými nástroji. Kurz reflektuje aktuální trendy v oblasti databází, včetně cloudových řešení a Big Data.

Jazyk výuky

čeština

Počet kreditů

6

Zajišťuje ústav

Vstupní znalosti

Předpokládají se následující vstupní znalosti:

Základní znalosti z oblasti informatiky a programování, znalosti algoritmů a datových struktur a základní znalosti z matematiky, zejména logiky a množinové teorie.

Pravidla hodnocení a ukončení předmětu

Podmínky zápočtu:
Student musí během semestru získat alespoň 50% bodů, tedy 50 bodů ze 100.
Plagiátorství nebo nedovolená spolupráce na projektech či testech povede k neudělení zápočtu a může být zahájeno disciplinární řízení.
Půlsemestrální test: Vypracování praktického úkolu dle zadání (40 bodů). Minimální počet bodů je 20.
Projekt: Jeden projekt dle zadání s příslušnou dokumentací (60 bodů). Minimální počet bodů je 30.
Zadání je představeno na třetí přednášce.
Podmínky zkoušky:
Závěrečná zkouška: Vypracování praktického příkladu a ústní přezkoušení. Ze zápočtu se žádné body nepřevádí ke zkoušce.
Praktický test: Sestrojení dotazu, který vrátí požadovanou datovou sadu.
Hodnocení zkoušky je v souladu s klasifikací ECTS.
Zakončení předmětu pro studenty s individuálním studiem.
Podmínky zápočtu:
Vypracování projektu dle zadání s příslušnou dokumentací. Zadání je představeno na třetí přednášce. Minimálně 50 bodů ze 100.
Podmínky zkoušky:
Závěrečná zkouška: Ústní přezkoušení. Hodnocení zkoušky je v souladu s klasifikací ECTS.
Pro ISP jsou podmínky identické, vyjma případné povinné účasti ve výuce. Termíny pro zakončení předmětu se domlouvají individuálně dle podmínek schválených v ISP.

Učební cíle

Studenti v rámci předmětu získají znalosti o různých typech databázových systémů, modelování dat, relačním modelu, SQL, transakcích, indexování a optimalizaci dotazů, zotavení po havárii, distribuovaných a NoSQL databázích, a bezpečnosti databází. Naučí se také prakticky pracovat s databázovými systémy, vytvářet ER diagramy, normalizovat tabulky, implementovat transakce a bezpečnostní opatření, a optimalizovat dotazy.

Studijní opory

Studijní opory jsou vystaveny v e-learningu.

Základní literatura

Begg, C., Holowczak, R., & Connolly, T. (2009). Mistrovství - Databáze: Profesionální průvodce tvorbou efektivních databází. Praha: Computer Press. ISBN 978-80-251-2328-71. (CS)
Coronel, C., Morris, S. (2018). Database Systems: Design, Implementation, & Management. 13th ed. Boston: Cengage Learning. ISBN 978-1-337-56833-21. (EN)
Harrison, G. (2019). Next Generation Databases: NoSQL, NewSQL, and Big Data. 2nd ed. New York: Apress. ISBN 978-1-484-23994-11. (EN)
Laurenčík, M. (2018). SQL: Podrobný průvodce uživatele. Praha: Grada Publishing. ISBN 978-80-271-0774-21. (CS)

Doporučená literatura

Davidson, S. B., & Seltzer, M. I. (2019). Readings in Database Systems. 5th ed. Cambridge: MIT Press. ISBN 978-0-262-02983-01. (EN)
Grolinger, K., & Capretz, M. A. M. (2019). Big Data: Concepts, Methodologies, Tools, and Applications. Hershey: IGI Global. ISBN 978-1-522-57020-11. (EN)
Stephens, R., Plew, R., & Jones, A. D. (2010). Naučte se SQL za 28 dní. Brno: Computer Press. ISBN 978-80-251-2700-11. (CS)

Zařazení předmětu ve studijních plánech

  • Program BAK-MIn bakalářský 1 ročník, letní semestr, povinný

Typ (způsob) výuky

 

Přednáška

26 hod., nepovinná

Vyučující / Lektor

Osnova

1. Úvod do databází (historie a význam databází, základní pojmy a terminologie, typy databázových systémů)
2. Modelování dat (konceptuální modelování, entitně-relační model (ER model), příklady a cvičení)
3. Relační model (relační algebra a relační kalkul, relační schéma a integritní omezení, transformace ER modelu do relačního modelu)
4. Normalizace databází (normální formy, proces normalizace, denormalizace a její důsledky)
5. SQL - Jazyk pro práci s databázemi (základy SQL, DDL (Data Definition Language), DML (Data Manipulation Language))
6. Pokročilé SQL (složitější dotazy, agregační funkce, poddotazy a pohledy)
7. Pokročilé SQL (uložené procedury, kurzory, transakce)
8. Indexování a optimalizace dotazů (typy indexů, vytváření a správa indexů, optimalizace dotazů)
9. Zotavení po havárii (metody zotavení, logování a zálohování, obnova databáze)
10. Distribuované databáze (architektura distribuovaných databází, výzvy a řešení, příklady distribuovaných systémů)
11. NoSQL databáze (typy NoSQL databází, výhody a nevýhody, příklady použití)
12. Bezpečnost databází (hrozby a zranitelnosti, ochrana dat a přístupová práva, šifrování a audit)
13. Trendy a budoucnost databázových systémů (nové technologie a přístupy, Big Data a analytika, cloudové databáze)

Cvičení

26 hod., povinná

Vyučující / Lektor

Osnova

1. Úvodní cvičení (seznámení s prostředím, instalace a konfigurace databázového systému)
2. Modelování dat (tvorba ER diagramů, příklady modelování reálných situací)
3. Relační model (transformace ER modelu do relačního schématu, příklady a cvičení)
4. Normalizace databází (normalizace tabulek, příklady normalizace a denormalizace)
5. Základy SQL (vytváření tabulek a definice schémat, vkládání, aktualizace a mazání dat)
6. Pokročilé SQL (složitější dotazy a poddotazy, agregační funkce a pohledy)
7. Pokročilé SQL (uložené procedury, kurzory, transakce)
8. Indexování a optimalizace dotazů (vytváření a správa indexů, optimalizace dotazů na reálných příkladech)
9. Zotavení po havárii (simulace havárií a zotavení, zálohování a obnova databáze)
10. Distribuované databáze (práce s distribuovanými databázemi, příklady a cvičení)
11. NoSQL databáze (práce s NoSQL databázemi, příklady použití)
12. Bezpečnost databází (implementace bezpečnostních opatření, šifrování a audit)
13. Závěrečné cvičení (komplexní projekt, prezentace výsledků)

Odborné znalosti:
Studenti získají hluboké porozumění jazyku SQL a jeho použití pro správu a manipulaci s daty v relačních databázích, s pokročilými databázovými koncepty, jako jsou distribuované databáze, NoSQL databáze a bezpečnost databází
Odborné dovednosti:
Studenti získají praktické dovednosti prostřednictvím cvičení a projektů, které jim umožní aplikovat naučené techniky v praxi
Obecné způsobilosti:
Studenti budou schopni modelovat, navrhovat a využívat databázové systémy včetně pokročilé práce se SQL.

Samostudium

72 hod., nepovinná

Vyučující / Lektor

Individuální příprava na ukončení

32 hod., nepovinná

Vyučující / Lektor