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
- Aptauja
- 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
- Datu bāzu lietojumprogrammas
LibreOffice Base, Kexi, Knoda, Glom - 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.
- Relāciju izveide un attēlošana datu bāzēs (LibreOffice Base). Pieprasījumi un formas.
- 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
- MySQL servera un MySQL Workbench uzstādīšana.
- Datu bāzu dizaina izstrāde.
- 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
- Pieteikšanās attālinātai datu bāzei, SSH tuneļa izveide.
- Pieteikšanās ar dažādiem klientiem (OO Base, MySQL Workbench).
- 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
- Datu importēšana no ne-SQL bāzēm (OO Calc).
- 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
- Datu bāzes un tās struktūras izveide ar MySQL Workbench.
- 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
- Tabulu un lauku veidošana, izmantojot indeksus.
- 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
- Datu bāzes shēmas imports. mysqldump, pg_dump, pg_restore.
- 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
- SQL izmantošana datu bāzes izveidei un modificēšanai. SQL valoda.
- SQL vaicājumi: create/drop database/table; select, insert, delete
- Saglabātās procedūras izveide un darbības pārbaude.
Papildu informācija
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
- MySQL procedūras, trigera un kursora izveide.
- MySQL datu bāzes uzpildīšana ar datiem.
- 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
- Transakciju pārvaldība.
- 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
- Sistēmas žurnālu /var/log/... apskate
- Lietotāju izveide, tiesību piešķiršana
- Datu noklausīšanās ar Tshark
- 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
- Datu bāzes pārvaldība un pārraudzība.
- 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
- WordPress un XWiki uzstādīšana
- Xwiki objektu izveide, HQL pieprasījumu valoda
- 7. Patstāvīgais darbs.
15. lekcija
Prezentācija Pārskati. Pārskatu ģenerēšanas rīki. iReport.
Praktiskie darbi
- 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
- Jautājumi un atbildes par patstāvīgajiem darbiem
- 8. Patstāvīgais darbs
- Kursa gala aptauja
Papildu materiāli
- Datu bāzu tehnoloģijas, I. Dannebergs, Vidzemes Augstskola, 2007
- (BitTorrent fails)
Created by Valdis Vītoliņš on 2010-09-02 15:56
Last modified by Valdis Vītoliņš on 2024-07-04 12:27