Detail předmětu
Databáze pro řízení procesů
FSI-VDC-K Ak. rok: 2025/2026 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 N-AIŘ-K: Aplikovaná informatika a řízení, magisterský navazující, povinný
Typ (způsob) výuky
Konzultace v kombinovaném studiu
17 hod., povinná
Osnova
Přednášky:
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í
Konzultace
35 hod., nepovinná
Osnova
1. Nejpoužívanější způsoby softwarové implementace pro práci s databází, Entity Framework
2. Implementace databázového zdroje do REST aplikace
3. Zajištění validity datového zdroje z implementačního hlediska
4. Využití databázových procedur pro přístup k datům, pokročilé dotazování
5. Způsoby integrace více databázových zdrojů
6. Modifikace a update databáze
7. – 8. Implementace No-SQL databáze pro nestruktorovaná data
9. -10. Implementace in-memory databáze pro zpracování datových toků
11. – 12. Ukázky implementace ElasticSearch/Neo4j.
13. Konzultace projektů.