3. Program studium
Systemy baz danych
Tematy wykładów (30 godzin zajęć)
- Wprowadzenie do systemów baz danych.
- Relacyjny model danych: struktury danych, ograniczenia integralnościowe, operacje.
- Modelowanie pojęciowe: model związków-encji.
- Transformacja z modelu pojęciowego do relacyjnego.
- Normalizacja i denormalizacja schematu relacyjnej bazy danych.
- Struktury fizyczne baz danych: pliki, funkcje haszowe, indeksy (drzewiaste, hashowe, bitmapowe).
- Metody dostępu i optymalizacja zapytań.
- Przetwarzanie transakcyjne: synchronizacja współbieżności transakcji, odtwarzanie spójności bazy danych po awarii.
Tematy laboratoriów
- Zapytania w języku SQL: projekcja, selekcja, grupowanie, sortowanie, połączenie, suma, iloczyn, różnica, podzapytania.
- Tworzenie schematów bazy danych: schematy relacji, więzy integralności, słownik bazy danych.
- Język modyfikacji danych: wstawianie, modyfikacja, usuwanie danych, transakcje.
- Zewnętrzny schemat bazy danych: perspektywy (ang. views).
- Proceduralny język bazy danych: definiowanie danych, instrukcje sterujące, obsługa kursorów, obsługa wyjątków.
- Funkcje i procedury składowane w bazie danych.
- Aktywne bazy danych: procedury wyzwalane (ang. triggers).
Projektowanie baz danych
Tematy wykładów (15 godzin zajęć)
- Metodyka CASE, cykl życia systemu informatycznego.
- Modelowanie informacji: model związków encji.
- Modelowanie funkcjonalności: hierarchia funkcji.
- Inne modele: model przepływu danych, diagramy matrycowe.
- Repozytorium projektu, inżynieria zwrotna.
Tematy laboratoriów
- Projektowanie formularzy ekranowych.
- Projektowanie raportów.
- Diagramy: związków-encji, procesów.
- Repozytorium projektu, inżynieria zwrotna.
- 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ęć)
- Architektura systemu bazy danych.
- Konfiguracja środowiska pracy klient-serwer.
- Bezpieczeństwo danych.
- Strojenie wydajności bazy danych.
- Odtwarzanie spójności danych i utraconych danych.
- Integracja baz danych: rozproszone bazy danych, migracja danych.
Tematy laboratoriów
- Konfigurowanie bazy danych: pliki bazy danych, plik inicjacyjny, pliki logu, pliki kontrolne.
- Bieżące utrzymywanie systemu bazy danych: uruchamianie i zamykanie bazy danych.
- 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).
- 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.
- Archiwizacja i odtwarzanie bazy danych po awarii.
- 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.
- 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ęć)
- Analityczne przetwarzanie danych OLAP w hurtowniach danych: charakterystyka i zastosowania, wielowymiarowy model danych, utrzymywanie hurtowni danych, zarządzanie hurtownią danych.
- Eksploracja danych: charakterystyka i zastosowania, wyszukiwanie asocjacji, klasyfikacja, analiza skupień, eksploracja tekstów i eksploracja WWW.
- Rozproszone bazy danych: charakterystyka i zastosowania, metodyki projektowania, problemy spójności i efektywności przetwarzania.
- Obiektowe i obiektowo-relacyjne bazy danych: charakterystyka i zastosowania, obiektowy model danych, architektura i implementacja obiektowych baz danych.
Tematy laboratoriów
- Obiektowo-relacyjne bazy danych.
- Wykorzystanie obiektowych typów danych na przykładzie danych przestrzennych.
- XML w bazach danych: generacja, przechowywanie, przeszukiwanie.
- Funkcje analityczne w systemach baz danych.
- Eksploracja danych.