Politechnika Warszawska - Centralny System Uwierzytelniania
Strona główna

Bazy danych i Big Data

Informacje ogólne

Kod przedmiotu: 103A-CBxxx-ISP-BADA
Kod Erasmus / ISCED: (brak danych) / (brak danych)
Nazwa przedmiotu: Bazy danych i Big Data
Jednostka: Wydział Elektroniki i Technik Informacyjnych
Grupy: ( Informatyka techniczna )-Cyberbezpieczeństwo-inż.-EITI
( Informatyka techniczna )-Inżynieria internetu rzeczy-inż.-EITI
( Przedmioty techniczne )---EITI
Punkty ECTS i inne: 5.00 Podstawowe informacje o zasadach przyporządkowania punktów ECTS:
  • roczny wymiar godzinowy nakładu pracy studenta konieczny do osiągnięcia zakładanych efektów uczenia się dla danego etapu studiów wynosi 1500-1800 h, co odpowiada 60 ECTS;
  • tygodniowy wymiar godzinowy nakładu pracy studenta wynosi 45 h;
  • 1 punkt ECTS odpowiada 25-30 godzinom pracy studenta potrzebnej do osiągnięcia zakładanych efektów uczenia się;
  • tygodniowy nakład pracy studenta konieczny do osiągnięcia zakładanych efektów uczenia się pozwala uzyskać 1,5 ECTS;
  • nakład pracy potrzebny do zaliczenia przedmiotu, któremu przypisano 3 ECTS, stanowi 10% semestralnego obciążenia studenta.
Język prowadzenia: polski
Jednostka decyzyjna:

103000 - Wydział Elektroniki i Technik Informacyjnych

Kod wydziałowy:

BADA

Numer wersji:

1

Skrócony opis:

W ramach zajęć studenci zostaną zapoznani z rozwiązaniami baz danych, które są powszechnie wykorzystywane na rynku, w szczególności z metodologią ich projektowania i implementacji, zarówno w odniesieniu od rozwiązań o ugruntowanej pozycji takich jak bazy relacyjno-obiektowe, jak też zyskujących coraz bardziej na znaczeniu tzw. baz NoSQL, stanowiących m.in. podstawę dla bazodanowych rozwiązań Big Data. Studenci nabędą umiejętność praktycznego ich projektowania oraz implementacji. Integralnym elementem przedmiotu jest projekt, który pozwoli ugruntować nabyte umiejętność poprzez realizacje projektu własnej bazy danych w oparciu o wybrany silnik bazodanowy, jak też opracowanie współpracującej z nią aplikacji klienckiej, mającej formę graficznego interfejsu.

Pełny opis:

Celem przedmiotu jest prezentacja oraz nauczenie szerokorozumianej technologii baz danych, stanowiących podstawę współczesnej inżynierii oprogramowania. W tym w szczególności baz relacyjno-obiektowych oraz baz NoSQL stanowiących podstawę ekosystemu technologii, określanych powszechnie mianem Big Data, zyskującym na coraz większym znaczeniu w ostatnich latach.


W ramach zajęć studenci zostaną zapoznani z rozwiązaniami baz danych, które są powszechnie wykorzystywane na rynku, w szczególności z metodologią ich projektowania i implementacji, zarówno w odniesieniu od rozwiązań o ugruntowanej pozycji takich jak bazy relacyjno-obiektowe, jak też zyskujących coraz bardziej na znaczeniu tzw. baz NoSQL, stanowiących m.in. podstawę dla bazodanowych rozwiązań Big Data. Studenci nabędą umiejętność praktycznego ich projektowania oraz implementacji. Integralnym elementem przedmiotu jest projekt, który pozwoli ugruntować nabyte umiejętność poprzez realizacje projektu własnej bazy danych w oparciu o wybrany silnik bazodanowy, jak też opracowanie współpracującej z nią aplikacji klienckiej, mającej formę graficznego interfejsu.



