Datu bāzu tehnoloģijas

Kurss "Datu bāzu tehnoloģijas" paredzēts augstskolu studentiem, kuri vēlas apgūt datu bāzu vadības
sistēmu darbības principus, datu bāzu veidošanu un datu iegūšanas pieprasījumu veidošanu. Vidzemes augstskolā un Alberta koledžā šo kursu pasniedz bakalauriem.

Kursa apguvei jābūt labām datoru lietošanas zināšanām un vispārīgam priekšstatam par operētājsistēmu un datu pārraides tīklu darbību.

Lekciju ieraksti


Kursa saturs

Zemāk ir dots lekciju satura apraksts un zem tā saistītās praktisko un patstāvīgo darbu tēmas.

1. lekcija

Prezentācija Kas ir datu bāzes un datu bāzu pārvaldības sistēmas. Strukturēti un nestrukturēti dati.  Datu bāzu izveides vēsture. Datu bāzu principi, relāciju algebra. Datu bāzu pārvaldības sistēmu veidi.

Praktiskie darbi

  1. Aptauja
  2. Vienkāršu datu bāzu rīku (LibreOffice Base) iegūšana un uzstādīšana

2. lekcija

Prezentācija Relāciju modelis, relāciju algebras jēdzieni. ER diagrammas, ER modelēšanas rīki. ER un klašu diagrammu saistība.

Praktiskie darbi

  1. Datu bāzu lietojumprogrammas
    LibreOffice Base, Kexi, Knoda, Glom
  2. Vienkāršas datu bāzes izveide "Studenti un kursi". Datu bāzes izveides princips "iznešana pirms iekavām". DB uzbūves pamati: tabulas, indeksi, skati, datu tipi.
  3. Relāciju izveide un attēlošana datu bāzēs (LibreOffice Base). Pieprasījumi un formas.
  4. 1. Patstāvīgais darbs

3. lekcija

Prezentācija ER diagrammu pārveidošana par relācijām. Datu bāzu normalizācija, Pirmā, otrā, trešā normālforma. Boyce-Codd normālforma. Denormalizētas datu bāzes.  Uz metamodeli bāzētas datu bāzes. Zvaigžņveida datu bāzes shēma.

Praktiskie darbi

  1. MySQL servera un MySQL Workbench uzstādīšana.
  2. Datu bāzu dizaina izstrāde.
  3. Tiešā un reversā inženierēšana.

4. lekcija

Prezentācija Privātie un publiskie datu pārraides tīkli. Klienta un servera savienojuma nodrošināšana dažādos tīklos.  TCP/IP protokola pamati, datu paketes, porti, sesijas.

Praktiskie darbi

  1. Pieteikšanās attālinātai datu bāzei, SSH tuneļa izveide.
  2. Pieteikšanās ar dažādiem klientiem (OO Base, MySQL Workbench).
  3. 2. Patstāvīgais darbs.

5. lekcija

Prezentācija Klienta-servera datu bāzu serveru pārvaldība. Uzstādīšana un konfigurēšana. Konfigurācijas, datu un žurnālu failu atrašanās vieta. Iestatījumu maiņa. Palaišana un apturēšana BSD, sysvinit, upstart un systemd.

Praktiskie darbi

  1. Datu importēšana no ne-SQL bāzēm (OO Calc).
  2. Datu pievienošana, izmantojot "resno klientu".

6. lekcija

Prezentācija Atmiņu veidi un hierarhija. Datu saglabāšana. Datu integritāte. Failu sistēmas un disku masīvi. Virtuālā atmiņa. Buferēšana un kešošana.

Praktiskie darbi

  1. Datu bāzes un tās struktūras izveide  ar MySQL Workbench.
  2. 3. Patstāvīgais darbs.

7. lekcija

Prezentācija Datu bāzu datu organizācijas modeļi. Tabulvietas, datu faili. Datu indeksēšana un pieejas metodes, indeksi, jaucējfunkcijas, binārie koki.

