[354] - Andmebaasid II (IDU0230) (sügis 2016) |
|
Üldist / Operatiivinfo
Erki Eessaar: Lehekülg on suletud03.09.2017 SEE LEHEKÜLG ON SULETUD! KOGU SELLEL LEHEKÜLJEL OLEV INFORMATSIOON ON MITTEAKTUAALNE! Aine uus kodulehekülg koos aktuaalse informatsiooniga asub http://maurus.ttu.ee/366 Erki Eessaar: Uus raamat11.08.2017 TTÜ raamatukokku jõudis kaks eksemplari Martin Kleppmanni uuest raamatust Designing data-intensive applications : the big ideas behind reliable, scalable, and maintainable systems. See raamat katab paljusid teemasid, mida käsitleb "Andmebaasid II" ja läheb ka sellistesse detailidesse, milleni aines ei jõuta. Soovitan seda raamatut lugeda!
Lisainfot leiab Martin Kleppmanni ajaveebist. Erki Eessaar: Võimalik lõputöö teema21.02.2017 Teema sobiks nii andmebaaside kui veebirakenduste programmeerimisega hästi kodus olijale ja pigem IAPB õppekaval õppijale.
Jätkata avatud lähtekoodiga veebipõhise metaandmetega juhitavate veebirakenduste kiirprogrammeerimise vahendi pgApex arendamist. Selle süsteemi esimese versiooni loomisega lõppenud magistritöös on arendusvaates kirjas suur hulk täiendusvajadusi. pgApexit tuleb ise katsetada, võrrelda Oracle APEXiga ja teha kindlaks, kas leidub veel täiendusvõimalusi. Järgmiseks ülesandeks on väljalaske planeerimine (release planning) – milline funktsionaalsus lõputöö tulemusena realiseerida. Tuleb valida meetod selle otsustamiseks ja seda rakendada. Kõik täiendused tuleb mudelite abil projekteerida ja ka tarkvaras realiseerida ning testida. Töö peab ka kirjeldama täienduste tegemise protsessi. Siin on pgApexi serverisse üles laetud arenduskeskkond ning siin on selle vahendi MIT litsentsiga kaitstud lähtekood. Töö tulemus peab olema samuti avatud lähtekoodiga, mida kaitseb MIT litsents. Projekt peab olema GitHubis. Töö kõrvaltegevusena tuleb teha statistikat andmebaasi skeemimuudatuste ja nendest tingitud rakenduse lähtekoodi muudatuste kohta. Erki Eessaar: Lisapunktid lisaeksamil20.01.2017 Lisaeksamil lähevad lisapunktid endiselt arvesse. Erki Eessaar: Iseseisva töö tähtaeg18.01.2017 Kõik, kes soovivad teha lisaeksamisessioonil eksamit ja iseseisev töö on positiivsele tulemusele tegemata, peavad esitama iseseisva töö hindamiseks hiljemalt 21. jaanuaril 2017 kell 23:59. Erki Eessaar: Andmete turvalisuse õppetund metsaregistri näitel18.01.2017 Soovitan kõigil, kes seda pole veel teinud, lugeda 15.01.2017 Postimehest Nils Niitra poolt kirjutatud artiklit andmelekkest metsaregistris. See on surepärane juhtumianalüüs teema 5 (andmete turvalisus) kohta.
Niitra (2017) kirjutab metsaregistrist toimunud andmelekkest. Väidetavalt luges üks artikli kirjutamise ajaks töölt lahkunud töötaja süstemaatiliselt infot isikute (nimed, sünniajad, telefoninumbrid) ja nende metsakinnistute kohta. Peale töölt lahkumist asus ta tööle erafirma metsakorraldajana. Lekkinud info alusel hakkasid metsaomanikud saama massiliselt telefonikõnesid, millega üritati neid kallutada müüma raieõigust turuhinnast madalamalt. Vahendusfirmasid huvitab põhiliselt raieõigus. Seda müüakse suure vaheltkasuga edasi metsa ülestöötamisega tegelevatele ettevõtetele. "Samad firmad tegelevad ka kinnistute vahendamisega rahvusvahelistele kontsernidele, Eesti kohalikele suurmaaomanikele ja välismaistele pensionifondidele. Mets saadakse inimestelt kätte muuhulgas neid juriidiliselt korrektsel moel pettes, kasutades selleks väga erinevaid võtteid." (Niitra, 2017) Olgu öeldud, et avaliku teabe seadus keelab riigi infosüsteemis asutada ühtede ja samade andmete kogumiseks eraldi andmekogusid. Isikuandmete kogumise koht on rahvastikuregister. Metsaregistrisse jõuavad isikuandmed siis, kui inimesed esitavad e-kava keskkonna kaudu metsaregistrile enda metsa kohta infot. Milliseid seoseid saab tõmmata selle juhtumi ja andmebaaside aines õpitu vahele?
Erki Eessaar: Küberfüüsikaliste süsteemide loeng16.01.2017 Nii andmebaaside ainetes kui ka süsteemianalüüsi ainetes on Teile räägitud süsteemide mudelipõhisest arendusest ja sellest, et süsteemid koosnevad omavahel teatud reeglite alusel suhtlevatest allsüsteemidest.
17. jaanuaril on TTÜs loeng, kus professor ühest maailma tippülikoolist räägib samast teemast küberfüüsikaliste süsteemide võtmes. Kõik huvilised on oodatud! ************* We have great opportunity to host a very special quest Prof. Stavros Tripakis from Berkeley (https://people.eecs.berkeley.edu/~stavros/) who is one of the big names in formal methods for cyber physical systems. His lecture will be on 17th of January at 12.00, room 507 ab. Please find the abstract and slides from the link below. All who are interested on formal methods and their application in CPS development are welcome. Jüri Vain Abstract
Slides http://materials.dagstuhl.de/files/16/16491/16491.StavrosTripakis.Slides.pdf Erki Eessaar: Eksami algusaja muudatus17.01.2017 kell 15:30 algama pidanud eksami algus on lükatud edasi samal päeval ja samas ruumis kella 16:00-ks.
Seega eksam toimub 17.01.2017 kell 16:00 ICT-402 Vabandan võimalike ebamugavuste pärast! Erki Eessaar: Mõtteid andmebaaside arengusuundadest07.01.2017 Kellel ei ole veel andmebaasidest mürgistust tekkinud, siis siin on minu mõtteid andmebaaside arengusuundadest. Seal on nimetatud nii hetkel "kuumi" tehnoloogiaid/lähenemisi, kui ka teemasid, millele praegu teenimatult vähe tähelepanu pööratakse, kuid mis minu arvates vajaksid lahendamist.
Üle kümne aasta uus väljaanne: Readings in Database Systems, 5th Edition. Selles esitavad andmebaasidega seotud teadus- ja arendustöö suurkujud viiteid mõnedele andmebaaside valdkonda palju ja püsivalt mõjutanud teadusartiklitele. Mis peamine, iga peatüki ees on toimetajate kommentaar, milles tutvustatakse artikleid ning kommenteeritakse andmebaasisüsteemide minevikku, olevikku ja tulevikku. Kellel on andmebaaside ja maailma selle valdkonna trendide vastu sügavam huvi, soovitan lugeda. Erki Eessaar: Veelkord isikunimedest31.12.2016 Leidub isikunimesid, mida mõned arvutisüsteemid ei suuda korrektselt töödelda. Isikunimedega tuleb tegeleda ka Teie projekti andmebaasis. Erki Eessaar: Projektist (5)29.12.2016 Kasutatud materjalide hulgas tuleb nimetada "Andmebaasid II" õppematerjalid. Erki Eessaar: Projektist (4)29.12.2016 Kes teeb rakenduse pgApexis - ka Teil on vaja luua andmebaasis uus rakendusele vastav kasutaja ja jagada sellele minimaalsuse põhimõttest lähtuvalt õiguseid. Selle kasutaja nimi/parool tuleb kirjutada rakenduse omaduste "Database username" ja "Database password" väärtuseks. Rakendus hakkab andmebaasi kasutama selle kasutaja õigustes. Erki Eessaar: Projektist (3)29.12.2016 Palun ärge unustage sügisel CASE vahendis loodud andmebaasi füüsilise disaini diagramme oma projekti dokumenti kopeerida. Nendega tuleb asendada kevadel loodud andmebaasi füüsilise disaini diagrammid. Erki Eessaar: Projektist (2)29.12.2016 Veel üks asi, mida enne esitamist üle vaadata - tiitellehel peab olema õige ainekood (IDU0230) ja aine nimi (Andmebaasid II). Erki Eessaar: Projektist29.12.2016 Kui esitate projekti hilinemisega, siis kaotate punkte. See võib takistada lävendi (31 punkti) ületamist. Teie harjutustundides või lisapunktide testidega kogutud punktid sellest lävendist kergemini üle ei aita.
Küll aga aitab lävendi ületamisele kaasa järgnevale tähelepanu pööramine.
Erki Eessaar: NoSQL27.12.2016 Andmebaaside maailm on suur ja lai ning viimasel ajal lööb seal laineid uus populaarne tegelane nimega NoSQL. Selle teema kohta ei tule eksamiküsimusi ja ei jõudnud sellest ka palju loengutes rääkida. Kuid, kellel huvi, siis jagan viiteid.
Selles dokumendis on lk 29-46 minu eestikeelne ülevaade NoSQL süsteemidest. Ingliskeelsetest allikatest soovitan esmatutvuseks järgnevaid:
Kõik need ingliskeelsed allikad pärinevad umbes 2013. aastast. Süsteemide tehnilised detailid on sellest ajast kindlasti muutunud, kuid nendes süsteemides andmete esitamise üldised põhimõtted on jäänud samaks. Erki Eessaar: Häid pühi23.12.2016 Soovin kõigile kauneid jõule ja õnnelikku vana aasta lõppu! Kohtumiseni eksamisessioonil! Erki Eessaar: Paroolide räsimisest ja trigeritest22.12.2016 Ülesandes 9 pakuti ühekordne lahendus andmebaasis olevate avatekstiliste paroolide nende põhjal leitud räsiväärtustega asendamiseks. Kui lisasite peale ülesande 9 täitmist isikute tabelisse uusi ridu ja tahate nendes ridades parooli samasugusel viisil räsida, siis tuleb muuta vaid ridu, kus parool on veel avatekstina. Seega tuleb UPDATE lausesse lisada WHERE klausel. Näiteks:
UPDATE Isik SET parool=... WHERE isik_id IN (...); Räsiväärtuste arvutamist on võimalik automatiseerida, sidudes tabeliga Isik INSERT trigeri ja UPDATE trigeri, mis käivitub andmete muutmisel parooli veerus. Huvilised leiavad selliste trigerite koodinäite Oracle jaoks kataloogist: Tarkvara saamine ja kasutamine/Oracle APEX õppevideod (APEX 4.2 baasil) dokumendist "APEXis autentimisskeemi muutmine, et kasutada parooli kontrollimiseks funktsiooni." Erki Eessaar: Nimedest22.12.2016 Hea kokkuvõte andmebaasiobjektide nimetamise tüüpprobleemidest ja nende parandamise võimalustest. Artikkel on kirjutatud PostgreSQL põhjal, kuid kehtib ka kõigi teiste SQL-andmebaasisüsteemide korral. Erki Eessaar: Trigeritest19.12.2016 Uuendasin harjutustunni ülesannet 10 (trigerid). Panin leheküljele 2 kollasele taustale kirja info selle kohta, millised trigerid oleks vaja luua, kui soovite töövihiku järgi tehtavas projektis trigerite abil täielikult realiseerida põhiobjekti seisundidiagrammis esitatud informatsioonist tulenevad kontrollid. Nagu näete, on seisundidiagrammis palju infot ja kokku tuleks luua 8 trigerit.
Rõhutan, et see pole hindamismudeli mõttes kohustuslik. Projektis peab olema tehtud miinimum kaks trigerit (PostgreSQLis võivad nende asemel olla ka reeglid). Erki Eessaar: PostgreSQL andmebaasi kiirkontroll17.12.2016 Lõin PostgreSQL disaini kontrolli süsteemis kiirtesti (Quick test). Kui valite selle, vajutate vanas keskkonnas nupule "Execute and show only queries that return rows" ning tulemuses on ridu, siis on väga tõenäoline, et Teie andmebaasi disainis on mõni puudujääk. See test ei leia kõiki võimalikke vigu, vaid sinna on olemasolevatest kontrollidest valitud sellised, mille tulemus osutab kõige tõenäolisemalt veale. Erki Eessaar: Täiendav eksamiaeg16.12.2016 Lisasin ÕISi täiendava eksamiaja 4. jaanuariks 2016 kell 13:00 ICT-402. Erki Eessaar: 23. detsember15.12.2016 23. detsembril lõpeb ülikoolis ametlikult tööpäev kell 12.00. Kuid minu harjutustunnid ja vastuvõtuaeg toimuvad vastavalt tunniplaanile.
Võimalus on veel projekti kohta küsimusi esitada. Erki Eessaar: Jõudlusprobleemide lahendamisest PostgreSQLi näitel14.12.2016 Hea lisalugemine teema 7 juurde sellest, kuidas reaalses süsteemis Sherlock Holmes`likult ühe jõudlusprobleemi põhjuseid taga otsiti ja siis see probleem lahendati. Erki Eessaar: Andmesaatkonnad13.12.2016 Juhin Teie tähelepanu uudisele andmesaatkondade kohta, mis seostub nii teemaga 5 (andmete turvalisus) kui ka 12 (hajusad andmebaasid).
Tegemist on näitega, kuidas liiasust kasutatakse andmete kaitse ühe vahendina. Pange tähele, kuidas artiklis rõhutatakse korduvalt andmete tervikluse vajadust "Selle kontseptsiooni juures ei saa me aga üle ega ümber vajadusest andmete tervikluse järele –kuidas me tagame, et mingi Eestis kasutusel olevas andmekogus ja selle peegelduses kas siis saatkondades ja mujal välismaa pilveteenustes olevad andmed oleksid igal ajahetkel samad." Teemas 12 on juttu CAP teoreemist, mille kohaselt andmete hajutatud paiknemise korral on disaineritel valida, kas tagada süsteemi kättesaadavus igal ajahetkel (leppides sellega, et andmed koopiates pole igal hetkel ühesugused) või koopiate kooskõla igal ajahetkel (leppides sellega, et süsteemi või selle osi ei saa mõnikord kasutada). Paljud (kergekaalulisemad) hajutatult paiknevad süsteemid eelistavad tagada kättesaadavust. Kriitilise tähtsuega andmetega süsteemid (nagu riiklikud süsteemid, aga ka pangad), aga ei saa kuidagi koopiate kooskõlast mööda vaadata. Erki Eessaar: Iseseisva töö projekti tegemine12.12.2016 Olen tänaseks pannud kataloogi Iseseisva töö projekti tegemine/Töö harjutustunnis (samm-sammuline juhend) kõik ülesanded, mis kokku moodustavad projekti tegemise juhendi.
Kataloogi Teooria testideks (vahetestid, eksam) valmistumine/Harjutustunni slaidid (enamasti iseseisvaks uurimiseks) on pandud viimane slaidikomplekt, millest võiks olla abi nii projektis nõutud täitmisplaani kirjelduse koostamisel, kui ka viimaseks lisapunktide testiks ja eksamiks (teema 7 kohta) ettevalmistamisel. Erki Eessaar: Andmebaasi hallatavus10.12.2016 Minult on küsitud, millele oleks eriti oluline andmebaaside õppimisel tähelepanu pöörata.
Kui maailmas on üldse midagi kindlat, siis see, et kõik on pidevas muutumises. Kui loote infosüsteemi ja selle andmebaasi, siis tuleb neid ajaga kaasaskäimiseks pidevalt kohandada. Hoolduskulud võivad lõpuks moodustada kuni 80% süsteemi kogukuludest. Selles kontekstis on väga oluline andmebaasi hallatavus. Artiklis: Riaz, M., Tempero, E., Sulayman, M., & Mendes, E. (2013). Maintainability Predictors For Relational Database-Driven Software Applications: Extended Results From A Survey. International Journal of Software Engineering and Knowledge Engineering, 23(04), 507-522. esitatakse 40 tarkvararenduse spetsialisti hulgas läbiviidud küsitluse tulemused. Selle küsitlusega sooviti teada saada, millised tegevused aitavad parandada SQL-andmebaasi põhiste andmebaasirakenduste hallatavust. Teatele lisatud failis tuuakse välja kõik sellised aspektid, millel on küsitlusele vastanute arvates mõõdukas või suur positiivne mõju hallatavusele. See fail esitab artiklis esitatud diagrammi. Erki Eessaar: Projekti hindamisest09.12.2016 Meenutan, et ...
Hindamismudelis on lehekülg Lisapunktid, kus on kirjas võimalused saada projekti eest rohkem punkte, tehes selleks projekti nõutust mahukamaks. Erki Eessaar: Lisapunktide test kuueteistkümnendal õppenädalal09.12.2016 Kuueteistkümnendal õppenädalal (19.12.2016-22.12.2016) on harjutustundide alguses võimalik teha vabatahtlikku lisapunktide testi loengute teemade 5-7 kohta. Ettevalmistamiseks on teemade slaidid ja kordamisküsimused eksamiks. Need materjalid on väljas kodulehel kataloogis Teooria testideks (vahetestid, eksam) valmistumine (teema 7 slaidid panen välja 15ndal õppenädalal).
Testil osalemiseks on kohustuslik registreerida. Registreerimine toimub Mauruse kaudu: Üldist => Teadmiste kontroll (nagu kevadel SQL kontrolltööle). Testil osalemiseks peab olema kaasas isikut tõendav dokument (nagu kevadel SQL kontrolltööl ja eksamil; raamatukogu- krediit- jms kaardid ei sobi ja nendega testi teha ei saa; autojuhiluba sobib). Erinevused võrreldes eelmise kahe lisapunktide testiga.
Erki Eessaar: Isikuandmete kogumisest Eesti mobiilirakendustes05.12.2016 Tarbijakaitseamet ja Andmekaitse Inspektsioon viisid 2016. aastal läbi ühisseire. Selle käigus vaadeldi isikuandmete töötlemist kümnes suure kasutajaskonnaga Eesti mobiilirakenduses. Kõigil kontrollitud rakendustest esines suuremal või vähemal määral puudusi isikuandmete töötlemise osas. Peamise probleemina selgus, et tihtilugu küsib rakendus igaks juhuks luba rohkematele andmetele kui tegelikult rakenduse kasutamiseks vajalik on. Erki Eessaar: Iseisva töö rakenduse osa esitamine04.12.2016 Iseseisva töö andmebaasirakenduse loomise vahendi valikul on järgnevad piirangud.
Erki Eessaar: Vastuvõtuaja ühekordne muudatus04.12.2016 Reedel 9. detsembril 2016 kell 16:00-17:00 ruumis ICT-627 toimuv vastuvõtuaeg jääb ära.
Selle asemel on vastuvõtuaeg neljapäeval 8. detsembril 2016 kell 13:00-14:00 ruumis ICT-627. Erki Eessaar: Protseduuridest ja funktsioonidest03.12.2016 Palun kõigil, kes on juba iseseisva töö mustripõhise juhendi alusel (see on eeldusaine kodulehel) oma projekti jaoks protseduure või funktsioone teinud, lugeda ja võtta teadmiseks sellesse juhendisse praegu lk 30-31 lisatud hoiatust. Erki Eessaar: Eeltöö enne 14nda õppenädala harjutustundi01.12.2016 Selleks, et saaksite 14ndal õppenädalal (05.12.2016 - 09.12.2016) võimalikult hästi kaasa töötada, palun Teil enne tundi tulekut lugeda läbi ülesande 9 dokumendi esimesed neli lehekülge. See on kodulehel väljas. Loomulikult võib ka rohkem lugeda. Erki Eessaar: Eksam01.12.2016 Kataloogis Aine korraldus on dokumendis Eksam_IDU0230_2016.pdf väljas informatsioon eksami kohta. Erki Eessaar: Iseseisva töö esitamine01.12.2016 Iseseisva töö esitamise tähtaeg on 23. detsember 2016 (kaasa arvatud). Esitamine toimub Mauruse kaudu. Enne failide saatmist lugege palun ülesandest, mis kujul tuleb vastused saata. Erki Eessaar: Töö 13nda nädala harjutustunnis26.11.2016 Selleks, et saaksite 13nda nädala harjutustunnis kaasa töötada, installeerige palun sülearvutisse, millega harjutustuses käite
VÕI logige harjutustunnis arvutiklassi arvutisse, sest seal on see tarkvara olemas. Viited tarkvarale ja ODBC andmeühenduse spetsifikatsiooni loomise juhend on õppeaine kodulehel teates "Tarkvara" (kuupäevaga 05.09.2016) Erki Eessaar: PostgreSQL BRIN (plokkide vahemiku) indeks25.11.2016
Järgnevas katsetuses on read veerus reg_aeg olevate väärtuste alusel kettal loomulikul viisil enam-vähem sorteeritud. Kasutan funktsiooni timeofday(), et iga lisatud rea jaoks genereeritaks uus ajatempel, mitte ei kasutataks ühte ajatemplit kogu lisamise transaktsiooni kohta.
CREATE TABLE Brin_test (brin_test_id INTEGER PRIMARY KEY,
INSERT INTO Brin_test(brin_test_id)
ANALYZE; \timing SELECT Count(*) AS cnt FROM Brin_test WHERE reg_aeg>'2016-11-25';
CREATE INDEX idx_brin_test ON Brin_test USING BRIN (reg_aeg); ANALYZE; SELECT Count(*) AS cnt FROM Brin_test WHERE reg_aeg>'2016-11-25';
Sellest tulenevalt võite PostgreSQL korral kaaluda BRIN indeksi loomist veergudele reg_aeg. Read on registreerimisaja järgi kettal loomulikul viisil järjestatud ja loodud indeksist oleks abi, kui ridu otsitakse registreerimisaja vahemike alusel. Sellist indeksi tüüpi ei saa EA ning RR vahendis kirjeldada. Seega tuleb sellise indeksi loomise kood ise kirjutada. Erki Eessaar: Lisapunktide test kolmeteistkümnendal õppenädalal18.11.2016 Kolmeteistkümnendal õppenädalal (28.11.2016-02.12.2016) on harjutustundide alguses võimalik teha vabatahtlikku lisapunktide testi loengute teemade 3-4 kohta. Ettevalmistamiseks on teemade slaidid ja kordamisküsimused eksamiks. Need materjalid on väljas kodulehel kataloogis Teooria testideks (vahetestid, eksam) valmistumine.
Testil osalemiseks on kohustuslik registreerida. Registreerimine toimub Mauruse kaudu: Üldist => Teadmiste kontroll (nagu kevadel SQL kontrolltööle). Testil osalemiseks peab olema kaasas isikut tõendav dokument (nagu kevadel SQL kontrolltööl ja eksamil; raamatukogu- krediit- jms kaardid ei sobi ja nendega testi teha ei saa; autojuhiluba sobib). Test toimub elektrooniliselt, Mauruse testikeskkonnas. Kasutada võib arvutiklassi arvutit või oma arvutit (erinevalt eksamist, mis toimub ainult arvutiklassi arvutites). Küsimustele vastamiseks materjale kasutada ei või. Testis on viis juhuslikult valitud küsimust, vastamiseks on aega 10 minutit. Küsimused on valikvastustega ning ainult üks vastuse variant on õige. Tulemuse saate teada kohe, kuid vastuste õigsust saab vaadata üheksanda nädala harjutustundides. Nädala jooksul saab testi teha maksimaalselt ühe korra. Kui Te ei soovi testi teha, siis võiksite tundi tulla 15 minutit peale algust. Erki Eessaar: Kaupade kategooriad18.11.2016 Kui teete projekti teemal Kaupade/toodete arvestus, siis on Teie andmebaasis tabel Kauba_kategooria.
Andmed sellesse tabelisse saaksite Te võtta Global Product Classification (GPC) rahvusvahelisest standardist. Erki Eessaar: Andmebaasidega seotud tegevuste näiteid "päriselust"16.11.2016
Erki Eessaar: Andmebaasi kapseldamine14.11.2016 Kataloogi Teooria testideks (vahetestid, eksam) valmistumine/Harjutustunni slaidid (enamasti iseseisvaks uurimiseks) on iseseisvaks uurimiseks lisatud slaidikomplekt andmebaasi kapseldamise kohta. Kui seal jääb midagi arusaamatuks, siis palun kirjutage või tulge küsima. Selle materjaliga tuleks tutvuda enne, kui hakkate tegema vaateid ja andmebaasiserveris talletatud rutiine (funktsioone ja protseduure). Erki Eessaar: Täiendavate testandmete lisamine11.11.2016 Selleks, et saada INSERT laused, mida paigutada projekti dokumendi alajaotusesse "Täiendavate testandmete lisamine", võite lisada need andmed läbi haldusprogrammide tabelitesse ning seejärel need andmed eksportida. Siin on videod, kuidas teha eksportimist PostgreSQLis ja Oracles. See on andmebaasist loogilise varukoopia tegemine (vastandina füüsilisele varukoopiale, mida tehakse failide tasemel).
Vihje Kui tegite kevadise projekti MS Accessis ja kasutasite SQL lausete käivitamiseks minu poolt pakutud abiprogrammiga faili, siis seal saate ekraanivormil SQL_skripti_käivitamine vajutada nupule, mis ekspordib MS Accessi andmebaasist CREATE TABLE, DROP TABLE ja INSERT laused (Nupp SQL lausete eksport teatele lisatud pildil). Võibolla on genereeritud INSERT lausetest kasu. Nendes INSERT lausetes puuduvad veergude nimed (tuleb ise juurde kirjutada). Kui peale faili avamist on sisu "välja lülitatud", siis tuleb eksportimise võimaldamiseks valida Enable Content.
Erki Eessaar: Milliste veergude indekseerimist võiks veel kaaluda?09.11.2016
Erki Eessaar: Tagasiside küsitlus08.11.2016 Kataloogis Aine korraldus on väljas 2. novembril 2016 loengus toimunud tagasiside küsitluse tulemuste kokkuvõte. Erki Eessaar: Rühma IAPB52 harjutustunni aeg neljapäeval 10. novembril05.11.2016 Pean osalema ühel tähtsal instituudi ja ülikooli tulevikku puudutaval koosolekul, mis algab 10. novembril 2016 kell 15:00. Seetõttu algab harjutustund neljapäeval 10. novembril 2016 kell 13:30 ruumis ICT-402. Olen kohal ja vaatan projekte. Need kes tulevad teisest tunnist saavad jooksvalt ühineda. Panen punktid kirja enne kella 15:00. Minu lahkumise järel jääb klass avatuks ning saate projekti edasi teha. Kell 16:00 algav harjutustund toimub tavapäraselt. Rühma IAPB52 üliõpilastele sobivad tunniplaani järgselt ka järgmised harjutustunni ajad.
Erki Eessaar: Töö harjutustunnis03.11.2016 Kui tunnete, et harjutustunnis on liiga palju üliõpilasi ja Te ei saa oma küsimustele piisavalt kiiresti vastuseid, siis võib teid aidata järgnev.
Erki Eessaar: PostgreSQL kasutamine ettevõtetes01.11.2016 Konkreetne näide, kuidas suur infosüsteem vahetas Oracle PostgreSQLi vastu. Siin on lühike tekstiline ülevaade. Erki Eessaar: Oracle vs. PostgreSQL26.10.2016 Koostasin kaks nimekirja, kus tõin välja endale kõige südamelähedasemad PostgreSQL eelised Oracle ees ning vastupidi. Erki Eessaar: Projekti täiendusi22.10.2016 1. Võiksite kevadise projekti kontseptuaalse andmemudeli atribuutide definitsioonides lisada olemitüübi Klassifikaator atribuudi kood juurde järgneva kitsenduse:
{Riikide koodid koosnevad vastavalt ISO 3166 standardile täpselt kolmest suurtähest.} 2. Kui Te soovite vaikimisi väärtusena registreerida ajatempli minuti täpsusega, siis kasutage vaikimisi väärtusena järgnevaid avaldisi:
3. Leiate materjalidest regulaaravaldise, mis kontrollib isikukoodi vastavust Eesti isikukoodi reeglitele. Kui Teie projekt lubab registreerida isikukoode erinevatest riikidest, siis ei saa Te seda kontrolli üks-ühele kasutada. Aga, kui soovite (pole kohustuslik), saate andmebaasis jõustada reegli "Kui isikukoodi riik on Eesti, siis isikukood peab vastama mustrile ...". Formaalsemalt kirja panduna on tegemist implikatsiooni reegliga, mille üldkuju on selline P=>Q. See tähendab, et kui kehtib tingimus P, siis peab kehtima ka tingimus Q. Sellise reegli CHECK kitsendusena jõustamiseks, saate kasutada avaldisega P=>Q loogiliselt samaväärset avaldist NOT(P) OR Q.
Erki Eessaar: Rühma IAPB53 harjutustunni aja püsiv muutus17.10.2016 Alates 21. oktoobist 2016 toimub rühma IAPB53 harjutustund õppeaines "Andmebaasid II" (IDU0230) reedeti kell 12:00-13:30 ruumis ICT-637. Erki Eessaar: Lisapunktide test kaheksandal õppenädalal14.10.2016 Kaheksandal õppenädalal (24.10.2016-28.10.2016) on harjutustundide alguses võimalik teha vabatahtlikku lisapunktide testi loengute teemade 1-2 kohta. Ettevalmistamiseks on teemade slaidid ja kordamisküsimused eksamiks. Need materjalid on väljas kodulehel kataloogis Teooria testideks (vahetestid, eksam) valmistumine.
Testil osalemiseks on kohustuslik registreerida. Registreerimine toimub Mauruse kaudu: Üldist => Teadmiste kontroll (nagu kevadel SQL kontrolltööle). Testil osalemiseks peab olema kaasas isikut tõendav dokument (nagu kevadel SQL kontrolltööl ja eksamil; raamatukogu- krediit- jms kaardid ei sobi ja nendega testi teha ei saa). Test toimub elektrooniliselt, Mauruse testikeskkonnas. Kasutada võib arvutiklassi arvutit või oma arvutit (erinevalt eksamist, mis toimub ainult arvutiklassi arvutites). Küsimustele vastamiseks materjale kasutada ei või. Testis on viis juhuslikult valitud küsimust, vastamiseks on aega 10 minutit. Küsimused on valikvastustega ning ainult üks vastuse variant on õige. Tulemuse saate teada kohe, kuid vastuste õigsust saab vaadata üheksanda nädala harjutustundides. Nädala jooksul saab testi teha maksimaalselt ühe korra. Kui Te ei soovi testi teha, siis võiksite tundi tulla 15 minutit peale algust. Erki Eessaar: Agile! : the good, the hype and the ugly / Bertrand Meyer13.10.2016 Värskelt TTÜ raamatukokku saabunud raamatu Agile! : the good, the hype and the ugly üks eksemplar on endiselt TTÜ raamatukogus saadaval. See on lisamaterjaliks esimese teema kohta, aga ka teistele ainele ja on ka laiemalt silmaringi jaoks väga kasulik.
Samuti on raamatukogus hetkel saadaval üks eksemplar raamatust SQL antipatterns : avoiding the pitfalls of database programming. Ütleksin, et see on lausa kohustuslik kirjandus kõigile SQL-andmebaaside disainiga tõsisemalt tegeleda soovijatele. Erki Eessaar: Töökorraldus harjutustundides13.10.2016 Mõnes harjutustunnis on palju osavõtjaid ja ma ei pruugi alati jõuda kõigi tööd üle vaatama. Samas, projektide teemad ning võimalikud probleemid/vead korduvad. Seega kutsun üles kuulama/vaatama, mida ma teistele rühmadele räägin ning võtma saadud info kohe enda projekti juures arvesse. Kui ma tehtud tööd tunnis üle vaatan, siis võite julgesti ligi astuda. Usun ja loodan, et see ei ole ka probleemiks üliõpilastele, kelle tööd ma parajasti vaatan. Kui on, siis andke palun sellest märku. Erki Eessaar: Isiku nõusolek enda andmete töötlemisega11.10.2016 Ka Teie töövihiku projektis on tabelis Klient veerg on_nõus_otseturundusega. 2018. aasta mais jõustub andmekaitse üldmäärus, mis karmistab oluliselt isikuandmete töötlemiseks vajaliku nõusoleku tingimusi. Erki Eessaar: Lisapunktid09.10.2016 Kataloogis Tulemused on aruanne lisapunktide kohta, mida plaanin täiendada iga nädala lõpus. Kui leiate, et seal on Teie kohta vale info, siis palun andke kohe teada. Erki Eessaar: Maurusest teadete saamine08.10.2016 Üliõpilaste tagasisides soovitakse ainete korraldusliku info meilile saamist. Täiustasin Maurust nii, et edaspidi on võimalik Maurusesse pandud üldiseid teateid kodulehe kinnitatud kasutajate meilile edasi saata. Plaanin seda teha korralduslike teadetega. Kirja teema osa algab aine kodulehe nimega (antud juhul Andmebaasid II (IDU0230) (sügis 2016)). Selle alusel saate näiteks meile otsida ja grupeerida. Samasugune kirjade saatmise funktsionaalsus on Moodles. Erki Eessaar: PostgreSQL ja uute keelte loomine01.10.2016 Mainisin harjutustunnis, et PostgreSQLis saavad arendajad võtta kasutusele uusi protseduurseid keeli (PL). Sellise keele näide on Skype poolt arendatud ja kasutatav PL/Proxy. Sellest keelest on juttu selles esitluses slaididel 6 ja 11–29. Lisaks tutvustatakse esitluses ka teisi Skype poolt kasutatavaid PostgreSQL laiendusi.
Erki Eessaar: PostgreSQL ja operaatorid30.09.2016 Harjutustunnis oli juttu, et PostgreSQLis NULL || tekstiline väärtus = NULL. Järgneva koodi võite käivitada oma andmebaasis ja see loob operaatori & mis käitub nii:
NULL & tekstiline väärus = tekstiline väärtus NULL & NULL = tühi string CREATE FUNCTION textcat_coalesce(text, text) RETURNS text AS $$
COMMENT ON FUNCTION textcat_coalesce(text, text) IS CREATE OPERATOR & (
SELECT NULL || 'katsetus' AS tulemus;
SELECT NULL & 'katsetus' AS tulemus;
Erki Eessaar: PostgreSQL 9.629.09.2016 PostgreSQL 9.6 on tänase päeva seisuga ametlikult väljas. Palju uuendusi, kuid need puudutavad suures osas andmebaasisüsteemi sisemisi tööprotsesse. Andmebaasi programmeerija jaoks palju ei muutu ja seega jääme sellel sügisel PostgreSQL 9.5 kasutamise juurde. Erki Eessaar: PostgreSQL ja fraktalid29.09.2016 PostgreSQLis kirjutatud rekursiivsete SELECT lausetega saab genereerida fraktaleid. Näiteid leiab SIIT. Võite nende päringute käivitamiseks kasutada mistahes kursuse serveri andmebaasi. Kasutage käivitamiseks programme psql või pgAdmin. Erki Eessaar: Kaugjuurdepääs PostgreSQLile23.09.2016 Serveritega seotud turvalisuse küsimustega tegeleb IT osakond. Nad on võtnud suuna sellele, et kaugligipääsudeks ülikooli serveritele peab hakkama kasutama autenditud VPNi või võtmetega SSHd. Kaugligipääs (st ligipääs väljastpoolt TTÜ arvutivõrku) apex.ttu.ee PostgreSQL pordile (5432) on blokeeritud järgmiste eranditega. Kaugligipääs on võimalik:
PostgreSQL andmebaasile rakenduse tegijad peaksid arvestama järgnevaga.
Kui soovite kodust PostgreSQLiga töötamiseks kasutada pgAdmini, siis tuleb teha ühte järgnevast.
Andmebaas on kohustuslik paigutada apex.ttu.ee serverisse, sest seal on automaattestimise vahendid ja õppejõul on sellele hindamiseks vajalik täielik juurdepääs Erki Eessaar: Programmeerimiskeelte populaarsus23.09.2016 PL/SQL on TIOBE programmeerimiskeelte populaarsuse indeks, milles Oracle andmebaasiserveris talletatud rutiinide keel PL/SQL on üsna kõrgel kohal. See on saavutus, sest tegemist pole üldotstarbelise keelega ja seda saab kasutada ainult teatud keskkondades (mõned SQL-andmebaasisüsteemid). Erki Eessaar: Paindmetoodikad21.09.2016 Kui soovite rohkem infot paindmetoodikatest, siis soovitan vaadata seda Bertrand Meyeri ettekannet (osa 1 ja osa 2), mis põhineb tema uuel raamatul. Raamat ise on olemas TTÜ raamatukogus.
TTÜ raamatukogu kaudu on tehtud üliõpilastele elektrooniliselt kättesaadavaks raamat Disciplined Agile Delivery: A Practitioner’s Guide to Agile Software Delivery in the Enterprise. See kirjeldab suurte projektide jaoks kohandatud paindmetoodikat. Siit aga leiab info, kuidas pääseda raamatule ligi ka väljaspoolt TTÜ võrku. Erki Eessaar: Lisalugemine Teema 1 slaidide juurde17.09.2016 : Royce, W. W., 1970. Managing the development of large software systems. Proceedings of IEEE WESCON. Vol. 26. No. 8.
Erki Eessaar: SQL*Plus ja teksti kustutamine16.09.2016 Tuleb välja, et SQL*Plus'is teksti kustutamiseks kasutatav klaviatuuri klahv sõltub serverisse logimise tarkvarast.
Väga segadus tekitav. Vähemasti PostgreSQLi psqlis selliseid anomaaliaid ei ole ja teksti kustutab alati Backspace. Erki Eessaar: Soovituslik lugemine16.09.2016 Thomas Kyte on Oracle andmebaasisüsteemide spetsialist ja tema sellel teemal kirjutatud raamatud on väga head. Üks nendest raamatutest - Expert Oracle Database Architecture, Third Edition - on TTÜ üliõpilastele kättesaadav elektrooniliselt, andmebaasist Safari. TTÜ ja TÜ ühistellimusena on TTÜ võrgus avatud juurdepääs üle 200-le selles andmebaasis olevale infotehnoloogia valdkonna raamatule.
Palun lugege sellest raamatust esimese peatüki osi My Approach ja The Black Box Approach. Jah, seal kiidetakse muuhulgas Oraclet. Võtke seda kergelt, sest ka mitmed teised andmebaasisüsteemid (sh PostgreSQL) on sama võimekad. Kuid seal kirjeldatav üldine andmebaasirakenduste loomise mõtteviis on selline, mida pean mõistlikuks ja millest lähtun ka käesolevas kursuses. Siit aga leiab info, kuidas pääseda raamatule ligi ka väljaspoolt TTÜ võrku. Põhimõte on, et hea andmebaasirakenduse loomiseks tuleks tunda ja kasutada andmebaasisüsteemide pakutavaid võimalusi. Lisan siia lõppu tsitaadi raamatust, mida ma tõlkima ei hakka. Viidatud osades tuuakse mõned ilmekad näited selle kohta, kuidas rakenduse arendajate poolne andmebaasi/andmebaasisüsteemi musta kastina vaatamine viis halbade tulemusteni. My point about the power of database features is not a criticism of tools or technologies like Hibernate, EJBs, and container-managed persistence. It is a criticism of purposely remaining ignorant of the database and how it works and how to use it. The technologies used in this case worked well—after the developers got some insight into the database itself. The bottom line is that the database is typically the cornerstone of your application. If it does not work well, nothing else really matters. If you have a black box and it does not work, what are you going to do about it? About the only thing you can do is look at it and wonder why it is not working very well. You can’t fix it, you can’t tune it. Quite simply, you do not understand how it works—and you made the decision to be in this position. The alternative is the approach that I advocate: understand your database, know how it works, know what it can do for you, and use it to its fullest potential. Erki Eessaar: Microsoft Imagine21.09.2016 Kui Teil veel ei ole juurdepääsu Microsoft Imagine (vana nimega Microsoft Dreamspark) keskkonnale, aga soovite seda selle semestri jooksul saada (sealt keskkonnast saab näiteks MS Accessi), siis peate esitama juurdepääsu taotluse selle keskkonna kaudu hiljemalt 26. oktoobril 2016 kell 23:59. Varem küsitud juurdepääsud kehtivad endiselt. Erki Eessaar: Kuidas valida andmebaasisüsteemi?13.09.2016 Hiljutine arutelu teemal, kuidas ettevõtted valivad enda infosüsteemide jaoks andmebaasisüsteeme ning milliseid meetodeid andmebaasisüsteemide arendajad kasutavad, et leida uusi kliente ja hoida kinni olemasolevaid. Erki Eessaar: Iseseisva töö teema registreerimine09.09.2016 Tähtajaga 16. september 2016 tuleb registreerida iseseisva töö teema, rakenduses realiseeritav töökoht, esialgne kasutatavate vahendite valik ja üliõpilased, kes seda tööd üheskoos teevad. Kui otsustate teha midagi teisiti, kui vastuses kirjas, siis õppejõu teavitamiseks piisab ainult selle vastuse muutmisest.
Iseseisva töö registreerimiseks valige õppekeskkonna vasakpoolsest menüüst Ühte tööd võib teha koos kuni kolm inimest. Kui teete tööd mitmekesi, siis peab ülesandele vastama ainult üks tegijatest. Kutsun üles koonduma ja tegema projekti mitmekesi! Nimetan järgnevalt ka mõningaid tüüpilisi probleeme vastustes ja loodan, et Te väldite neid.
Erki Eessaar: NoSQList09.09.2016 Minult küsiti tunnis, kas ja millal eelistada NoSQL andmebaasi SQL-andmebaasi loomisele.
Arvan, et käesolevaks ajaks on NoSQL jõudnud haibitsüklis ülisuurte ootuste tipust üle, pettumuste lohust läbi, võibolla isegi juba taasavastamise tõusule. Üha rohkem ilmub seisukohti ja tähelepanekuid, mis osundavad lähenemise või süsteemide üldistele puudujääkidele (näide1, näide2) ja konkreetsete süsteemide probleemidele (näide3, näide4, näide5). Muidugi saab öelda, et ühes või teises NoSQL süsteemis selliseid probleeme ei ole, kuid küsimus on, kuidas see toode kümnete teiste seast üles leida ja kas on kindel, et selle teinud idufirma pole viie aasta pärast hingusele läinud. NoSQL süsteemid peavad oma arengus jõudma produktiivsuse platoole ja tõsised tegijad välja settima. Näen tõsist probleemi selles, et NoSQL süsteeme üritatakse kasutada ka seal, kus see pole kindlasti mõistlik. Teha raamatupidamise tarkvara NoSQL süsteemi põhjal on sama lahe kui kratsida kukalt pannes käe jalge vahelt läbi. Alguses paistab huvitav ja ekstravagantne, sellest tehtud piltidega saab sotsiaalmeedias praalida - pärast on kael ja keha kanged ning selg paigast ära. Mulle meeldis ühes arutelus võrdlus andmete ja koduse tööriistakuuri vahel. Oletame, et Teil on kuuris palju tööriistu. Üks võimalus on võtta erinevat tüüpi tööriistade jaoks kasutusele erinevad kastid. Kahtlemata võtab kastide valimine, neile siltide kleepimine ning tööriista ära panemisel õige kasti otsimine aega. Andmebaaside maailmas vastab sellele skeemi defineerimine SQL/relatsioonilises andmebaasis. Selle tulemusena on vajaliku tööriista leidmine kiire. Kas tõesti oleks lahendus, kus kuuris on hulk kaste ja tööriist pannakse esimesse vabasse kasti, kokkuvõttes kiirem ja parem? Andmebaaside maailmas vastaks sellele skeemitu NoSQL andmebaasi kasutamine. Näen NoSQL süsteemide peamist kasutusvaldkonda suurandmete (big data) hoiustamisel - andmeid on hästi palju, neid tuleb nagu kosest juurde ja andmete struktuur ei ole ühe vitsaga löödud, vaid küllaltki muutlik. Kena oleks need kuskile kiiresti ja odavalt ära panna, lootuses, et ehk on hiljem aega, tahtmist ja raha, et neid lähemalt uurida. Tööriistade näitel oleks see umbes midagi sellist. Asjade hunnikusse paigutajal oli oma süsteem ja ta leiab vajaliku kiiresti üles. Teistel see nii kiiresti ei lähe. Teisalt, nagu tõestavad seriaalid nagu American Pickers, võib sellisest hunnikust igasugu väärt kraami leida. Samamoodi ei tasu ka andmeid lihtsalt ära visata. Graafipõhistel andmebaasisüsteemidel on kindlasti oma kindel koht igat sorti võrgustike (kes on kelle sõber, kust kuhu tee viib või kaabel jookseb jne) andmete käepäraseks muutmisel. Arvan, et mõistlikuks arengusuunaks on SQL ja NoSQL kokkusulamine, mille näiteks on PostgreSQLis JSON tüüpi andmetega töötamise võimalus. See võimaldab lahendusi, kus ühes geograafilises punktis oleva andmebaasi piires on teatud osa andmetest esitatud rohkem struktureeritult (eraldi veergudes) ja muutlikum osa andmeid on surutud kokku JSON andmeväärtustesse (vt kolmandat disaini selles näites). Kõiki neid andmeid kantseldab ACID omadusi toetav transaktsioonide juhtimise moodul. NoSQL and Technical Debt on ajaveebi postitus, mis selgitab, miks NoSQL süsteemide ilmumine pole muutnud väärtusetuks SQLi ning andmebaaside projekteerimise õppimist. Nende oskuste puudumine on arendajatel võlg, mis tuleb hiljem intressidega tagasi maksta. NoSQL oma "skeemitute" andmetega loob tegelikult tehnilist võlga. Erki Eessaar: Vääritu käitumise menetlemise kord06.09.2016 Sellest sügisest kehtib Infotehnoloogia teaduskonnas õppuri akadeemiliste tavade rikkumise ja vääritu käitumise menetlemise kord. Selles dokumendis määratakse ära, milliseid õppuri poolseid tegevusi loetakse akadeemiliselt väärituks käitumiseks ning millised on tegevused ja võimalikud ametlikud tagajärjed õppuri jaoks (noomitus, eksmatrikuleerimine) kui ta millegi sellisega hakkama saab.
Palun Teilt järgnevat.
Sellega teete tegelikult neile palju halba, sest nad ei õpi midagi!!! Veel enam, Te teete kahju endale, sest teadmisteta/oskusteta lõpetajad kahjustavad tööandjate silmis kõigi diplomisaajate mainet. Kui mõni projekti kaaslane ei panusta piisavalt, siis arvake ta palun oma projektist välja ja teavitage sellest (nt õppekeskkonna kaudu) õppejõudu. Erki Eessaar: Facebook05.09.2016 Loengutes ja harjutustes teevad paljud üliõpilased lisaks apex.ttu.ee serverile praktilisi katseid ja vaatluseid ka Facebookis :-) Kelle huvi pakub, siis sellele teatele lisatud faili jaotises 2.1 antakse ülevaade Facebooki andmebaasi arhitektuurist. Artikkel ise seostub teemadega 6 ja 12. Erki Eessaar: Miks peavad ka veebi/rakenduste programmeerija ning neile ülesannete jagajad andmebaase hästi tundma?05.09.2016 Motivatsioonikõne asemel neile, kes näevad oma tulevast elu progejana või (projekti)juhina ja arvavad, et andmebaaside kohta eriti midagi teadma ei pea - väga eluline näide (seostub teemaga 6 - transaktsioonid ja lukustamine), miks on vaja andmebaaside tehnoloogiat tunda. Erki Eessaar: Andmebaasi disaini kontrollimine05.09.2016 Teie töö hindamiseks kasutatakse automatiseeritud disaini kontrollimise vahendit. Teil on võimalus jooksvalt ise oma andmebaasi selle abil analüüsida. Eeldus on, et andmebaas on apex.ttu.ee serveris (see on muide projekti reeglitega nõutud).
Vahend käivitab andmebaasi süsteemikataloogi põhjal päringuid. Osa päringuid suudavad leida vigu. Osa aga otsivad andmebaasi disainist halva lõhnaga kohti (vt halvasti lõhnav disain ja halvasti lõhnav kood). Halvasti lõhnavad kohad ei takista andmebaasi ja seda kasutavate süsteemide toimimist, kuid muudavad andmebaasi kasutamise, haldamise või arendamise mingis aspektis raskemaks kui see võiks olla. Halvasti lõhnavad kohad on sügavamate probleemide sümptomid. Nende probleemide lahendamine aitab koodi puhastada. Halb lõhn on tehnilise võla tunnus. Tehniline võlg tähendab, et "asi" töötab, kuid saaks olla sisemiselt tehtud paremini. Kuna praegu on seal midagi "üle jala" lastud, siis see on probleem tulevikus, kui "asja" on vaja edasi arendada. Kliendile kiiresti töötava asja üleandmiseks on võetud võlga tuleviku arenduste arvelt. Tehnilist võlga aitab vähendada refaktoreerimine. Kui teete oma projekti PostgreSQLis, siis minge aadressile. Logige sisse kasutades apexi kasutajanime ja parooli. Valige kontrollitav andmebaas. Ilmselt on see samasuguse nimega nagu ühe projekti tegija kasutajanimi ja sisaldab tema matriklinumbrit. Valige "Käivita saadaolevaid teste". Valige test "Databases II (fall 2016)". Vaadake päringu tulemusi, milles on üks või rohkem rida. Lugege kirjeldust, vaadake tulemusi. Usaldusväärsus on hinnang sellele, kuidas päring oma eesmärke täidab.
Soovi korral võite kasutada ka kasutajaliidese vana versiooni, kus kõik tulemused on ühel lehel. Mina kasutan tundides Teiega koos andmebaase vaadates seda. Päringud on samad, kasutajaliides erinev. Kui teete oma projekti Oracles, siis minge aadressile. Päringud, mida saate sealt kaudu käivitada leiate andmebaasi disaini kontrollimiseks mõeldud SQL laused kataloogist Iseseisva töö projekti tegemine. 990999 tuleb asendada matrikli numbriga, mida kasutate projekti tulemusena loodud andmebaasiobjektide nimedes. Võite neid päringuid regulaarselt ise käivitada ja interpreteerida üritada. Küsimuste korral pöörduge õppejõu poole. Oleks väga hea, kui mõnes semestri lõpu harjutustunnis, kui projekt juba valmis saama hakkab, jõuaksite koos õppejõuga need päringu tulemused üle vaadata. Erki Eessaar: Juurdepääs serverile05.09.2016 Saamaks juurdepääsu serverile apex.ttu.ee, tuleb täita esimene punkt ülesandest nr 1, mis on kataloogis Iseseisva töö projekti tegemine/Töö harjutustunnis (samm-sammuline juhend). Erki Eessaar: Suur pilt05.09.2016 Suur pilt (1. juuni 2015 seisuga) erinevatest andmebaasitehnoloogiatest ning neid realiseerivatest tarkvarasüsteemidest. Erki Eessaar: Üliõpilase töökeskkond05.09.2016 Üliõpilaste töökeskkond:
Oracle Application Express abil tehtud rakenduste näiteid:
2016. aasta kevadel arendas hr Rait Raidma välja Oracle APEXile sarnase süsteemi nimega pgApex, mis põhineb PostgreSQLil. Magistritööd saab lugeda siit.
PHP rakenduse näide:
NB! apex.ttu.ee serveris tuleb PHP rakendus paigutada kataloogi /usr/local/apache2/htdocs alamkataloogi.
Abivahendid:
Dokumentatsioon:
Lisainfo:
Erki Eessaar: Tarkvara05.09.2016 PostgreSQL andmebaasiga töötamiseks võib kasutada tasuta pakutavat programmi pgAdmin. Kuna serveris on PostgreSQLi kõige viimane stabiilne versioon, siis koostöö saavutamiseks kasutage ka PgAdmin'i (generatsioon 3) viimast stabiilset versiooni (1.22).
Oracle andmebaasiga töötamiseks soovitan kasutada Oracle poolt pakutavat programmi Oracle SQL Developer (ülikooli serveriga ühenduse loomisel SID= orcl). Tarkvara on tasuta, kuid selle allalaadimiseks tuleb ennast registreerida. apex.ttu.ee serveriga SSH ühenduse loomiseks võib kasutada programmi PuTTY või Bitvise SSH Client. Samuti võib mitte-kommerts otstarbel kasutada SSH Secure Shell klienti versiooni 3.2, kuid see on juba üsna vana ja ebaturvaline. Selles lõigus nimetatud programmidest piisab ühest! apex.ttu.ee serverisse failide ülekandmiseks ja sealt failide allalaadimiseks võib kasutada programmi WinSCP. Tegelikult sisaldavad ka Bitvise ja SSH Secure Shell programmid sellist funktsionaalsust ja siis poleks WinSCPd vajagi. Lähtekoodiga (sh SQL lausetega) töötamiseks sobib hästi tekstiredaktor SciTe või Notepad++. Valikuline PostgreSQL andmebaasisüsteemi kasutava kahekihilise klient-server süsteemi loomiseks läheb vaja PostgreSQL ODBC draivereid. Valige kõige hilisem versioon. Milline draiver valida ja kuidas andmeühendust seadistada lugege palun teatele lisatud failist. PHP rakenduste genereerimiseks võib kasutada SQL Maestro koodigeneraatorit PostgreSQL jaoks või SQL Maestro koodigeneraatorit Oracle jaoks. Kui PostgreSQLiga suhtlemiseks pakutud vahenditest väheks jääb, siis siit leiab veel alternatiive.
Erki Eessaar: Registreerimine05.09.2016 Lehele ligipääsemiseks tuleb ennast registreerida.
Registreerumise järel peate ootama kuni õppejõud teie juurdepääsu õiguse kinnitab.
|