Přístupnostní navigace
E-přihláška
Vyhledávání Vyhledat Zavřít
Detail předmětu
FSI-VDCAk. rok: 2025/2026
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
Počet kreditů
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
Základní literatura
Doporučená literatura
Zařazení předmětu ve studijních plánech
specializace AIŘ , 3 ročník, zimní semestr, povinný
Přednáška
Vyučující / Lektor
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í
Cvičení s počítačovou podporou
1. Nejpoužívanější způsoby softwarové implementace pro práci s databází, Entity Framework2. Implementace databázového zdroje do REST aplikace3. Zajištění validity datového zdroje z implementačního hlediska4. 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á data9. -10. Implementace in-memory databáze pro zpracování datových toků11. - 12. Ukázky implementace ElasticSearch/Neo4j.13. Konzultace projektů.