Treść wykładu

  1. Inżynieria baz danych – przypadki użycia. Architektura informacyjno-informatyczna przedsiębiorstwa – wprowadzenie w tematykę przedmiotu. (1 godz.)
  2. Baza danych a system zarządzania bazą danych SZBD. Pojęcie danych i metadanych. Rodzaje baz danych i ich charakterystyka. Kierunki ewolucji i specjalizacji baz danych. Bazy OLTP i OLAP – charakterystyka i różnice. (2 godz.)
  3. Architektura, sposób działania i obsługa silnika bazy danych na przykładzie wybranego rozwiązania. Pojęcie transakcji i ich właściwości ACID. Obsługa współbieżności. Integralność bazy danych i jej trwałość. (4 godz.)
  4. Modelowanie danych: opis rzeczywistości – dekompozycja / dziedziny, model – encje, atrybuty, związki. Diagram związków ER. Fazy projektowania bazy danych: model konceptualny, logiczny oraz fizyczny. Cykl życia bazy danych jako produktu. (2 godz.)
  5. Bazy relacyjno-obiektowe: projektowanie – notacje UML i Chena, schemat, normalizacja oraz denormalizacja – skutki projektowe. Podejścia projektowe: wstępujące i zstępujące. Podschematy. Architektura ANSI/SPARC. Język SQL –DDL, DML, DCL. (8 godz.)
  6. Kolokwium 1. (1 godz.)
  7. Struktury pomocnicze - wyszukiwanie i indeksowanie danych w pamięci zewnętrznej, wykorzystywane algorytmy. (2 godz.)
  8. Aplikacja kliencka: mapowanie model relacyjny / obiektowy, operacje CRUD, model MVVM. Interfejsy komunikacji z bazą danych: JDBC, ODBC, inne. (3 godz.)
  9. Rozszerzenia języka SQL – programowanie bazy danych, procedury składowane, wyzwalacze, interfejsy. (3 godz.)
  10. Bazy NoSQL i ich klasyfikacja, Architektura ekosystemu Apache Hadoop. Podstawy realizacji i obsługi systemów Big Data. Silniki przetwarzania danych. Dane nieustrukturyzowane. (6 godz.)
  11. Kolokwium 2. (1 godz.)


Zakłada się, że zajęcia wykładowe będą miały formę wysoce interaktywnych warsztatów, będących połączeniem tradycyjnych form wykładowych na bazie prezentacji multimedialnych z dużą ilością krótkich pokazów na żywo, obrazujących omawiane treści wykładowe, tak aby student miał poczucie ich przydatności praktycznej. Zakłada się też stosowanie podczas wykładów podejścia typowego dla metodologii Design Thinking, której celem jest maksymalne aktywizowanie studentów oraz wzmacnianie ich potencjału twórczego. W szczególności będzie promowany aktywny udział studentów w zajęciach wykładowych. Dążeniem wykładowcy powinno być aby studenci biorący udział w wykładzie byli stroną również aktywną, a nie tylko biernymi słuchaczami widowiska. Zakłada się też możliwość wprowadzania pewnych zmian programowych mających charakter drobnych odstępstw w stosunku do proponowanych na wstępie treści wykładowych na korzyść zagadnień z obszaru technologii baz danych i Big Data wskazywanych w bieżących dyskusjach przez studentów i szczególnie dla nich interesujących oraz przydatnych.



Zakres projektu

Tematyka prowadzonych projektów jest bezpośrednio powiązana z treścią prowadzonych wykładów. Zajęcia te mają z założenia charakter uzupełniających zajęć praktycznych.


Projekt:

  • część 1 – projekt i implementacja relacyjno-obiektowej bazy danych,
  • część 2 – projekt i realizacja aplikacji klienckiej współpracującej z zaprojektowaną bazą danych w części 1.


W zakresie projektu zakłada się połączenie dwóch form pracy, tj. pracy indywidualnej studentów przy wsparciu i częściowym nadzorze opiekuna/ów projektu, oraz zajęcia zintegrowane mające formę wspólnych warsztatów poświęconych prezentacji przykładowych rozwiązań dla szczególnie trudnych kwestii projektowych mających formę interaktywnych pokazów prowadzonych przez opiekuna. Na etapie realizacji całości projektu opiekun ma tu charakter konsultanta. Zakłada się tu takie formy kontaktu jak spotkania osobiste, ale też w szczególności: mail, komunikacja z wykorzystaniem narzędzi klasy Skype, Facebook Messanger, TeamViewer, oraz platformy wymiany informacji i prowadzenia projektów Slack.

Literatura:

  1. Slajdy do wykładu, materiały uzupełniające w postaci zadań interaktywnych oraz filmików obrazujących omawiane zagadnienia.
  2. Książki:
    • Garcia-Molina Hector, Ullman Jeffrey D., Widom Jennifer, "Systemy baz danych. Kompletny podręcznik", Wydanie II, Helion 2011.
    • Banachowski Lech, "Bazy danych. Tworzenie aplikacji", Akademicka Oficyna Wydawnicza PLJ, Warszawa, 2006.
    • Connolly, T.C. Begg: Database Systems: Database Systems: A Practical Approach to Design, Implementation, and Management, 6th Editio, Addison-Wesley Longman, 2015.
    • Nathan Marz, James Warren, Big Data. Najlepsze praktyki budowy skalowalnych systemów obsługi danych w czasie rzeczywistym, Helion, 2016 (lub nowsze).
    • Viktor Mayer-Schonberger, Kenneth Cukier, Big Data: A Revolution That Will Transform How We Live, Work and Think, John Muray Press, 2013 (lub nowsze).
    • Tom White, Hadoop Komplety przewodnik, Analiza i przechowywanie danych, Helion, 2016 (lub nowsze).
    • Larose Daniel T., Metody i modele eksploracji danych, PWN, 2008 (lub nowsze).
    • Inne.
    1. Internet.
    2. Baza danych Oracle oraz Apache Hadoop plus oprogramowanie współpracujące, narzędzia do modelowania baz danych, narzędzia do komunikacji zespołowej.
