Uvod

  • 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.
    • ikona Stranica
    • Tjedan 17.10.2022. - 23.10.2022.
    • ikona Datoteka
    • ikona Datoteka
    • ikona Zadaća
    • Tjedan 24.10.2022. - 30.10.2022.
    • ikona Datoteka
    • ikona Datoteka
    • ikona Zadaća
    • Tjedan 31.10.2022. - 6.11.2022.
    • ikona Datoteka
    • ikona Datoteka
    • ikona Zadaća
    • Tjedan 7.11.2022. - 13.11.2022.
    • ikona Datoteka
    • ikona Zadaća
    • Tjedan 14.11.2022. - 20.11.2022.
    • ikona Datoteka

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

      from functools import reduce
    • ikona Zadaća
    • Tjedan 21.11.2022. - 27.11.2022.
    • ikona Datoteka

      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"
    • ikona Zadaća
    • Tjedan 28.11.2022. - 4.12.2022.
    • ikona Datoteka
    • ikona Zadaća
    • Tjedan 5.12.2022. - 11.12.2022.
    • ikona Datoteka
    • ikona Zadaća
    • Tjedan 12.12.2022. - 18.12.2022.
    • ikona Datoteka

      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.

    • ikona Datoteka
    • ikona Zadaća
    • Tjedan 19.12.2022. - 25.12.2022.
    • ikona Datoteka
    • ikona Zadaća

      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