3. Program studium

Systemy baz danych

Tematy wykładów (30 godzin zajęć)

  1. Wprowadzenie do systemów baz danych.
  2. Relacyjny model danych: struktury danych, ograniczenia integralnościowe, operacje.
  3. Modelowanie pojęciowe: model związków-encji.
  4. Transformacja z modelu pojęciowego do relacyjnego.
  5. Normalizacja i denormalizacja schematu relacyjnej bazy danych.
  6. Struktury fizyczne baz danych: pliki, funkcje haszowe, indeksy (drzewiaste, hashowe, bitmapowe).
  7. Metody dostępu i optymalizacja zapytań.
  8. Przetwarzanie transakcyjne: synchronizacja współbieżności transakcji, odtwarzanie spójności bazy danych po awarii.

Tematy laboratoriów

  1. Zapytania w języku SQL: projekcja, selekcja, grupowanie, sortowanie, połączenie, suma, iloczyn, różnica, podzapytania.
  2. Tworzenie schematów bazy danych: schematy relacji, więzy integralności, słownik bazy danych.
  3. Język modyfikacji danych: wstawianie, modyfikacja, usuwanie danych, transakcje.
  4. Zewnętrzny schemat bazy danych: perspektywy (ang. views).
  5. Proceduralny język bazy danych: definiowanie danych, instrukcje sterujące, obsługa kursorów, obsługa wyjątków.
  6. Funkcje i procedury składowane w bazie danych.
  7. Aktywne bazy danych: procedury wyzwalane (ang. triggers).

Projektowanie baz danych

Tematy wykładów (15 godzin zajęć)

  1. Metodyka CASE, cykl życia systemu informatycznego.
  2. Modelowanie informacji: model związków encji.
  3. Modelowanie funkcjonalności: hierarchia funkcji.
  4. Inne modele: model przepływu danych, diagramy matrycowe.
  5. Repozytorium projektu, inżynieria zwrotna.

Tematy laboratoriów

  1. Projektowanie formularzy ekranowych.
  2. Projektowanie raportów.
  3. Diagramy: związków-encji, procesów.
  4. Repozytorium projektu, inżynieria zwrotna.
  5. Transformacja diagramów związków-encji do schematów relacji. Generowanie skryptów tworzących obiekty relacyjnej bazy danych.

Administrowanie bazami danych

Tematy wykładów (15 godzin zajęć)

  1. Architektura systemu bazy danych.
  2. Konfiguracja środowiska pracy klient-serwer.
  3. Bezpieczeństwo danych.
  4. Strojenie wydajności bazy danych.
  5. Odtwarzanie spójności danych i utraconych danych.
  6. Integracja baz danych: rozproszone bazy danych, migracja danych.

Tematy laboratoriów

  1. Konfigurowanie bazy danych: pliki bazy danych, plik inicjacyjny, pliki logu, pliki kontrolne.
  2. Bieżące utrzymywanie systemu bazy danych: uruchamianie i zamykanie bazy danych.
  3. Zarządzanie użytkownikami bazy danych, definiowanie ról i użytkowników, definiowanie praw dostępu, limitów dostępu oraz monitorowanie pracy użytkowników (ang. auditing).
  4. Strojenie poleceń SQL. Strojenie instancji bazy danych: rozmiary buforów, zatrzaski, słownik, parametry inicjujące, klastry, indeksy, tablice mieszające, optymalizacja regułowa i kosztowa.
  5. Archiwizacja i odtwarzanie bazy danych po awarii.
  6. Zarządzanie rozproszoną bazą danych: łączniki do rozproszonych baz danych, zapytania rozproszone, transparentność alokacji danych, transakcje rozproszone, dwufazowe zatwierdzanie transakcji (2PC), synchroniczna i asynchroniczna replikacja danych.
  7. Migracja danych: konwersja reprezentacji pojęciowej, logicznej i fizycznej bazy danych, praca z programem SQL*Loader.

Zaawansowane bazy danych

Tematy wykładów (30 godzin zajęć)

  1. Analityczne przetwarzanie danych OLAP w hurtowniach danych: charakterystyka i zastosowania, wielowymiarowy model danych, utrzymywanie hurtowni danych, zarządzanie hurtownią danych.
  2. Eksploracja danych: charakterystyka i zastosowania, wyszukiwanie asocjacji, klasyfikacja, analiza skupień, eksploracja tekstów i eksploracja WWW.
  3. Rozproszone bazy danych: charakterystyka i zastosowania, metodyki projektowania, problemy spójności i efektywności przetwarzania.
  4. Obiektowe i obiektowo-relacyjne bazy danych: charakterystyka i zastosowania, obiektowy model danych, architektura i implementacja obiektowych baz danych.

Tematy laboratoriów

  1. Obiektowo-relacyjne bazy danych.
  2. Wykorzystanie obiektowych typów danych na przykładzie danych przestrzennych.
  3. XML w bazach danych: generacja, przechowywanie, przeszukiwanie.
  4. Funkcje analityczne w systemach baz danych.
  5. Eksploracja danych.