Aine tutvustus
Olulised viited
Eesmärk: Õppeaine eesmärgiks on anda teadmisi andmebaasisüsteemide arhitektuurist ja tööpõhimõtetest ning süvendada SQL-andmebaaside projekteerimise ning programmeerimise oskust.
Olulised kuupäevad
| Tähtaeg | Kirjeldus |
|---|---|
| 08.09.2025 | Semestri õpingukava esitamise lõpptähtaeg. |
| 09.09.2025 | Vaja küsida juurdepääs serverile, et saaks teise nädala praktikumis kaasa töötada. Juurdepääsu küsimise juhend on ülesande 1 punktis 1. |
| 12.09.2025 | Iseseisva töö teema registreerimine. Täpsem info. |
| 12.09.2025 | Täita ülesande 1 kõik ülejäänud punktid. |
| 01.09.2025-14.09.2025 | Palun vastake SIIN anonüümsele küsitlusele Teie andmebaaside alase tausta ja kursusele seatud ootuste kohta. |
| 19.09.2025 | Lugeda "Andmebaasid I" kodulehelt mõttega läbi muster "Põhiolemite hetkeseisundi registreerimine SQL-andmebaasis". Need kes pole "Andmebaasid I" õppinud, lugege seda palun ettekujutuse saamiseks kursuse töö oodatavast tulemist. Need kes on "Andmebaasid I" õppinud, lugege seda palun mälu värskendamiseks Juhend algab analüüsi mudelitega, kuid jõuab välja andmebaasi disaini ja realisatsioonini ning samuti rakenduse realisatsioonini Oracle APEXis ja MS Accessis. Töös esitatakse protseduuride ja trigerite näited Oracle jaoks, kuid kõik need näited on realiseeritavad ka PostgreSQLis. See dokument võiks muuhulgas anda inspiratsiooni, milliseid protseduure/funktsioone ning trigereid oma projektis realiseerida. |
| 26.09.2025 | Lugeda "Andmebaasid I" kodulehelt mõttega läbi muster "Põhiolemite seisundimuudatuste võimaldamine graafilises kasutajaliideses". |
| 28.09.2025 | Kui soovite töömahu arvestuse eest punkte, siis tuleb vahetulemus SIIA vastava ülesande vastusena üles laadida. |
| 10.10.2025 | Lugeda "Andmebaasid I" kodulehelt mõttega läbi muster "Põhiolemite teatavate seisundimuudatuste keelamine SQL-andmebaasis". |
| 01.09.2025-24.10.2025 | Esimeseks vabatahtlikuks eksami vahetestiks (loengu teemad 1 ja 2) harjutamine SIIN keskkonnas. |
| 21.10.2025-24.10.2025 | Esimene vabatahtlik eksami vahetest (loengu teemad 1 ja 2) (praktikumide alguses). |
| 26.10.2025 | Kuupäev, peale midagi ei saa üksik projekti tegija liituda olemasoleva rühmaga (kaks üliõpilast), et nende projekti edasi teha. Endiselt on lubatud projektist eraldumine ja projekti üksinda tegemine, projekti liikme projektist väljaarvamine teiste liikmete poolt ning samuti kahe või kolme üksinda projekti tegija üheks tegijate rühmaks liitumine. |
| 25.10.2025-01.11.2025 | Anonüümse tagasiside andmise periood "Mudaste kaartide" põhimõttel. Tagasisidele andmiseks vajutage palun SIIA lingile. |
| 23.11.2025 | Kui soovite töömahu arvestuse eest punkte, siis tuleb vahetulemus SIIA vastava ülesande vastusena üles laadida. |
| 25.10.2025-28.11.2025 | Teiseks vabatahtlikuks eksami vahetestiks (loengu teemad 3 ja 4) harjutamine SIIN keskkonnas. |
| 25.11.2025-28.11.2025 | Teine vabatahtlik eksami vahetest (loengu teemad 3 ja 4) (praktikumide alguses). |
| 16.12.2025-19.12.2025 | Kolmas vabatahtlik eksami vahetest (loengu teemad 5-7) (praktikumide alguses). |
| 29.11.2025-19.12.2025 | Kolmandaks vabatahtlikuks eksami vahetestiks (loengu teemad 5-7) harjutamine SIIN keskkonnas. |
| 01.09.2025-19.12.2025 | UML ülesannete lahendamise võimalus punktide saamiseks SIIN keskkonnas. Tuleb lahendada ülesanded kogumist 2025_ITI0207. Avatud kuni 19. detsember 2025 kell 11:00. |
| 01.09.2025-19.12.2025 | SQL ülesannete lahendamise võimalus punktide saamiseks SIIN keskkonnas. Tuleb lahendada ülesanded kogumist 2025_ITI0207. Avatud kuni 19. detsember 2025 kell 11:00 |
| 30.09.2025-19.12.2025 | Iseseisva töö projektiga praktikumides tegelemine. Kui käite praktikumides kohal (olgu siis füüsiliselt või virtuaalselt - läbi MS Teamsi) ja tegelete seal projektiga tulemuslikult, siis see annab aktiivsuspunkte. Projekti tegemise juhend ilmub järk järgult kataloogi Töö praktikumis (samm-sammuline juhend) ja materjalide nädalate kaupa vaatesse. |
| 20.12.2025-27.12.2025 | Periood, mille jooksul esmakordselt esitatud iseseisev töö saab hilinemise eest 5 miinuspunkti. |
| 19.01.2026 | Kõige viimane päev, millal käesoleval semestril saab iseseisvat tööd esitada. |
| 03.01.2026-19.01.2026 | Periood, mille jooksul esmakordselt esitatud iseseisev töö tähendab, et autorid kaotavad praktikumides kogutud aktiivsuspunktid. |
| 28.12.2025-19.01.2026 | Periood, mille jooksul esmakordselt esitatud iseseisev töö saab hilinemise eest 10 miinuspunkti. |
| 20.12.2025-19.01.2026 | Iseseisva töö esitamise periood. Iseseisva töö esitamise tähtaeg on 20. detsember 2025 kell 12:00 (südapäev) Hilisem esitamine tähendab sanktsioone. Täpsem info. Töö tuleb esitada Mauruse kaudu SIIN. |
| 21.01.2026 | Viimane eksam käesoleval semestril. |
| 01.09.2025-21.01.2026 | SQLi enesekontroll SIIN keskkonnas. See test on mõeldud iseseisvaks harjutamiseks. Sellist testi hinde peale ei tehta. Enamik selle testi küsimusi on sellised, mis lõpptesti küsimuste hulka ei kuulu. Samas on see võimalus oma SQLi teadmised proovile panna. |
| 01.09.2025-21.01.2026 | PostgreSQL ja Oracle andmebaaside programmeerimise enesekontroll SIIN keskkonnas. See test on mõeldud iseseisvaks harjutamiseks. Sellist testi hinde peale ei tehta. Kõik selle testi küsimused on ka küsimuste hulgas, millest valitakse hindelise lõpptesti küsimused. Kuigi osad küsimused on teooria kohta, on paljud ka praktilise kallakuga. Küsimused põhinevad eeskätt praktikumide materjalidel. Meenutan, et kuigi projekti peab tegema ühes andmebaasisüsteemis, on testis küsimusi mõlema väljapakutud andmebaasisüsteemi kohta. |
| 29.11.2025-21.01.2026 | Eksamiks harjutamine SIIN keskkonnas. |
Aine kirjeldus
Eesmärk
Anda teadmisi andmebaasisüsteemide arhitektuurist ja tööpõhimõtetest ning süvendada SQL-andmebaaside projekteerimise ning programmeerimise oskust.
Õpiväljundid
Aine läbinud tudeng:
- teab, kuidas toimub andmebaaside projekteerimine ja realiseerimine koskstiilis ja iteratiivsel viisil süsteemiarenduse korral;
- teab SQL-andmebaasisüsteemide arhitektuure ja tööpõhimõtteid;
- teab SQL-andmebaaside turvalisuse tagamiseks kasutatavaid meetmeid;
- teab meetmeid, mida SQL-andmebaasisüsteemid rakendavad, et võimaldada andmebaasi kasutamist korraga paljude kasutajate poolt;
- teab SQL-andmebaasides andmebaasioperatsioonide töökiiruse parandamiseks kasutatavaid meetmeid;
- tunneb algtasemel objektorienteeritud, NoSQL ja objekt-relatsioonilisi andmebaasisüsteemide põhimõtteid;
- tunneb algtasemel hajusaid andmebaase, andmeaitu ja andmevakku ning on tuttav nende projekteerimise iseärasustega;
- oskab disainida tehingutöötluseks mõeldud paksu jagatud SQL-andmebaasi ja programmeerida andmebaasi kasutades serveri andmebaasisüsteemi (andmebaasisüsteemide valik esitatakse semestri alguses). Lisaks oskab luua andmebaasi kasutava rakenduse ühes enda valitud vahendis.
Hindamiskriteeriumid
Arvud näitavad, milliste kriteeriumite abil hinnatakse milliseid õpitulemusi.
- Õpiväljundite 1, 3-5, 8 kontrollimine - Iseseisev töö (projekt), mille eesmärgiks on andmebaasi projekteerimine ning realiseerimine. Üliõpilased peavad täiendama õppeaines "Andmebaasid I" koostatud iseseisvat tööd. Kellel seda ei ole või kes ei taha tehtud "Andmebaasid I" iseseisva tööga jätkata, saab selle valida õppejõu poolt välja pandud "Andmebaasid I" iseseisvate tööde hulgast. Tegemist on eksamieeldusega. Annab kõikidele nõuetele vastates kuni 60 punkti. Soovijad võivad teha projekti nõutust mahukamaks ning suurendada sellega projekti eest saadavate punktide arvu. Täpsem info on hindamismudelis.
- Õpiväljundite 1, 3-5, 8 kontrollimine - Iseseisva töö kohta praktikumides ülesannete lahendamine. Annab aktiivsuspunkte.
- Õpiväljundite 6 ja 8 kontrollimine - SQL ülesannete lahendamine. Võimalik on lahendada vähemalt 75 ülesannet ja saada kokku vähemalt 75 punkti (iga ülesande õigesti lahendamine annab ühe punkti).
- Õpiväljundite 1 ja 8 kontrollimine - UML ülesannete lahendamine. Võimalik on lahendada vähemalt 20 ülesannet ja saada kokku vähemalt 20 punkti (iga ülesande õigesti lahendamine annab ühe punkti).
-
Kõikide õpiväljundite kontrollimine - Eksam. Valikvastustega test, kus on 30
küsimust, kus iga õige vastus annab ühe punkti. Küsimused valitakse juhuslikult suurema hulga
küsimuste seast. Annab kuni 30 punkti. Järgnevalt nimetatavad vahetestid võimaldavad teenida
eksamile juurde kuni 18 punkti. Seega kokku võib eksami punktisumma olla kuni 30+18=48 punkti.
- 8ndal õppenädalal vabatahtlik vahetest õpiväljundi 1 hindamiseks, kus on 12 valikvastustega küsimust, millest iga iga õige vastus annab 0.5 punkti.
- 13ndal õppenädalal vabatahtlik vahetest õpiväljundi 2 hindamiseks, kus on 12 valikvastustega küsimust, millest iga iga õige vastus annab 0.5 punkti.
- 16ndal õppenädalal vabatahtlik vahetest õpiväljundite 3-5 hindamiseks, kus on 12 valikvastustega küsimust, millest iga iga õige vastus annab 0.5 punkti.
Täiendavad võimalused punktide saamiseks
- Arvepidamine õppeainega seotud tegevustele kulutatud aja üle ning tulemuse määratud viisil, ajal ja kohas esitamine, annab 10 punkti.
- Lisaks praktikumides projektiga tegelemisele on võimalik saada ka muid aktiivsuspunkte (vigade leidmine ja paranduste pakkumine, probleemidele lahenduste pakkumine, huvitavad lahendused ülesannetele jms).
Olulised märkused
- Vahetestide punktid, SQL punktid, UML punktid, töömahu logimise punktid ja aktiivsuspunktid lähevad arvesse ainult saamise semestril.
- Kui iseseisev töö esitada esmakordelt ühe nädala jooksul peale töö esitamise tähtaega, siis vähendab see töö punktisummat viie punkti võrra.
- Kui iseseisev töö esitada esmakordselt rohkem kui üks nädal peale esitamise tähtaega VÕI peale parandamist teistkordselt, siis väheneb töö punktisumma kümne punkti võrra (sellisel juhul eelmises punktis nimetatud viiepunktilist vähendamist ei rakendata).
- Kui iseseisev töö esitada esmakordselt rohkem kui kaks nädalat peale esitamise tähtaega või tuleb esitada iseseisva töö parandatud versioon uuesti hindamiseks, siis iseseisva töö autorite praktikumide aktiivsuspunkte lõpphinde panemisel ei arvestata.
- Haiguse või haiguskahtluse korral saab kokkuleppel õppejõuga teha tegevusi füüsiliselt ülikooli kohale tulemata (aktiivsuspunktide kogumine, eksam) või saab neid järgi teha (vahetestid).
Hinde kujunemine
Saadud punktid taandatakse hindamisskaalale:
- 170 punkti või rohkem – hinne 5 (suurepärane)
- 140–169 punkti – hinne 4 (väga hea)
- 110–139 punkti – hinne 3 (hea)
- 80–109 punkti – hinne 2 (rahuldav)
- 50–79 punkti – hinne 1 (kasin)
- 49 punkti või vähem – hinne 0 (puudulik)
Võimalikku lõpphinnet sõltuvalt vahetulemusest saab arvutada hindekalkulaatoriga.
Teemad
Andmebaaside disain erinevate arendusmetoodikate korral. Serveri SQL-andmebaasisüsteemide võimalused. Andmebaasisüsteemide arhitektuurid. Andmebaasi turvalisuse tagamine. Transaktsioonide haldus. SQL andmekäitluskeele lausete töötlemine ja optimeerimine. Objektorienteeritud andmebaasid. NoSQL süsteemid. Objekt-relatsioonilised andmebaasisüsteemid. Hajusad andmebaasid. Andmeaidad ja andmevakad. Praktikumides kasutatakse serveri andmebaasisüsteeme Oracle ja PostgreSQL.
Soovituslik kirjandus
- Paljud viidatud raamatud on loetavad O'Reilly platvormil.
- Väljastpoolt ülikooli on vajalik FortiClient VPN.
- Juhend: Kuidas kasutada O'Reilly digitaalset platvormi?
- Raamatukogu lingid (ESTER) viitavad füüsilistele koopiatele.
- Nende allikate lugemine on vabatahtlik ja mõeldud vaid sügavama huvi rahuldamiseks. Aine edukaks sooritamiseks piisab täielikult aine kodulehel olevatest materjalidest.
1. Üldine andmebaaside teooria ja disain
- Database Systems: A Practical
Approach... (Connolly & Begg).
Katab kõik kursuse teemad (v.a NoSQL). Klassikaline õpik. - An Introduction to Database
Systems (Date).
Katab kõik kursuse teemad (v.a NoSQL). Teoreetilise kallakuga. - Designing Data-intensive
Applications (Kleppmann).
Toetab teemasid 3, 4, 6, 7, 9, 12. Kaasaegne käsitlus skaleeruvusest. (E-raamat) - Physical Database Design (Lightstone et al.).
Katab teema 4 (füüsiline disain). (E-raamat O'Reilly | E-raamat EBL)
2. SQL ja praktiline arendus
- SQL Antipatterns
(Karwin).
Väga kasulik iseseisva töö tegemisel. (E-raamat | Slaidid) - Defensive
Database Programming with SQL Server (Kuznetsov).
Toetab teemasid 4, 5, 6 ja iseseisvat tööd.
3. Agiilne arendus ja NoSQL
- Building the Agile Database
(Burns).
Toetab teemasid 1 ja 4. Kuidas ühendada andmebaasid ja agiilne metoodika. - Agile! : The Good, the Hype and
the Ugly (Meyer).
Toetab teemat 1. Kriitiline vaade agiilsusele. - NoSQL Distilled (Sadalage &
Fowler).
Katab teema 9 (NoSQL osa). Lühike ja selge sissejuhatus. (E-raamat)
Veel suurema valiku lisamaterjale leiate SIIT (kasutajanimi: SIS2, parool: SIS2).
Aine tutvustus TI-sõbralikus markdown formaadis: