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:

  1. 012abc ir studenta identifikators,
  2. b ir patstāvīgā darba numurs formā 1, 2, u.t.t.
  3. c ir darbā iesniedzamā faila numurs formā 1, 2, u.t.t.
  4. 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ā:

  1. Izmantojot VmWare vai VirtualBox
  2. Izmantojot Wubi
  3. Standarta veidā cietajā diskā
  4. Sāknējamā USB diskā


Uzziņām skatīt

  1. ISO diska attēla lejuplāde
  2. Linux uzstādīšana
  3. Ubuntu Linux izmantošana
  4. Noderīgas Ubuntu komandas.

Pārbaudes darbs

  1. 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.txt

    kur

    • 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.

    Pārliecinieties, ka faila saturs ir UTF-8 kodējumā!

    Visos sekojošos darbos kā faila identifikators jāizmanto no pirmā faila satura iegūtā kontrolsummas vērtība!

  2. /var/log/dmesg faila saturs failā 012abc.1.2.txt.

Papildu informācija
Faila saturu var iegūt dažādi

  1. Ar komandu:

    cp /var/log/dmesg ~/012abc.1.2.txt
  2. ar komandu:

    cat /var/log/dmesg > ~/012abc.1.2.txt

    Komandu izdrukas arī turpmāk vēlams veidot, izmantojot otro paņēmienu ar izvades nosūtīšanu failā.

2. Datu bāzu un rīku uzstādīšana

Uzstāda sekojošus rīkus:

  1. MySQL serveri
  2. MySQLWorkBench rīku
  3. Pārliecinās, ka var datu bāzei pieslēgties, izmantojot MySQLWorkBench.

Ieteicams uzstādīt arī:

  1. PostgreSQL serveri
  2. Tora rīku

Pārbaudes darbs

  1. /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

  1. 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

  1. MySQL datubāzes kopēšana un mysqldump
  2. MySQL 5.1 Reference Manual: Dumping Data in SQL Format with mysqldump
  3. PostgreSQL datubāzes kopēšana un pg_dump.

Pārbaudes darbs

  1. 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.

  1. Žurnāla tabulas log_table lauki ir:
    1. timestamp (timestamp) un
    2. log (varchar(255)).
  2. Trigeris log_trigger nostrādā pēc datu tabulā students ir izveidots jauns ieraksts.
  3. Trigeris tabulā log_table izveido žurnāla ierakstu:
  4. laukā timestamp (timestamp) ieraksta tekošo sistēmas datumu,
  5. 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

  1. 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:

  1. id (integer),
  2. birth_date (date)
  3. surname (varchar(40))

Lai izpildītu procedūru, izpilda komandu call insert_data;.

Lai procedūra izpildītos MySQLWorkbench, iestatījumos Edit- Preferences...- SQL Editor noņem ķeksīti Safe updates...* un pārstartē MySQLWorkbench!

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

  1. Datu bāzes izmetes fails neiekļaujot tabulu datus formā 012abc.6.1.sql

Uzziņām skatīt

  1. MySQL 5.1 Reference Manual: Using Stored Routines (Procedures and Functions)

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:

http://lv.wikipedia.org/wiki/Special:Contributions/84.237.214.238

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

  1. Darba saskaņošanai varat sazināties ar pasniedzēju.
  2. Darba rezultātu iesniedz līdzīgi kā citus darbus failā 012abc.8.1.xxx

Created by Valdis Vītoliņš on 2010-09-09 09:01
Last modified by Valdis Vītoliņš on 2021-04-13 14:31
 
Xwiki Powered
Creative Commons Attribution 3.0 Unported License