Databáze
6 kreditů
Magisterské
Česky
Michal Kökörčený
Cílem předmětu je seznámit studenty se základními koncepty datové vrstvy IS a to jak různými typy databází z pohledu práce s daty (relační, objektové, atp.), tak i různými databázemi z pohledu jejich architektury (databázový server, vícedimenzionální databáze). S tímto budou také studenti uvedeni do problematiky business intelligence a problematiky big data. Praktickým výstupem předmětu bude schopnost absolventů vytvářet produktovou dekompozici business procesu a získání základního přehledu o práci v relační databázi.
Studijní okruhy
Úvod do databázíDůležitost ukládání dat a zvolené technologie, klasický vs. databázový přístup, různé typy databází.
Úvod do role databází v návrhu ISÚvod do návrhu informačního systému. Nutné kroky k její realizaci - správa požadavků, návrh, realizace a nasazení. Potřebné znalosti pro realizaci takového procesu. Úvod do 3-vrstvé architektury informačního systému. Role datové vrstvy pro informační systémy.
Produktová dekompoziceAnalýza zpracovávaných entit systému. Produktová dekompozice a její role v návrhu informačního systému. Ukázka produktové dekompozice pro větší systém - e-shop.
Úvod do relační databázíÚvod do relačních databází. Příklady relačních databází - Oracle, MSSQL, MySQL, PostgreSQL. Jak jsou data v relační databázi reprezentována - tabulky a vztahy mezi tabulkami. Různé typy vztahů mezi tabulkami. Příklady uložení a vztahů - zaměstnanec a jeho smlouva, data v e-shopu.
Tvorba datového modeluV této lekci si představíme pojem datový model a ukážeme si metody jak jej vytvářet. Popis základů Entity-Relation model. Pojem Entita, atributy a jejich domény. Pojem relace a její různé typy. Proces tvorby datového modelu. Ukázky tvorby jednotlivých částí na příkladech.
Datový modelCílem této lekce bude předvedení tvorby datového modelu na ukázkovém datovém modelu - e-shop.
Úvod do jazyka SQLÚvod do jazyka SQL. Realizace jednotlivých úkonů v databázi jazykem SQL. Předvedení základních možností - výpis tabulky, výpis z více tabulek (jednoduché využití propojení).
Dotazování v jazyku SQLPopis dalších možností databází. Popis optimalizace dotazů - vysvětlení rozdílu mezi dotazem nad primárním klíčem a dotazem podmiňující se na daný sloupec. Vysvětlení principu databázového indexu a jeho urychlení. Ukázka rozdílů časů. Zmínění existence databázových transakcí a vysvětlení důvodu na příkladu. Zmínění nutnosti existence složitějšího dotazování PL/SQL bez vysvětlování samotné syntaxe. Zmínka o bezpečnosti databází a popis zajímavého napadení databáze přes SQL injection.
Objektová databázePopis objektového přístupu k modelování světa. Popis objektů, jejich vztahů a dědičnosti. Zmínka o častém použití tohoto přístupu v rámci návrhu software - UML a objektové jazyky Java, C#, Python, Ruby a další. Popis jak řešíme problém rozdílu mezi ER modelem a objektovým modelem v programování - ORM mapování. Popis vhodnějšího přístupu objektových databází.
Architektura databázových serverůPopis problematiky nasazení databází. Existence databázových serverů a důvody, které vedou k takovým řešení - rychlost, bezpečnost, perzistence. Více databázových serverů a funkce load balanceru. Primární a sekundární databáze, ETL proces, speciální požadavky, OLAP. Ukázka řešení databázového nasazení v bankovním sektoru.
Úvod do business inteligenceZákladní popis co je Business Intelligence Data, Kontext, Informace, Znalosti, Moudrost. Význam Business Intelligence v rozhodovacím procesu společností a operativním, taktickém a strategickém plánování; podíl BI na Business strategii. Zasazení BI architektury do celkového informačního portfolia společnosti. Tradiční metody Business Intelligence vs. Agilní Business Warehousing. Data Warehousing, Information Delivery, Reporting, KPI, Dashboards, Samoobslužná Business Intelligence (tzv. Self-Service BI).
Strukturovaná data a problém big dataCo jsou Big data a jejich evoluce, technologie umožňující vznik a rozvoj Big dat. Význam a využití Big dat v operativních a rozhodovacích procesech společnostech. Typy dat, strukturovaná versus nestrukturovaná data, principy ukládání dat a datová kvalita. Změny ve způsobu zpracování velkých objemů dat oproti klasickým Business Intelligence metodám, NoSQL a další typy databází. Základní principy architektur řešení Big data, MapReduce framework pro distribuované zpracování. Nástroje pro ad-hoc dotazování na data, tzv. Querying. Nejčastěji používané metody analýzy a vizualizace velkých datových objemů. Zpracování dat a jejich analýzy v reálném čase, tzv. Complex event processing (CEP). Základní technologie ekosystému Hadoop a nejpoužívanější analytické nástroje. Problémy při získávání znalostí z Big data nepřesná/neúplná data, vlastní zpracování a integrace dat, tzv. „outliers“ atp. Typické scénáře použití Big data ve velkých korporacích.