Detail předmětu
Databáze pro řízení procesů
FSI-VDC Ak. rok: 2026/2027 Zimní semestr
Předmět představuje úvod do problematiky databázových systémů.
Zabývá se následujícími tématy: Zpracování dat, problém redundance a nekonzistence, integrita, utajení, víceuživatelský přístup k datům. Index-sekvenční organizace dat. Integritní omezení pro vztahy.
Architektura databázového systému, datové modely. E-R model, relační algebra, dotazovací jazyk relační algebry.
Teoretické aspekty návrhu informačních systémů. Funkční závislosti, normální formy relací, dekompoziční teorém.
Dotazovací jazyk SQL.
Bezpečnost dat.
Cloudy a gridy.
NoSQL databáze.
MongoDB. ElasticSearch. Redis/Valkey.
Jazyk výuky
čeština
Počet kreditů
6
Garant předmětu
Zajišťuje ústav
Vstupní znalosti
Ke studiu databázových systémů postačují základní znalosti z tvorby algoritmů.
Pravidla hodnocení a ukončení předmětu
Podmínkou pro zápočet je implementace netriviální databázové aplikace v využitím odpovídajících prostředků.
Zkouška má písemnou nebo elektronickou formu. Studenti v ní prokazují znalost návrhu datových struktur, relační algebry, jazyka SQL a programování.
Protože cvičení jsou povinná, bude na nich vyučující pravidelně kontrolovat účast. V případě omluvené nepřítomnosti student obdrží příklady k samostatnému vypracování tak, aby mohl zameškanou látku zvládnout.
Učební cíle
Cílem předmětu je seznámit studenty se základními databázovými technologiemi pro efektivní návrh a správu aplikací s velkým rozsahem údajů v prostředí internetu.
Předmět slouží studentům k seznámení s teoretickými aspekty návrhu databázové aplikace a její implementace v prostředí internetu včetně programování příslušných programovacích technik. Budou tak schopni vytvořit aplikaci pro efektivní správu velkého množství dat a také se naučí využívat cloudové služby.
Studijní opory
STEPHENS, R., Beginning Database Design Solutions: Understanding and Implementing Database Design Concepts for the Cloud and Beyond, 2023, 978-1394155729
DATE, C.J., Database Design and Relational Theory: Normal Forms and All That Jazz, 2019, 978-1484255391
KLEPPMANN, M. Designing Data-Intensive Applications: The Big Ideas Behind Reliable, Scalable, and Maintainable Systems, 2017, 978-1449373320
HERNANDEZ, Michael, J., Database Design for Mere Mortals: A Hands-On Guide to Relational Database Design, 2003, 978-020175284
CARLSON, Josiah, L., Redis in Action, 2013, 978-1617290855
Použití předmětu ve studijních plánech
Program B-MAI-P: Matematické inženýrství, bakalářský, povinně volitelný
Program B-STR-P: Strojírenství, bakalářský
specializace AIŘ: Aplikovaná informatika a řízení, povinný
Program C-AKR-P: Akreditované předměty v CŽV, celoživotní vzdělávání v akr. stud. programu
specializace CZS: Předměty zimního semestru, volitelný
Typ (způsob) výuky
Přednáška
26 hod., nepovinná
Osnova
1. Vymezení předmětu, studijní literatura. Používaná paradigmata. Třídění údajů (fyzické třídění, indexové soubory). Nevýhody klasického souborového zpracování. Databázové systémy, jazyky DDL a DML. Architektura databázového systému. Fyzická a logická nezávislost. Datové modely – vztah k JSON a XML.
2. Relační algebra, základní operace, relační algebra jako dotazovací jazyk. T-SQL příkazy – SELECT.
3. Návrh datových struktur. Normální formy relací. Index. Agregační funkce. Složený agregační klíč.
4. SQL. Poddotazy. Vícenásobné otevření téže tabulky, relace 1:N uvnitř téže tabulky, příklady použití. Vnořené agregace, realizace dotazu posloupností SQL dotazů.
5. SQL. Počítání s NULL hodnotou. Vyjádření existenčního a univerzálního kvantifikátoru v SQL. Křížový dotaz. Akční dotazy. Definiční dotazy.
6. No-SQL databáze.
7. MongoDB. BSON. JSON.
8. Key-Value databáze. Redis/Valkey.
9. Key-Value databáze. Redis/Valkey.
10. No-scheme databáze – ElasticSearch.
11. No-scheme databáze – ElasticSearch.
12. Grafové databáze – Neo4j.
13. Implementační modely použití více typů databází dle typu použití
Cvičení s počítačovou podporou
26 hod., povinná
Osnova
1. Nejčastěji používané přístupy k práci s databázemi a jejich softwarová implementace, včetně využití Entity Frameworku.
2. Integrace databázového zdroje do RESTové aplikace a jeho správná implementace.
3. Zajištění datové validity a konzistence z hlediska implementace a návrhu aplikace.
4. Využití databázových procedur, pokročilé techniky dotazování a optimalizace přístupu k datům.
5. Možnosti integrace a kombinace více databázových zdrojů v jedné aplikaci.
6. Strategie modifikace, správy a aktualizace databázových struktur i dat.
7. – 8. Implementace NoSQL databází a jejich použití pro ukládání nestrukturovaných dat.
9. – 10. Implementace in-memory databází pro práci s datovými proudy a vysokorychlostní zpracování dat.
11.–12. Praktické ukázky implementace a použití technologií ElasticSearch a Neo4j.
13. Konzultace projektů a individuální řešení implementačních problémů.