Sadržaj se učitava...
mdi-home Početna mdi-account-multiple Djelatnici mdi-script Studiji mdi-layers Katedre mdi-calendar-clock Raspored sati FOI Nastava search apps mdi-login
Teorija baza podataka
Database Theory
2021/2022
5 ECTSa
Informatika u obrazovanju 1.3 (IUO)
Informacijsko i programsko inženjerstvo 1.3 (IPI)
Baze podataka i baze znanja 1.3 (BPBZ)
Organizacija poslovnih sustava 1.3 (OPS)
Katedra za teorijske i primijenjene osnove informacijskih znanosti
RI
1. semestar
Osnovne informacijemdi-information-variant Izvođači nastavemdi-account-group Nastavni plan i programmdi-clipboard-text-outline Model praćenjamdi-human-male-board Ispitni rokovimdi-clipboard-check-outline Rasporedmdi-calendar-clock Konzultacijemdi-account-voice
Izvođenje kolegija
Cilj kolegija
Cilj predmeta Teorija baza podataka je upoznati studente s teorijom i praktičnom primjenom koja je temelj za izgradnju sustava za upravljanje: relacijskim bazama podataka, temporalnim bazama podataka, aktivnim bazama podataka, deduktivnim bazama podataka (bazama znanja), poopćenim bazama podataka, polustrukturiranim (graf) bazama podataka, objektno-orijentiranim bazama podataka i sustavima za strujanje podataka. Studenti će biti upoznati s novim trendovima i otvorenim problemima naprednih baza podataka. Prezentacija uključuje preciznu karakterizaciju pojmova i njihovih odnosa kao i praktičnu primjenu koncepata kroz laboratorijske vježbe i studentske projekte.
Preduvjeti
Kolegij nema definirane preduvjete
Norma kolegija
Predavanja
30 sati
Vježbe u praktikumu
30 sati
Nastavnik Uloga na kolegiju Oblik nastave Tjedana Sati Grupa
Schatten Markus Nositelj Predavanja 12 2 1
Okreša Đurić Bogdan Suradnik Vježbe u praktikumu
Vježbe u praktikumu
15
4
2
2
1
1
Peharda Tomislav Suradnik Vježbe u praktikumu
Vježbe u praktikumu
15
4
2
2
2
2
Maleković Mirko Izvođač Predavanja 3 2 1
Peroković Mario Vanjski suradnik Vježbe u praktikumu 11 2 3
Sadržaj predavanja
  • Relacijske baze podataka
    Simbolička logika za baze podataka. Relacijska algebra. Zavisnosti u relacijskim bazama podataka. Implikacijski problem. Formalni sustavi. Normalne forme
  • Parcijalne baze podataka
    Uvod. Tipovi parcijalnih relacija. Relacijski operatori nad parcijalnim relacijama.Tipovi logičkih posljedica i njihov odnos.
  • Temporalne baze podataka
    Uvod. Intervalno proširenje relacijskog modela. Relacijski operatori u temporalnim bazama podataka.
  • Deduktivne baze podataka
    Uvod. Sintaksa i semantika. Reprezentacija deduktivne baze podataka u Datalogu. Tipovi pravila. Minimalni model. Računanje nerekurzivnih pravila. Računanje rekurzivnih pravila.Sigurnost pravila. Negacija. Stratifikacija deduktivne baze podataka. Rekurzija u SQL-u.
  • Poopćene relacijske baze podataka
    Uvod. Particijska normalna forma. Relacijski operatori nad poopćenim relacijama.
  • Objektno-orijentirane i objektno relacijske baze podataka
    Objektno-orijentirani model podataka. Klase. Objekti. Identitet objekta. Metode. Polimorfizam. Naslijeđivanje.
  • Polustrukturirane baze podataka i podatkovni grafovi
    Polustrukturirani model podataka. Podatkovni graf. Graf sheme. Upiti nad podatkovnim grafovima. Pravilni izrazi putanja. Mapiranje i reduciranje.
