Databázové systémy BIK-DBS Ing. Ivan Halaška katedra softwarového inženýrství ČVUT FIT Thákurova 9, m.č. T9:311 ivan.halaska@fit.cvut.cz Stránka předmětu: https://edux.fit.cvut.cz/courses/bi-dbs/parttime/start 1
Rozvrh výuky přednáška 1.10. 9.00 až 12.10, učebna T9:349, s 1 přestávkou 8.10. 10:40 až 12:10, učebna T9:349 15.10. 9.00 až 12.10, učebna T9:349, s 1 přestávkou 22.10. 14:50 až 17:00, učebna T9:349 cvičení 8.10. 13:10 až 14:40, učebna T9:348, první skupina 14:50 až 16:20, učebna T9:348, druhá skupina 22.10. 10:40 až 12:10, učebna T9:348, první skupina 13:10 až 14:40, učebna T9:348, druhá skupina 2
Klasifikace požadavky k zápočtu (odkaz) Vypracování semestrální práce, 0 až 40 bodů Účast na cvičeních zkouška (odkaz) proběhne písemnou formou - lze získat až 60 bodů. Body dosažené ze cvičení a ze zkoušky se sčítají. Nebudete-li spokojeni s body ze zkouškové písemky, můžete si body vylepšit (nechat se dozkoušet) 3
Vymezení předmětu Úvod do databází Tři úrovně pohledu na data Konceptuální model Databázový model Fyzický model Relační databázový model Relační algebra jako dotazovací jazyk Úvod do jazyka SQL; DDL, DML, DCL Metody návrhu schématu úložiště v relační databázi Souvislost konceptuálního a databázového modelu Transakční zpracování Fyzická organizace dat 4
Co je databáze Japonský zákon o autorsko-právní ochraně databází (1986): Databáze je soubor informací, jako jsou znaky, čísla, diagramy, jejichž systematická struktura umožňuje, aby tyto informace mohly být vyhledávány pomocí počítače. 5
Co je databáze Databázová technologie se zabývá řízením velkého množství perzistentních, spolehlivých a sdílených dat: pro data nestačí vnitřní paměť, data přetrvávají od zpracování ke zpracování, data lze rekonstruovat po chybě, data jsou přístupná více uživatelům užívání na základě přístupových práv koordinované současné využívání stejných dat více uživateli 6
Hromadné zpracování dat klasické zpracování založené na systému ovládání souborů OS (COBOL, PL1, ) Autoři aplikací opakovaně řešili problémy, které byly jednotným způsobem vyřešeny nadstavbou, které se říká systém řízení báze dat 7
Proč databáze Nezávislost dat (na programech) a efektivní přístup k datům Redukce času potřebného k vývoji aplikací Integrita a ochrana dat Řízená správa dat Transakce Paralelní přístup více uživatelů Zotavení po chybě 8
Základní pojmy Databázový systém DBS = DB + SŘBD SŘBD databáze schéma úložiště integritní omezení datové prvky vztahy mezi nimi data metadata Základní paradigma: existence dat v DB je nezávislá na aplikačních programech 9
Základní pojmy jazyky pro definici dat (DDL) logické a fyzické schéma DB Jazyk pro dotazování jazyky pro manipulaci s daty (DML) Jazyky pro řízení transakcí (TCL) Jazyky pro definici přístupových práv (DCL) 10
Základní pojmy Databázový dotaz Databázový dotaz je výraz, jehož hodnotou je odpověď na dotaz v podobě datové struktury 11
JMD, dotazy v uživatelském pohledu (QBE) 12
JMD, dotazy v uživatelském pohledu (QBE) 13
Uživatelé DBS správce dat aplikační programátor (tvůrce aplikací) příležitostný uživatel naivní uživatel 14
správce dat příležitostný aplikační naivní uživatel programátor uživatel příkazy v JDD privilegované příkazy DOTAZY APLIKAČNÍ PROGRAMY APLIKAČNÍ ROZHRANÍ kompilátor DDL kompilátor DML předkompilátor vloženého DML SŘBD vyhodnocovač dotazů manažer bufferů manažer souborů zkompilované transakce DOTAZOVÝ PROCESOR DOTAZOVÝ PROCESOR transakční manažer MANAŽER PAMĚTI slovník dat statistická data indexy aplikační data 15
Rekapitulace Jaké vlastnosti musí mít databázové úložiště? Vysvětlete tvrzení, že data v databázi jsou nezávislá na aplikačních programech. Odkud bere program vytvořený nad souborovým úložištěm informace o struktuře dat? 16
Rekapitulace Kam je zaznamenáno schéma datového úložiště v databázi? Co to je databázový dotaz? Vysvětlete princip dotazování technikou QBE. 17
Rekapitulace Vyjmenujte základní kategorie databázových uživatelů? Jaká je úloha správce dat? Proč se aplikační programátor řadí mezi uživatele databáze? Jak ji používá? Charakterizujte práci příležitostného uživatele databáze. 18
Rekapitulace Čím se liší naivní uživatel databáze od příležitostného? Uveďte dva příklady aplikačních dat uložených do databáze. Uveďte dva příklady statistických dat uložených do databáze. Uveďte dva příklady údajů uložených do datového slovníku databáze. 19
Rekapitulace Co to je databázový index? Mohou databázový server a aplikační server sloužící jedné aplikaci sdílet stejný počítačový systém? Mohou databázový server a aplikační server sloužící jedné aplikaci sídlit na různých počítačových systémech? 20