Tomas Plachetka

Comenius University > Faculty of Mathematics, Physics and Informatics > Department of Computer Science

Research
Teaching
Publications
Contact

Uvod do databazovych systemov 2022/2023 Zima

Oznamy (tie najviac aktualne su na prvych miestach)

  • Do pisomky je mozne nazriet (aj v pripade neuspechu) na niektorom z terminov ustnej skusky.
  • Ustna cast skusky je spravidla do niekolkych dni po pisomke. Podmienkou kvalifikacie na ustnu skusku je aspon 45% hodnotenie z pisomky.
  • Na skusku treba priniest index a ISIC kartu (na pisomku tiez pero a dostatok cistych papierov). Ziadne ine pomocky nie su dovolene. Vsetky elektronicke zariadenia, vratane mobilnych telefonov, budu pocas pisomky vypnute. Opisovanie, akakolvek komunikacia pocas testu alebo iny pokus o podvod znamena neuspesne absolvovanie kurzu (Fx). Vynimkou je komunikacia s ucitelom za ucelom upresnenia zadania ulohy.
  • Pri hodnoteni sa berie do uvahy len posledny termin skusky.
  • Hodnotenia pisomnych skuskovych testov budu priebezne zverejnovane na tejto web stranke.
  • Podmienky uspesneho absolvovania kurzu su v slajdoch k prvej prednaske. Ocakavanu znamku po absolvovani pisomnej casti skusky v skuskovom obdobi pocita tento program.
  • Skuska ma pisomnu a ustnu cast. Podmienkou prihlasenia sa na pisomku je aspon 45% hodnotenie prace pocas semestra. Na pisomku sa treba najneskor 1 den vopred elektronicky prihlasit. Ak sa Vam nedari prihlasit, poslite mi email. Prihlasenie na test je zavazne (t.j. termin, na ktory ste prihlaseny, sa pocita aj ked ten test nepisete). Ak viete ze na termin nepridete, prosim odhlaste sa z neho (ak mate problem s odhlasenim, dajte mi vediet cez email).
  • Sucasne s tymto kurzom odporucam zapisat si tiez Databazove praktikum (1-INF-270). Ak narazite na problem pri zapise Databazoveho praktika, obratte sa na niektoreho z ucitelov.

Skusky

Priebezne hodnotenie

  • 11.1. 14:00 C pisomka, riesenie
  • 16.1. 9:00 M262 ustna skuska
  • 17.1. 9:00 M262 ustna skuska
  • 18.1. 16:00 A pisomka, riesenie (termin 18.1. 10:00 C bol zruseny, resp. nahradeny tymto)
  • 19.1. 9:00 M262 ustna skuska
  • 20.1. 9:00 M262 ustna skuska
  • 26.1. 9:00 M262 ustna skuska
  • 27.1. 9:00 M262 ustna skuska
  • 30.1. 9:00 M262 ustna skuska
  • 1.2. 14:00 A pisomka, riesenie
  • 2.2. 9:00 M262 ustna skuska
  • 3.2. 9:00 M262 ustna skuska
  • 7.2. 9:00 M262 ustna skuska
  • 8.2. 9:00 M262 ustna skuska
  • 9.2. 9:00 M262 ustna skuska
  • 9.2. 14:00 M.I pisomka (posledny termin)
  • 10.2. 9:00 M262 ustna skuska (posledny termin)

Prednaska