Sadržaj seminara/vježbi
  • Vježba 1
    Funkcije u PostgreSQL-u (sintaksa, semantika, primjeri).
  • Vježba 2
    Aktivne baze podataka (sintaksa, semantika, primjeri).
  • Vježba 3
    Temporalne baze podataka (sintaksa, semantika, primjeri).
  • Vježba 4
    Poopćene baze podataka (sintaksa, semantika, primjeri).
  • Vježba 5
    Objektno-relacijske baze podataka (sintaksa, semantika, primjeri).
  • Vježba 6
    Deduktivne baze podataka (sintaksa, semantika, primjeri).
  • Vježba 7
    Objektno-orijentirane baze podataka (sintaksa, semantika, primjeri).
  • Vježba 8
    Polustrukturirane baze podataka i XML (sintaksa, semantika, primjeri).
  • Vježba 9
    Integracija heterogenih baza podataka i strujanje podataka – primjeri
Ishodi učenja kolegija
  • Konceptualno i logički oblikovati naprednu NoSQL bazu podataka koristeći odgovarajuće upitne jezike (npr. napredniji SQL, mapiranje i reduciranje, Cypher i sl.) i sustave za upravljanje podacima.
  • Logički oblikovati naprednu bazu podataka koristeći tehnike normalizacije.
  • Transformirati deduktivnu bazu podataka u konvencionalnu relacijsku bazu podataka.
  • Implementirati bazu podataka temeljem konceptualnog, logičkog i/ili fizičkog modela u odgovarajućem jeziku za rad s bazama podataka (npr. SQL, XML, JSON, Cypher, Datalog i sl.) .
  • Kritički vrednovati tehnologije za rad s heterogenim, distribuiranim, polustrukturiranim i nestrukturiranim podacima, odnosno strujanjem podataka.
  • Oblikovati model distribuirane baze podataka koristeći odgovarajuće jezike za modeliranje podataka i uzimajući u obzir specifičnosti arhitekture sustava.
  • Oblikovati model upravljanja podacima, koordinacije, razmjene poruka i interakcije u inteligentnom informacijskom sustavu koristeći odgovarajuće metode i tehnike (npr. distribuirane baze podataka, sustavi razmjene poruka, sustavi strujanja podataka i sl.).
  • Konfigurirati i spojiti na odgovarajuća sučelja repozitorije podataka, informacija i znanja s pripadnim metapodacima.
  • Osmisliti organizaciju velikih skupova podataka, informacija i znanja koristeći podatkovne infrastrukture primjerene postavljenom problemu (npr. relacijske baze podataka, NoSQL baze podataka, skladišta podataka, jezera podataka, baze znanja, ontologije i sl.).
  • Oblikovati logički model baza podataka i/ili baza znanja za velike skupove podataka (npr. normalizirana shema relacijske baze podataka ili graf shema polustrukturirane baze podataka i sl.).
  • Razumjeti logičke osnove baza podataka
  • Riješiti implikacijski problem za funkcijske, višeznačne i zavisnosti spoja
  • Transformirati deduktivnu bazu podataka u konvencionalnu relacijsku bazu podataka primjenom pravila za računanje pravila pomoću relacijske algebre
  • Transformirati relacijski izraz u ekvivalentan relacijski izraz primjenom kataloga relacijskih operatora
  • Formulirati upite u upitnim jezicima za različite tehnologije baza podataka i baza znanja (npr. SQL, SPARQL, XPath/XQuery i sl.) korištenjem funkcija mapiranja i reduciranja i drugih funkcija višeg reda za JSON i druge polustrukturirane podatke.
