Nazwa przedmiotu:
Bazy danych 2
Koordynator przedmiotu:
Rajmund Kożuszek
Status przedmiotu:
Fakultatywny ograniczonego wyboru
Poziom kształcenia:
Studia II stopnia
Program:
Informatyka
Grupa przedmiotów:
Przedmioty techniczne - podstawowe
Kod przedmiotu:
BD2
Semestr nominalny:
1 / rok ak. 2021/2022
Liczba punktów ECTS:
4
Liczba godzin pracy studenta związanych z osiągnięciem efektów uczenia się:
Godziny kontaktowe Udział w wykładach 30 Konsultacje 5 Razem godziny kontaktowe 35 Praca własna studenta Realizacja zadań projektowych 45 Przygotowanie do egzaminu 20 Razem praca własna 65 Łącznie 100 Łączny nakład pracy studenta: 100 godz., co odpowiada 4 pkt. ECTS.
Liczba punktów ECTS na zajęciach wymagających bezpośredniego udziału nauczycieli akademickich:
1,25 pkt. ECTS, co odpowiada 35 godz. kontaktowym
Język prowadzenia zajęć:
polski
Liczba punktów ECTS, którą student uzyskuje w ramach zajęć o charakterze praktycznym:
1,75 pkt. ECTS, co odpowiada 45 godz. pracy własnej przy przygotowaniu projektu
Formy zajęć i ich wymiar w semestrze:
  • Wykład30h
  • Ćwiczenia0h
  • Laboratorium0h
  • Projekt15h
  • Lekcje komputerowe0h
Wymagania wstępne:
Bazy danych 1
Limit liczby studentów:
150
Cel przedmiotu:
Średnio zaawansowany kurs koncentrujący się na projektowaniu struktur baz danych i systemów z bazami danych.
Treści kształcenia:
Przedmiot zapoznaje ze specyfiką projektowania systemów OLTP oraz OLAP (hurtowni danych), a także z problemami występującymi w takich systemach. Lista zagadnień prezentowanych w formie wykładów, wraz z oszacowaniem czasu potrzebnego do ich prezentacji, została ujęta w Tablicy 1. Część praktyczna przedmiotu, obejmująca projekt, w szczegółowy sposób uczy modelowania danych i projektowania struktur relacyjnych baz danych dla systemów OLTP i OLAP oraz podstaw programowania w bazach danych. Treści wykładowe dla przedmiotu Bazy danych 2 Sprawy organizacyjne i prezentacja regulaminu przedmiotu. 1 Specyfika projektowania systemów informacyjnych z bazami danych. Główne typy s.i. z bazami danych: OLTP i OLAP. 1 Wprowadzenie do projektowania struktur relacyjnych baz danych. Projektowanie kluczy. Redundancja i normalizacja oraz konsekwencje dla projektowania struktur relacyjnych. 2 Metodyki, techniki i narzędzia analizy i projektowania s.i. z b.d Modelowanie konceptualne struktur baz danych i jego rola. 1 Modele klas UML i modele ER w kontekście projektowania struktur b.d. Przejście od modeli UML i ER do projektu struktur relacyjnych. Szablony rozwiązań (wzorce projektowe) dla często występujących zagadnień. 3 Projektowanie struktur relacyjnych dla systemów transakcyjnych. Typowe konstrukcje (wzorce projektowe) w strukturach baz danych. 4 Szczegóły projektowania struktur relacyjnych: indeksy – typy i sposoby użycia, typy danych, wartości NULL itp. Więzy deklaratywne i ograniczenia proceduralne. Perspektywy (views) oraz zmaterializowane perspektywy i ich zastosowanie. Denormalizacja: cele, skutki i typowe sposoby użycia. Kryteria wyboru SZBD. 5 Programowanie w bazie danych: wyzwalacze, podprogramy składowane. 2 Przykłady projektów struktur relacyjnych dla systemów transakcyjnych. 2 Wprowadzenie do hurtowni danych, OLAP i analizy wielowymiarowej. Modele danych hurtowni: Inmona, Kimballa (gwiaździsty), Data Vault. Wprowadzenie do projektowania struktur danych dla hurtowni. 4 Duże bazy danych (Very Large Databases – VLDB): problemy, przykładowe środki techniczne wspomagające hurtownie danych i VLDB. Rozproszone bazy danych – podstawowe środki techniczne, zastosowania. 2 Wprowadzenie do baz danych NoSQL: motywacje dla użycia baz nierelacyjnych; modele nierelacyjne i ich zastosowanie. Przykład projektowania nierelacyjnej struktury danych. 3 Łącznie 30 Zakres projektu: • Stworzenie ogólnego modelu konceptualnego danych dla zadanego problemu w celu uzgodnienia rozumienia zadania. • Stworzenie modelu ww. danych za pomocą zadanego narzędzia typu CASE. • Przekształcenie modelu danych w struktury relacyjne, uzupełnienie i udoskonalenie wygenerowanych struktur. • Wygenerowanie skryptów SQL i utworzenie struktur w bazie danych oraz ustanowienie praw dostępu. • Wprowadzenie przykładowych danych. • Opcjonalnie: zaprojektowanie i utworzenie perspektyw. • Utworzenie wyzwalaczy i ew. procedur składowanych w PL/SQL. • Wykonanie przykładowych zapytań oraz testy działania więzów integralności i utworzonych podprogramów PL/SQL.
Metody oceny:
Uwagi realizacyjne: Wykład Wykład realizowany w formie tradycyjnej, z materiałami dostępnymi w sieci. Projekt Projekt powinien zawierać kilka etapów kończących się sprawdzeniem poprawności rozwiązania i wskazaniem potrzebnych poprawek. Formy weryfikacji efektów uczenia się: Treści wykładowe Osiągnięcie założonych efektów uczenia się w odniesieniu do zagadnień prezentowanych na wykładzie jest weryfikowane przez egzamin. Część praktyczna egzaminu weryfikuje także nabycie umiejętności projektowania struktur relacyjnych baz danych. Projekt Projekt ma zweryfikować osiągnięcie założonych efektów uczenia się w odniesieniu do takich zagadnień jak: umiejętność modelowania danych i projektowania struktur relacyjnych, umiejętność programowania w bazie danych.
Egzamin:
tak
Literatura:
1. Slajdy do wykładu 2. Instrukcja do projektu 3. Podręczniki: – Banachowski: Bazy danych. Tworzenie aplikacji. AOW PLJ. – Barker: Modelowanie związków encji. WNT. – Chodkowska-Gyurics: Hurtownie danych. PWN. – Connolly, Begg: Systemy baz danych. Wyd. RM. – Elmasri, Navathe: Wprowadzenie do systemów baz danych. Helion. – Fowler: UML w kropelce wersja 2.0. OW LTP. – Garcia-Molina, Ullman, Widom: Systemy baz danych. Helion. – Hernandez: Projektowanie baz danych dla każdego. Helion. – Stephens, Plew: Relacyjne bazy danych – projektowanie. Robomatic. 4. Baza danych Oracle oraz narzędzia do modelowania danych oraz wykonywania zapytań SQL i procedur składowanych
Witryna www przedmiotu:
https://usosweb.usos.pw.edu.pl/kontroler.php?_action=katalog2/przedmioty/pokazPrzedmiot&prz_kod=103C-INxxx-ISP-BD2
Uwagi:
(-)

Efekty uczenia się