Sustavi baza podataka

Prikazani su podaci za akademsku godinu: 2024./2025.

Opis predmeta

Uvod u fizičku organizaciju baza podataka. Organizacija prostora za pohranu u sustavima za upravljanje bazama podataka. Koncept transakcije. Teorija serijalizabilnosti. Postupci upravljanja istodobnim izvršavanjem transakcija. Obnova baze podataka. Principi optimizacije upita. Distribuirane baze podataka, globalne transakcije, nedjeljivo potvrđivanje, serijalizabilnost, distribuirani potpuni zastoj. Replikacija podataka, protokoli replikacije, serijalizabilnost, dostupnost i konzistentnost podataka u repliciranim bazama podataka.

Preduvjeti

Relacijski model podataka. Relacijska algebra. SQL. Struktura B-stabla. Složenost algoritma.

Studijski programi

Sveučilišni diplomski
Izborni predmeti (2. semestar)
Izborni predmeti (2. semestar)
Izborni predmeti (2. semestar)
Izborni predmeti (2. semestar)
Izborni predmeti (2. semestar)
Izborni predmeti (2. semestar)
Izborni predmeti (2. semestar)
Izborni predmeti (2. semestar)
(2. semestar)
Izborni predmeti (2. semestar)
Izborni predmeti (2. semestar)
Izborni predmeti (2. semestar)
Izborni predmeti (2. semestar)
Izborni predmeti (2. semestar)
[FER2-HR] Programsko inženjerstvo i informacijski sustavi - profil
Teorijski predmeti profila (2. semestar)
[FER2-HR] Telekomunikacije i informatika - profil
Predmeti specijalizacije profila (2. semestar)

Ishodi učenja

  1. Opisati glavne komponente sustava za upravljanje bazama podataka
  2. Primijeniti stečena znanja o fizičkoj organizaciji podataka u sustavima za upravljanje bazama podataka
  3. Primijeniti stečena znanja o principima optimizacije upita
  4. Primijeniti stečena znanja o principima obnove u sustavima baza podataka
  5. Primijeniti stečena znanja o kontroli istodobnog pristupa podacima
  6. Objasniti karakteristike distribuiranih sustava za upravljanje bazama podataka

Oblici nastave

Predavanja

Studentima se prezentiraju teoretske postavke odabranih tema.

Način ocjenjivanja

Kontinuirana nastava Ispitni rok
Vrsta provjere Prag Udio u ocjeni Prag Udio u ocjeni
Međuispit: Pismeni 45 % 40 % 0 %
Završni ispit: Pismeni 45 % 40 %
Završni ispit: Usmeni 20 %
Ispit: Pismeni 50 % 80 %
Ispit: Usmeni 20 %

Tjedni plan nastave

  1. Arhitektura sustava za upravljanje bazama podataka. Glavne komponente sustava i njihova uloga (npr. optimizacija upita, upravljanje transakcijama, upravljanje međuspremnicima). Hijerarhija vrsta memorija. Karakteristike medija za pohranu podataka. Dvostruki međuspremnici. Utjecaj fizičkog smještaja podataka na performanse sustava.
  2. Fizička organizacija podataka. Neporedana datoteka. Raspršeno adresiranje. B-stabla. Metode pristupa podacima. Operacije nad B-stablom. Faktor popunjenosti indeksa. Trošak korištenja indeksa. Funkcijski indeks. Utjecaj indeksa na učinkovitost izvršavanja upita. Višedimenzionalni indeksi. R-stabla.
  3. Optimiranje upita. Stablo upita. Plan izvršavanja upita. Statička i dinamička optimizacija upita. Fizička implementacija operatora relacijske algebre, selekcija, spajanje, projekcija, agregacija, grupiranje, unija, presjek i razlika. Vanjsko sortiranje s uparivanjem.
  4. Konjunktivne i disjunktivne forme predikata u upitima. Evaluacija troškova izvršavanja složenih upita. Iteratori. Optimiranje složenih upita. Pravila za transformaciju izraza relacijske algebre. Heuristička optimizacija.
  5. Transakcije. Svojstva transakcija. Model transakcije. Subtransakcije.
  6. Raspoloživost SUBP. Pogreške i oporavak. Pogreške transakcija, pogreške sustava, pogreške medija. Dnevnik transakcija. Dijagram stanja transakcija. Točka potvrđivanja. Oporavak nakon pogreške sustava. Tehnike oporavka.
  7. Kontrolna točka. Upravljanje logičkim dnevnikom. Duge transakcije. Inkrementalno arhiviranje. Oporavak nakon pogreške medija.
  8. Međuispit.
  9. Upravljanje istodobnim pristupom. Karakteristični problemi istodobnog pristupa. Teorija serijalizabilnosti. Model povijesti. Konfliktne operacije. Serijska povijest. Serijalizabilna konflikt-serijalizabilna, pogled-serijalizabilna povijest. Serijalizacijski graf. Obnovljiva i striktna povijest. Povijest koja izbjegava kaskadno poništavanje.
  10. Ključevi. Protokol dvofaznog zaključavanja, temeljni, striktni i rigorozni. Konverzija ključeva. Implementacija menadžera zaključavanja.
  11. Izgladnjivanje transakcija. Potpuni zastoj. Metode prevencije i detekcije potpunih zastoja. Graf čekanja. Ključ za izmjenu.
  12. Zaključavanje na više razina granulacije. Ključevi upozorenja. Protokol zaključavanja na više razina granulacije. Sablasne n-torke. Slabe razine konzistentnosti. ANSI SQL razine izolacije. Protokol vremenskih oznaka.
  13. Distribuirani sustavi za upravljanje bazama podataka. Homogeni i heterogeni distribuirani sustavi baza podataka. Fragmentacija i alokacija. Transparentnost podataka. Globalne i lokalne transakcije, subtransakcije. Menadžer transakcija i koordinator transakcija. Pogreške u distribuiranim sustavima. Dvofazni protokol potvrđivanja.
  14. Globalna serijalizabilnost. Centralizirani i distribuirani menadžer zaključavanja. Potpuni zastoji u distribuiranim sustavima. Replicirane baze podataka. Sinkroni i asinkroni protokoli. Jedno-kopijska serijalizabilnost. Protokol zaključavanja primarne kopije, većinski protokol, pristrani protokol, protokol usuglašavanja kvorumom.
  15. Završni ispit.

Literatura

H. Garcia-Molina, J. D. Ullman, J. D. Widom (2000.), Database System Implementation, Prentice Hall
Abraham Silberschatz, Henry F. Korth, S. Sudarshan (2011.), Database System Concepts, McGraw-Hill
Philip A. Bernstein, Vassos Hadzilacos, Nathan Goodman (1987.), Concurrency Control and Recovery in Database Systems, Addison-Wesley
M. Tamer Özsu, Patrick Valduriez (1999.), Principles of Distributed Database Systems, Prentice Hall

Izvedba

ID 222788
  Ljetni semestar
5 ECTS
R0 Engleski jezik
R1 E-učenje
45 Predavanja
0 Seminar
0 Auditorne vježbe
0 Laboratorijske vježbe
0 Konstrukcijske vježbe
0 Vježbe tjelesnog odgoja

Ocjenjivanje

87.5 izvrstan
75 vrlo dobar
62.5 dobar
50 dovoljan