Topic outline

  • Uvod

    Dobrodošli na kolegij Teorija baza podataka

    Cilj kolegija Teorija baza podataka je upoznati studente s teorijom, koja je temelj za izgradnju sustava za upravljanje: relacijskim bazama podataka, temporalnim bazama podataka, deduktivnim bazama podataka (bazama znanja), poopćenim bazama podataka, polustrukturiranim bazama podataka, aktivnim bazama podataka i objektno-orijentiranim bazama podataka. Studenti će biti upoznati s novim trendovima i otvorenim problemima teorije baza podataka. Prezentacija uključuje preciznu karakterizaciju pojmova i njihovih odnosa. Uvijek je dana motivacija istraživanja (preko problemskih primjera) usporedno s praktičnim primjenama rezultata. Dodatni cilj je karakterizacija problema, čija rješavanja mogu biti teme diplomskih radova.

  • Predavanja

  • Laboratorijske vježbe

    • Tjedan 10.10.2022. - 16.10.2022.
    • Page icon
    • Tjedan 17.10.2022. - 23.10.2022.
    • File icon
    • File icon
    • Tjedan 24.10.2022. - 30.10.2022.
    • File icon
    • File icon
    • Assignment icon
    • Tjedan 31.10.2022. - 6.11.2022.
    • File icon
    • Assignment icon
    • Tjedan 7.11.2022. - 13.11.2022.
    • File icon
    • Assignment icon
    • Tjedan 14.11.2022. - 20.11.2022.
    • File icon

      Funkcija reduce prebačena je u modul functools, pa ju je potrebno posebno učitati:

      from functools import reduce
    • Assignment icon
    • Tjedan 21.11.2022. - 27.11.2022.
    • File icon

      Ako ne uspijete iz prvog pokušaja pokrenuti DES naredbom des_start, kako je opisano u prezentaciji, na kraj datoteke ~/.bashrc dodajte sljedeću liniju:

      PATH="~/software/des:$PATH"
    • Assignment icon
    • Tjedan 28.11.2022. - 4.12.2022.
    • Assignment icon
    • Tjedan 5.12.2022. - 11.12.2022.
    • File icon
    • Assignment icon
    • Tjedan 12.12.2022. - 18.12.2022.
    • File icon

      U slučaju da ne možete pokrenuti MongoDB, proučite linije 22-38 u ažuriranoj instalacijskoj skripti od 13.12.2022., a posebno linije 32-37. MongoDB server pokrećemo kao servis korištenjem naredbe sudo systemctl start mongod. MongoDB konzolu koja se spominje u prezentaciji pokrećemo naredbom mongosh.

    • File icon
    • Assignment icon
    • Tjedan 19.12.2022. - 25.12.2022.
    • File icon
    • Assignment icon

      Proučite prezentacije i slijedite upute. Rješenja predajte ovdje.

      Zadatak: Zamislimo da imamo uređaj koji odašilje događaje. Događaj koji je poslan sadrži geolokaciju. Svako kućanstvo može sadržavati N prijemnika koji osluškuju događaje (svaki prijemnik također sadrži geolokaciju). Recimo da prijemnik može osluškivati događaje koji su reproducirani u radijusu od M (npr. 10). Potrebno je napraviti upit na tok podataka koji ispisuje detalje o događaju te adresu kućanstva u kojem postoji prijemnik koji je taj događaj zaprimio.

      Hint: Takvo rješenje treba se sastojati od jednog toka podatka (dogadaj) te dvije tablice (prijemnik i kucanstvo). Tok podataka dogadaj i tablica prijemnik sadrže geolokaciju (po uzoru na primjer iz prezentacije), dok tablica kucanstvo sadrži adresu. Proizvoljno dodajte još poneki atribut u tok podataka i tablice.

      Podaci [insert] u tablicama i toku podataka neka budu konstruirani da imamo barem dva kućanstva i barem četiri prijemnika (svako kućanstvo barem jedan prijemnik). Podaci događaja neka budu konstruirani na način da sva kućanstva zaprime barem jedan događaj, no također neka postoje događaji koje neće zaprimiti niti jedan prijemnik (jer nisu u radijusu).

      Rješenje zadatka priložite kao privitak u odgovoru na zadatak. Rješenje se treba sastojati od tri datoteke: create.sql datoteka (sadrži upite korištene za kreiranje streamova/tablica te unos podataka [insert]), select.sql (sadrži upit za dohvaćanje podataka iz streama) te .txt ili sliku s rezultatom upita za dohvaćanje [select].

  • Projekti