- 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ę