Ishodi učenja programa
  • Primijeniti etička načela, zakonsku regulativu i norme koje se koriste u struci
  • Procijeniti uvjete za primjenu suvremenih informacijskih i komunikacijskih tehnologija (IKT), savjetovati druge u primjeni IKT-a te u zadanom kontekstu odrediti utjecaj na pojedinca, organizaciju i društvo.
  • Modelirati probleme iz područja informacijskih i poslovnih sustava korištenjem matematičkih metoda, metoda razvoja informacijskih sustava i koncepata planiranja, upravljanja i poslovanja
  • Analizirati uvjete, donositi odluke, savjetovati druge te primijeniti odluke u zadanom kontekstu rješavanja problema iz područja informacijskih i poslovnih sustava
  • Vrednovati učinkovitost uvođenja i korištenja programskih rješenja i pripadajuće infrastrukture za konkretne problemske domene
  • Voditi interdisciplinarni tim i raditi u takvom timu te razviti planove upravljanja karijerom za sebe i članove tima uključujući elemente cjeloživotnog učenja i razvoj kompetencija poduzetnosti
  • Svrsishodno komunicirati na hrvatskom i stranom jeziku, unaprijediti komunikaciju sa svim dionicima (klijentima, korisnicima i kolegama) uz primjenu odgovarajuće terminologije uključujući popularizaciju suvremenih informatičkih trendova i tema
  • Primijeniti odgovarajuće metode i tehnike projektiranja, planiranja, razvoja i uvođenja složenog informacijskog sustava u suvremenim razvojnim okolinama
  • Optimizirati procese poslovnog sustava organizacije u suradnji sa stručnjacima odabirom metoda i koncepata planiranja, upravljanja organizacijom i analize poslovanja
  • Oblikovati softversku arhitekturu složenog informacijskog sustava, odabrati i postaviti njegovu odgovarajuću tehnološku platformu i sigurnosne mehanizme te programirati dijelove složenog sustava
  • Utvrditi uvjete za primjenu ključnih informacijskih tehnologija, procijeniti njihov učinak i u zadanom kontekstu donositi odluke i davati savjete vezano uz upravljanje IT uslugama i resursima
  • Analizirati uvjete za primjenu, savjetovati i u zadanom kontekstu donositi odluke vezane uz metodološke pristupe razvoju organizacijskih i informacijskih sustava
  • Osmsliti projekt učinkovitog unapređenja poslovnog sustava u osnovnim vertikalnim područjima uz korištenje suvremenih IKT, realizirati takav projekt vlastitim razvojem ili izborom odgovarajućeg standardnog softvera
  • Analizirati objekte poslovnog sustava te postaviti formalni model objektnog sustava kao temelj izgradnje informacijskog sustava.
  • Dizajnirati i izgraditi sustav temeljen na distribuiranim bazama podataka i velikim izvorima znanja korištenjem tehnika izgradnje velikih i distribuiranih podatkovnih sustava i razrješavanja konflikata između kompetitivnih izvora znanja.
  • Izgraditi računalni sustav za pohranu podataka i znanja uključujući digitalne arhive.
  • Predložiti poboljšanja poslovnog sustava temeljem optimiziranog modela poslovnih procesa i poslovnih pravila.
  • Modelirati i izgraditi analitički podatkovni sustav skladišta podataka i višedimenzionalnih kocaka temeljen na postojećem transakcijskom sustavu.
  • Izgraditi i optimizirati model procesa, klasa podataka i poslovnih pravila poslovnog sustava te predložiti poboljšanja poslovnog sustava.
  • Modelirati i izgraditi sustave temeljene na znanju i sustave za podršku u odlučivanju.
  • Identificirati potrebe za strategijskim i upravljačkim promjenama u organizacijama
  • Primijeniti metode upravljanja životnim ciklusom informacijskog sustava organizacije te osmisliti i primijeniti suvremene strategije nastupa na tržištu informatičkih proizvoda i usluga
  • Definirati elemente strategijskog kontinuuma i primijeniti metode strategijskog upravljanja uz potporu informacijsko komunikacijske tehnologije.
  • Razviti i validirati sustav mjerenja organizacijske učinkovitosti uz primjenu IKT
  • Analizirati tržište primjenom informacijsko-komunikacijskih tehnologija
  • Analizirati poslovne procese te preporučiti i primijeniti odgovarajuće informacijske i komunikacijske tehnologije za unapređenje poslovnih procesa
  • Prezentirati razvoj i organizaciju odgojno-obrazovnih sustava, povijest informatike i računarstva, ustroj odgojno-obrazovnog procesa, društvenu uvjetovanost odgojno-obrazovne prakse i primijeniti suvremene odgojno-obrazovne koncepcije
  • Organizirati nastavni proces uključujući i poučavanje upotrebom tehnologije i u kriznim uvjetima te osmisliti postupke za upravljanje procesom učenja i poučavanja uz primjenu odrednica djelovanja i ponašanja ljudske jedinke i dinamike grupe
  • Artikulirati nastavni sat primjenjujući primjerene nastavne metode i oblike rada, didaktičke principe i nastavna sredstva
  • Voditi pedagošku dokumentaciju, ispitivanje, ocjenjivanje i vrednovanje u skladu sa zakonskom regulativom i kriterijima osobne i profesionalne etičnosti
  • Poučavati učenike primjeni različitih oblika učenja, samovrednovanju i samoreguliranom učenju
  • Upravljati razrednim odjeljenjem, i surađivati s roditeljima i drugim strukturama unutar i izvan odgojno-obrazovne institucije
  • Primijeniti i sukreirati suvremene računalne sustave u dizajnu obrazovnog informacijskog sustava u nastavi u skladu s pedagoškim i metodičkim principima te ih popularizirati sukladno trendovima i potrebama
  • Primijeniti principe proceduralnog programiranja, interneta, weba, stolnih aplikacija u kontekstu rješavanja problema iz realnog svijeta
  • Formulirati problem iz realnog svijeta u smislu problemskog zadatka u informatici te ga znati riješiti i rješenje evaluirati
  • Izvoditi proces poučavanja u multikulturalnim i multietničkim sredinama i drugim posebnim uvjetima (treća dob, centri izvrsnosti …)
  • Strukturirati i procjenjivati osobna i profesionalna iskustva (razvijati refleksivnu praksu) uključujući cjeloživotno učenje
