Základy databází pro vývojáře
O kurzu
Chcete získat praktické dovednosti v oblasti databází a práce s daty pro vývoj moderních aplikací? Tento mikrocertifikát vás provede klíčovými principy návrhu, správy a využití relačních i nerelečních databází. Naučíte se pracovat s SQL i NoSQL přístupy, porozumíte jejich rozdílům a vhodnému použití v praxi.
V průběhu kurzu si osvojíte návrh datových modelů, normalizaci a denormalizaci dat, tvorbu databázových schémat a pokročilé techniky dotazování. Součástí je také práce s dokumentovými databázemi, zejména MongoDB, včetně operací CRUD, agregací, indexování a návrhu efektivní datové struktury.
Důraz je kladen na praktické využití znalostí – prostřednictvím cvičení a projektů si vyzkoušíte návrh a implementaci databázového řešení pro reálné aplikace. Kurz zároveň představuje moderní přístupy ke kombinaci různých typů databází a práci s daty v současných softwarových systémech.
Po absolvování mikrocertifikátu budete schopni samostatně navrhovat databázová řešení, efektivně pracovat s daty a volit vhodné technologie podle konkrétního use-case.
Obsah kurzu a harmonogram
- Typy databází (relační, dokumentové, grafové, síťové, vektorové atd.)
- Porovnání SQL vs. NoSQL – kdy použít co?
- Úvod do návrhu datového modelu (ER diagramy, potřeby aplikace)
- Základy relačního modelu: tabulky, primární/externí klíče, integrita
- Normalizace: 1NF, 2NF, 3NF – principy a příklady
- Denormalizace – kdy je vhodná
- SELECT, INSERT, UPDATE, DELETE
- WHERE, JOIN (INNER, LEFT, RIGHT, FULL), GROUP BY, HAVING
- Subdotazy a agregace (COUNT, SUM, AVG…)
- Tvorba tabulek, datové typy, omezení (constraints)
- Indexy – typy, využití a vliv na výkon
- Transakce – princip ACID, COMMIT, ROLLBACK, izolace
- Pohledy (views), uložené procedury (stored procedures), triggery
- Modelování konkrétní aplikace (např. e-shop, systém rezervací)
- Implementace v PostgreSQL / MySQL / SQLite
- Optimalizace dotazů, ladění indexů
- Koncept dokumentově orientovaných databází
- Struktura dokumentu (JSON/BSON)
- Datové modelování v MongoDB – embedded vs. referenced
- Vkládání, čtení, aktualizace a mazání dokumentů (CRUD)
- Dotazování pomocí Mongo Query Language (MQL)
- Vyhledání, třídění, stránkování výsledků
- Agregační framework (aggregation pipeline)
- Indexy – typy a chování, compound indexy, TTL indexy
- Transakce v MongoDB – více dokumentů, více kolekcí
- Validace dat pomocí schema rules (JSON Schema)
- Modelování nestandardní struktury (např. chat, logování, realtime data)
- Implementace, optimalizace dotazů a práce s agregacemi
- Výběr správného typu databáze podle use-case
- Kombinace SQL + NoSQL v jedné aplikaci
- Migrace dat mezi SQL a NoSQL
- Úvod do ORM (např. Mongoose, Sequelize)
Vstupní požadavky
Základní znalost programování v libovolném jazyce (např. JavaScript, Python, Java)
Pro koho je kurz určen?
Metody výuky
- Interaktivní přednášky s ukázkami (SQL, PostgreSQL, MySQL, MongoDB).
- Praktické workshopy: návrh datových modelů, práce s dotazy a implementace databázových řešení.
- Samostatná cvičení a případové studie zaměřené na reálné scénáře z praxe.
- Závěrečný projekt a test ověřující schopnost navrhnout a pracovat s databázovým řešením.