Patstāvīgie darbi
Termiņi
Iesniegšana
Patstāvīgajiem darbiem tiek rekomendēts izmantot Ubuntu Linux operētājsistēmu. Lai noteiktu prasmi lietot attiecīgos rīkus, darba gaitā ir jāsagatavo dažādi faili formā 012abc.b.c.ddd, kur:
- 012abc ir studenta identifikators,
- b ir patstāvīgā darba numurs formā 1, 2, u.t.t.
- c ir darbā iesniedzamā faila numurs formā 1, 2, u.t.t.
- ddd ir faila paplašinājums
Piemēram, 1. mājas darba faila nosaukums ir formā: 012abc.1.1.txt
Var augšuplādēt tikai pareizi nosauktu failu. Darbus var iesniegt vairākkārt. Tad jaunākā faila versiju uzraksta virsū iepriekšējai. Iesniegto darbu pārskats tiek atjaunots pēc faila saglabāšanas un reizi dienā 7 no rīta.
Lai iegūtu maksimālo novērtējumu, jāiesniedz visi pārbaudes darbi. Iesniedzot vai pieņemot daļu no pārbaudes darbiem, iegūst attiecīgu daļu no patstāvīgo darbu atzīmes. Par vienādiem darbiem atzīme tiek dalīta uz iesniedzēju skaitu.
1. Mācību vides sagatavošana sagatavošana ar Ubuntu Linux
Mācību vidi var sagatavot sekojošā veidā:
- Izmantojot VmWare vai VirtualBox
- Izmantojot Wubi
- Standarta veidā cietajā diskā
- Sāknējamā USB diskā
Uzziņām skatīt
Pārbaudes darbs
Fails formā 012abc.1.1.txt, kuru iegūst sekojoši:
Atver termināli un sagatavo vienkāršu neformatēta teksta failu, pa vienai rindiņai ievadot komandas:echo "Vārds Uzvārds sāls" > temp.1.1.txt
mv temp.1.1.txt `sha1sum temp.1.1.txt |cut -c1-6`.1.1.txt
ls *.1.1.txtkur
- echo "Vārds Uzvārds sāls" izvada norādītos vārdus, Vārds Uzvārds ir jānorāda studenta patiesais vārds un uzvārds, bet sāls ir jebkāds vārds, kas tiek izmantots faila identifikatora anonimizēšanai,
- > temp.1.1.txt; novada šo izdruku īslaicīgā failā
- mv temp.1.1.txt pārsauc šo īslaicīgo failu uz ...
- `sha1sum temp.1.1.txt |cut -c1-6`.1.1.txt failu kur pirmie seši burti tiek noteikti ar SHA1 no faila satura, bet pārējā daļa tiek pielikta klāt, atbilstoši uzdevumu noteikumiem
- ls *.1.1.txt izdrukā (cerams, ka tikai) izveidoto failu, la zinātu, kāds identifikators jāizmano turpmāk visiem citiem failiem, piemēram 012abc.
- /var/log/dmesg faila saturs failā 012abc.1.2.txt.
Papildu informācija
Faila saturu var iegūt dažādi
Ar komandu:
cp /var/log/dmesg ~/012abc.1.2.txtar komandu:
cat /var/log/dmesg > ~/012abc.1.2.txt
2. Datu bāzu un rīku uzstādīšana
Uzstāda sekojošus rīkus:
- MySQL serveri
- MySQLWorkBench rīku
- Pārliecinās, ka var datu bāzei pieslēgties, izmantojot MySQLWorkBench.
Ieteicams uzstādīt arī:
Pārbaudes darbs
- /var/log/upstart/mysql.log faila saturs failā 012abc.2.1.txt
Jāpārliecinās, ka failā ir informācija par to, ka MySQL serveris ir veiksmīgi palaists.
3. ER-diagramma
ER diagrammas izstrāde par paša izvēlētu tēmu, izmantojot MySQLWorkbench. Modelī kopā jābūt vismaz 7 tabulām un 20 laukiem (kolonnām). Tabulām diagrammā jābūt normalizētām un izvietotām saprotamā veidā (bez pārklāšanās u.tml.), starp tabulām ir jābūt izveidotām vismaz 7 relācijām.
Veidojot apjomīgus modeļus, drīkst sadarboties un veidot kopīgus darbus, tad kopējais skaits tiek dalīts ar dalībnieku skaitu.
Pārbaudes darbs
- ER diagramma redaktora formātā 012abc.3.1.mwb.
4. Datu bāzes imports un eksports
Izmantojot 3. darbā izveidoto datu bāzi, jāizveido datu bāzes eksporta fails. Kopējam tabulu ierakstu (rindu) skaitam jābūt vismaz 50. Jāizveido datu bāzes shēmas un datu izmete failā un jāielādē tie atpakaļ datu bāzē. Jāveic teksta un bināras izmetes salīdzināšana.
Uzziņām skatīt
- MySQL datubāzes kopēšana un mysqldump
- MySQL 5.1 Reference Manual: Dumping Data in SQL Format with mysqldump
- PostgreSQL datubāzes kopēšana un pg_dump.
Pārbaudes darbs
- Datu bāzes shēmas un datu izmete failā 012abc.4.1.sql
5. Trigeri
Izveidot trigeri log_trigger, kas tabulai students auditē ierakstu izmaiņas žurnāla tabulā log_table.
- Žurnāla tabulas log_table lauki ir:
- timestamp (timestamp) un
- log (varchar(255)).
- Trigeris log_trigger nostrādā pēc datu tabulā students ir izveidots jauns ieraksts.
- Trigeris tabulā log_table izveido žurnāla ierakstu:
- laukā timestamp (timestamp) ieraksta tekošo sistēmas datumu,
laukā un log (varchar(255)) ieraksta sistēmas lietotāju un datu tabulā ievadītās vērtības sekojošā formā (ar visām pēdiņām!). Izveidotā ieraksta paraugs:
2010-11-05 15:35:38 | student@localhost created new record in table "students" with values: id:"4" surname:"Uzvards4" name:"Vards4"
Kā prasībām pilnībā neatbilstošu paraugu var skatīt IT00002.sql (students_log_create trigeris).
Uzziņām skatīt
Pārbaudes darbs
- Datu bāzes izmetes fails neiekļaujot tabulu datus formā 012abc.5.1.sql
6. Saglabātās procedūras
Izveidot saglabāto procedūru ar nosaukumu insert_data datu bāzē vienā tabulā izveido 100 000 unikālu ierakstu. Visu lauku visu ierakstu vērtībām ir jābūt unikālām. Ierakstiem ir jābūt ar vismaz 3 dažāda tipa laukiem:
- id (integer),
- birth_date (date)
- surname (varchar(40))
Lai izpildītu procedūru, izpilda komandu call insert_data;.
Kā prasībām pilnībā neatbilstošu paraugu var skatīt IT00002.sql (create_student procedūru).
Procedūru izpildes laikā vērot datu bāzes serveri ar Munin vai MySQL Workbench.
Pārbaudes darbs
- Datu bāzes izmetes fails neiekļaujot tabulu datus formā 012abc.6.1.sql
Uzziņām skatīt
7. Datu bāzu jēdzienu dokumentācija un papildināšana
Šķirkļa izveide vikipēdijā. Vēlamie šķirkļi ir: Datu bāze, Relāciju datu bāze, Datu bāzu pārvaldības sistēma, Dati, Relācija, Tabula, Skats, u.t.t. Drīkst labot un papildināt esošos šķirkļus, ieviest konfliktējošu jēdzienu detalizēšanu (disambiguation). Drīkst tulkot attiecīgo jēdzienu skaidrojumu no vikipēdijas angļu valodā, bet nedrīkst izmantot žargonu (uzziņai skatīt Angļu - latviešu vārdnīcas).
Pārbaudes darbs
Teksta fails formā 012abc.7.1.txt ar vietrādi uz lietotāja devumu, piemēram:
Ja nepieciešams, var norādīt vairākas rindas uz dažādām IP adresēm vai lietotāju vārdiem (bet tiek vērtēts tas, kad izmaiņas ir veiktas).
8. Izvēles darbs
- Darba saskaņošanai varat sazināties ar pasniedzēju.
- Darba rezultātu iesniedz līdzīgi kā citus darbus failā 012abc.8.1.xxx