SylabUZ
Nazwa przedmiotu | Bazy danych |
Kod przedmiotu | 11.3-WI-INFP-BD |
Wydział | Wydział Nauk Inżynieryjno-Technicznych |
Kierunek | Informatyka |
Profil | ogólnoakademicki |
Rodzaj studiów | pierwszego stopnia z tyt. inżyniera |
Semestr rozpoczęcia | semestr zimowy 2021/2022 |
Semestr | 4 |
Liczba punktów ECTS do zdobycia | 6 |
Typ przedmiotu | obowiązkowy |
Język nauczania | polski |
Sylabus opracował |
|
Forma zajęć | Liczba godzin w semestrze (stacjonarne) | Liczba godzin w tygodniu (stacjonarne) | Liczba godzin w semestrze (niestacjonarne) | Liczba godzin w tygodniu (niestacjonarne) | Forma zaliczenia |
Laboratorium | 30 | 2 | 18 | 1,2 | Zaliczenie na ocenę |
Wykład | 30 | 2 | 18 | 1,2 | Egzamin |
Podstawy programowania, Algorytmy i struktury danych
Wprowadzenie do tematyki baz danych. Używana terminologia. Podstawowe cechy baz danych. Wymagania stawiane współczesnym bazom danych. Skrótowe omówienie współczesnych systemów zarządzania bazami danych (SZBD). Podział systemów baz danych ze względu na model danych (relacyjne, obiektowo-relacyjne, obiektowe, XML-owe, hierarchiczne, sieciowe, bazy typu NoSQL) oraz spełnianą funkcję (transakcyjne OLTP, do przetwarzania analitycznego OLAP, inne bardziej specjalizowane zastosowania). Komunikacja użytkownika z bazami danych, język SQL.
Modelowanie związków encji. Podstawy relacyjnego modelu danych. Wprowadzenie do modelowania i projektowania systemów informatycznych ze szczególnym uwzględnieniem relacyjnych systemów bazodanowych. Definicja encji oraz jej atrybuty. Różne typy związków pomiędzy encjami oraz hierarchia encji. Pojęcie relacji i jej podstawowe własności. Podstawowe operacje na relacjach (selekcja, projekcja, złączenia naturalne, złączenia zewnętrzne, iloczyn kartezjański, grupowanie, operacje mnogościowe). Transformacja modelu związków encji do modelu relacyjnego. Związki między relacjami, klucze główne, klucze obce, ograniczenia bazodanowe, indeksy. Proces normalizacji relacji oraz zależności funkcyjne.
Podstawy języka SQL oraz optymalizacji zapytań. Język SQL, jako standard dostępu do baz danych.. Podzbiór języka SQL do manipulowania danymi (DML, polecenia: INSERT, UPDATE, DELETE), definiowania danych (DDL, polecenia: CREATE, ALTER, DROP) oraz sterowanie danymi (DCL, polecenia: GRANT, REVOKE, COMMIT, ROLLBACK) Wyszukiwanie danych za pomocą polecenia SELECT. Ograniczenia integralnościowe. Złączenia tabel. Funkcje SQL (znakowe, numeryczne oraz operujące na datach). Grupowanie danych. Podzapytania. Podstawy transakcji w bazach danych. Podstawy optymalizacji i strojenia zapytań SQL.
Podstawy systemów bazodanowych klasy NoSQL. Zasada BASE ( Basically Available, Eventually consistent, Soft state) oraz CAP ( Consistency, Availability, Partition tolerance). Replikacja. Metodologia Map-Reduce. Modele zorientowane na agregacje. Format JSON. Klasyfikacja systemów NoSQL: bazy typy klucz-wartość, dokumentowe, rodzina kolumn oraz grafowe. Omówienie kilku wybranych implementacji.
Podstawy wytwarzania aplikacji bazodanowych w architekturze dwu- i trójwarstwowej. Wybrane techniki i narzędzia do wytwarzania aplikacji bazodanowych.
Bezpieczeństwo w bazach danych. Import i eksport danych. Tworzenie kopii bezpieczeństwa oraz odzyskiwanie danych po awarii. Rejestrowanie zmian zachodzących w bazie danych. Serwery zapasowe. Spójność danych przed i po awarii. Różne strategie odzyskiwania danych (odtwarzanie pełne, częściowe, do pewnego punktu w przeszłości).
Wykład: wykład konwencjonalny
Laboratorium: ćwiczenia laboratoryjne
Opis efektu | Symbole efektów | Metody weryfikacji | Forma zajęć |
Wykład: egzamin w formie pisemnej
Laboratorium: warunkiem zaliczenia jest uzyskanie pozytywnych ocen ze wszystkich ćwiczeń laboratoryjnych, przewidzianych do realizacji w ramach programu laboratorium
Składowe oceny końcowej = wykład: 50% + laboratorium: 50%
Zmodyfikowane przez prof. dr hab. inż. Andrzej Obuchowicz (ostatnia modyfikacja: 20-04-2021 08:55)