Osnovna literatura
  • Maleković, M., Schatten, M., Teorija i primjena baza podataka, Fakultet organizacije i informatike, 2017.
  • (O2) Date, C. J., Logic and Databases, Trafford Publishing, 2007.
Dopunska literatura
  • (D1) Abiteboul, S., R. Hull, V. Vianu, Foundations of Databases, Addison-Wesley, 2002.
  • (D2) Date, C. J., An Introduction to Database Systems, Addison-Wesley, 2007.
  • (D3) Date, C. J., H. Darwen, N. A. Lorentzos, Temporal Data and the Relational Model, Morgan Kaufman, 2003.
  • (D4) Garcia-Molina, H., J. D. Ullman, J. Widom, Database Systems, Pearson Prentice Hall, 2009.
  • (D5) Connoly, T., C. Begg, R. Holowczak, Business Database Systems, Addison Wesley, 2008.
  • (D6) Maleković, Mirko; Čubrilo, Mirko; Rabuzin, Kornelije. Logical Consequences in Partial Knowledge Bases // Towards Intelligent Engineering and Information Technology / Imre J. Rudas, Janos Fodor, Janusz Kacprzyk (ur.). Berlin Heidelberg : Springer-Verlag, 2009. Str. 377-388.
Slični kolegiji
  • Imperial College, London, Department of Computing, Databases;
  • Stanford University, Department of Computer Science, Database Theory;
  • University of Massachusetts, Databases;
  • University of Southern California – San Diego, Foundations of Databases;
  • University of Maryland, Department of Computer Science, Database Design.
Redoviti studenti Izvanredni studenti
izvanredni rok
Datum: 15.04.2025.
Vrijeme: 16:00
Opis: Na Fakultetu
U kalendaru ispod se nalaze konzultacije predmetnih nastavnika, no za detalje o konzultacijama možete provjeriti na profilu pojedinog predmetnog nastavnika.
2024 © Fakultet organizacije i informatike, Centar za razvoj programskih proizvoda