Metody i kryteria oceniania:

Formy weryfikacji efektów kształcenia:


treści wykładowe

  1. Kolokwium 1, po pierwszej części semestru. Sprawdza wiedzę wyniesioną z wykładów oraz poziom realizacji założonych efektów kształcenia w odniesieniu do takich zagadnień jak: rozumienie pojęć baza danych, silniki baz danych i ich charakterystyka, metodologia projektowania relacyjno-obiektowych baz danych, pojęcie transakcji i ich właściwości ACID.
  2. Kolokwium 2, po drugiej części semestru. Sprawdza wiedzę wyniesioną z wykładów oraz poziom realizacji założonych efektów kształcenia w odniesieniu do takich zagadnień jak: rozszerzone funkcjonalności baz danych, struktury pomocnicze – indeksy, zagadnienie tworzenie aplikacji klienckich, bazy NoSQL, charakterystyka koncepcji BigData, dane nieustrukturyzowane, sposoby czerpania wiedzy i pozyskiwania informacji z różnorodnych wolumenów danych.

    1. projekt
      Projekt ma na celu zweryfikowanie umiejętności wykorzystania zdobytej wiedzy w odniesieniu do technologii baz danych na drodze praktycznego ich projektowania oraz implementacji, jak też podstaw tworzenia graficznych aplikacji klienckich, współpracujących z rozwiązaniami tego typu. Projekty powinny być realizowane w dwu lub trzyosobowych zespołach.

Zajęcia w cyklu "rok akademicki 2023/2024 - sem. zimowy" (zakończony)

Okres: 2023-10-01 - 2024-02-18
Wybrany podział planu:
Przejdź do planu
Typ zajęć:
Projekt, 30 godzin, 64 miejsc więcej informacji
Wykład, 30 godzin, 64 miejsc więcej informacji
Koordynatorzy: Marcin Kowalczyk
Prowadzący grup: Marcin Kowalczyk, Tomasz Mrozek
Lista studentów: (nie masz dostępu)
Zaliczenie: Ocena łączna
Jednostka realizująca:

103600 - Instytut Telekomunikacji

Zajęcia w cyklu "rok akademicki 2022/2023 - sem. zimowy" (zakończony)

Okres: 2022-10-01 - 2023-02-19
Wybrany podział planu:
Przejdź do planu
Typ zajęć:
Projekt, 30 godzin, 70 miejsc więcej informacji
Wykład, 30 godzin, 70 miejsc więcej informacji
Koordynatorzy: Marcin Kowalczyk
Prowadzący grup: Marcin Kowalczyk, Tomasz Mrozek
Lista studentów: (nie masz dostępu)
Zaliczenie: Ocena łączna
Jednostka realizująca:

103600 - Instytut Telekomunikacji

Zajęcia w cyklu "rok akademicki 2021/2022 - sem. zimowy" (zakończony)

Okres: 2021-10-01 - 2022-02-22
Wybrany podział planu:
Przejdź do planu
Typ zajęć:
Projekt, 30 godzin, 60 miejsc więcej informacji
Wykład, 30 godzin, 60 miejsc więcej informacji
Koordynatorzy: Marcin Kowalczyk
Prowadzący grup: Marcin Kowalczyk, Tomasz Mrozek
Lista studentów: (nie masz dostępu)
Zaliczenie: Ocena łączna
Jednostka realizująca:

103600 - Instytut Telekomunikacji

Zajęcia w cyklu "rok akademicki 2020/2021 - sem. zimowy" (zakończony)

Okres: 2020-10-01 - 2021-02-19
Wybrany podział planu:
Przejdź do planu
Typ zajęć:
Projekt, 30 godzin, 53 miejsc więcej informacji
Wykład, 30 godzin, 53 miejsc więcej informacji
Koordynatorzy: Marcin Kowalczyk
Prowadzący grup: Marcin Kowalczyk, Tomasz Mrozek
Lista studentów: (nie masz dostępu)
Zaliczenie: Ocena łączna
Jednostka realizująca:

103600 - Instytut Telekomunikacji

Opisy przedmiotów w USOS i USOSweb są chronione prawem autorskim.
Właścicielem praw autorskich jest Politechnika Warszawska.
pl. Politechniki 1, 00-661 Warszawa tel: (22) 234 7211 https://pw.edu.pl kontakt deklaracja dostępności USOSweb 7.0.0.0-7 (2024-03-18)