T. Plachetka: Pondelok 12:20, 2h, M.XI

  • Uvodna prednaska
    • Organizacia kurzu
    • Historia, motivacia
    • Ucel databaz, charakteristika DB aplikacii
    • Trojstupnova ANSI/SPARC architektura, datove modely
    • Entitno-relacny, relacny a navigacny datovy model
    • Knihy, casopisy, konferencie
  • Relacny kalkul, Datalog
    • Relacie a predikaty
    • Dotazy
    • Relacny kalkul
    • Datalog
  • SQL
    • DDL (Data Definition Language) a DML (Data Manipulation Language)
    • DML: Syntax a semantika SELECT
    • SELECT: selekcia, projekcia, premenovanie, ORDER BY, UNION/INTERSECT/EXCEPT, INNER JOIN, OUTER JOIN, NULL hodnoty a 3-hodnotova logika, poddotazy, GROUP BY/HAVING, duplikaty v tabulkach
    • Preklad Datalog>SQL
    • DML: INSERT, UPDATE, DELETE
    • DDL: typy/DOMAIN, vytvorenie/odstranenie/modifikacia tabulky, default hodnoty, indexy, VIEW, aktualizacia cez VIEW
    Relacna algebra
    • Ucel relacnej algebry
    • Operatory relacnej algebry
    • Priklad optimalizacie na urovni relacnej algebry
    • Multimnoziny (bags) a operatory nad multimnozinami
    • Grupovanie a agregacia
    • Semantika SELECT... FROM... WHERE... GROUP BY... HAVING
    Agregacia a rekurzia v dotazovacich jazykoch
    • Grupovanie a agregacia v SQL, relacnej algebre, relacnom kalkule a Datalogu
    • Rekurzia v SQL, relacnej algebre, relacnom kalkule a Datalogu
    • Vypocet dotazov: iteracia (naivna a seminaivna evaluacia)
    • Stratifikovana negacia
    • Simulacia rekurzie s fixnou hlbkou v SQL bez WITH RECURSIVE
  • Fyzicka organizacia
    • Typy externych (trvacnych) medii
    • Fyzicka algebra, fyzicke plany
    • Materializacia vs. pipelining medzivysledkov
    • Zlozitost fyzickych operatorov
    • Implementacia vybranych operatorov: Merge-sort, Nested-loop-join
    • Sekvencne indexy (ISAM)
    • Husty a riedky sekvencny index, operacie vynechavania a vkladania
    • B stromy a B+ stromy
    • Hashovanie
    • Cena reorganizacie indexov
  • Navrhovanie databaz
    • Ciel a metodologia navrhovania databaz
    • Entitno-relacne diagramy, pravidla dobreho navrhu, primary keys, surrogate keys, foreign keys
    • Preklad ER diagramov do SQL (DDL)
    • Identifikacia funkcnych zavislosti
    Funkcne zavislosti
    • Motivacia normalizacie
    • Funkcne zavislosti, Armstrongove axiomy
    • Uzaver mnoziny atributov, uzaver mnoziny funkcnych zavislosti
    • Uplnost Armstrongovych axiom
    • Pokrytie a minimalne pokrytie mnoziny funkcnych zavislosti
    • Nadkluce a kluce
    • Relacne schemy, dekompozicia relacnych schem, bezstratovost dekompozicie
    Normalne formy
    • Algoritmus testovania bezstratovosti dekompozicie do 2 relacii
    • Algoritmus testovania bezstratovosti dekompozicie do N relacii
    • Prva, druha a tretia normalna forma (1NF, 2NF, 3NF), BCNF
    • Naivna dekompozicia do 3NF, resp. BCNF
    • Bezstratova dekompozicia do 3NF zachovavajuca funkcne zavislosti
    • Bezstratova dekompozicia do BCNF z 3NF dekompozicie
    • Vyssie normalne formy, zasady "rozumnej" dekompozicie
    Transakcie
    • Definicia transakcie z pohladu centralizovaneho transakcneho systemu
    • Elementarne transakcne operacie
    • Poziadavky na transakcny system (ACID)
    • Architektura transakcneho databazoveho systemu
    • Rozvrhy
    • Seriove a konflikt-seriovatelne rozvrhy
    • Testovanie konflikt-seriovatelnosti, precedencny graf
    • View-seriovatelne rozvrhy
    • Generovanie seriovatelnych rozvrhov
    • Dvojfazove zamykanie, casove peciatky, validacia, MVCC
    • Obnova (recovery), log-file
    • Vseobecny dvojprechodovy algoritmus obnovy, algoritmy obnovy so specifickymi predpokladmi
    • Checkpointing
    • Backup
    • Triedy obnovitelnosti: recoverable, ACA, strict
    • Diagram hierarchie tried obnovitelnosti a seriovatelnosti
    • Striktne dvojfazove zamykanie
    • Deadlock, wait-for-graf, pristupy k rieseniu deadlockov
    • Konzervativne strategie riesenia deadlockov: wait-die a kill-wait

Starsie materialy k tomuto kurzu: RNDr. J. Sturc

Cvicenia

Utorok 13:10 F1.247

Literatura


Updated by Tomas Plachetka, Feb/9/2023