Praktiskie darbi

  1. Tabulu un lauku veidošana, izmantojot indeksus.
  2. Tabulu failu struktūras izpēte.

8. lekcija

Prezentācija Vaicājumu apstrāde. Vaicājumu "cena": meklēšana, kārtošana, apvienošana. Vaicājumu optimizācija.

Praktiskie darbi

  1. Datu bāzes shēmas imports. mysqldump, pg_dump, pg_restore.
  2. 4. Patstāvīgais darbs.

9. lekcija

Prezentācija Detalizēti par SQL. Kas ir SQL? SQL valodas kopas. Datu definēšana, datu apstrāde, saglabātās procedūras.

Praktiskie darbi

  1. SQL izmantošana datu bāzes izveidei un modificēšanai. SQL valoda.
  2. SQL vaicājumi: create/drop database/table; select, insert, delete
  3. Saglabātās procedūras izveide un darbības pārbaude.

Papildu informācija

  1. SQL valoda.
  2. SQL Statement Syntax.

10. lekcija

Prezentācija PL/SQL valoda. Saglabātās procedūras un funkcijas. Parametri, nosacījumi un zarošanās, cilpas, kļūdu apstrāde. Trigeri. Kursori. Izņēmuma simboli.

Praktiskie darbi

  1. MySQL procedūras, trigera un kursora izveide.
  2. MySQL datu bāzes uzpildīšana ar datiem.
  3. 5. Patstāvīgais darbs.

11. lekcija

Prezentācija Transakcijas. ACID princips, transakciju stāvokļi, realizācija. Laiksakritības vadība. Kontroles metodes, bloķēšanas līmeņi un veidi, strupsaķeres, badošanās.

Praktiskie darbi

  1. Transakciju pārvaldība.
  2. Resursu bloķēšana.

12. lekcija

Prezentācija Datu bāzu drošība un pieejas tiesību pārvaldība. Žurnāli un audits. SQL injekcijas.

Papildu informācija

Praktiskie darbi

  1. Sistēmas žurnālu /var/log/... apskate
  2. Lietotāju izveide, tiesību piešķiršana
  3. Datu noklausīšanās ar Tshark
  4. 6. Patstāvīgais darbs.

13. lekcija

Prezentācija OLAP datu bāzes. Datu noliktavas, datu apstrāde, datizrace. Datu bāzu pārraudzība un veiktspēja.

Praktiskie darbi

  1. Datu bāzes pārvaldība un pārraudzība.
  2. MySQL Workbench, top, munin rīku izmantošana.

14. lekcija

Prezentācija Izstrādes ietvari. MVC arhitektūra. Objektu modeļa pārnešana uz datu struktūru.

Praktiskie darbi

  1. WordPress un XWiki uzstādīšana
  2. Xwiki objektu izveide, HQL pieprasījumu valoda
  3. 7. Patstāvīgais darbs.

15. lekcija

Prezentācija Pārskati. Pārskatu ģenerēšanas rīki. iReport.

Praktiskie darbi

  1. iReport pārskatu ģenerēšanas vide.

16. lekcija

Prezentācija Kursa nokārtošana. Pirms relāciju DB: hierarhiskās un tīkla DB. Relāciju datu bāzu realizācija: ierakstu un kolonnu orientētas datu bāzes. Pēc relāciju DB: korelācijas, objektu, Ne-SQL DB.

Praktiskie darbi

  1. Jautājumi un atbildes par patstāvīgajiem darbiem
  2. 8. Patstāvīgais darbs
  3. Kursa gala aptauja

Papildu materiāli

Tags Lekcijas Apmācība Datubāze
Created by Valdis Vītoliņš on 2010-09-02 15:56
Last modified by Valdis Vītoliņš on 2024-07-04 12:27
 
Xwiki Powered
Creative Commons Attribution 3.0 Unported License