Nieralacyjne bazy danych I-IO-NI7O>NBD
1. Baza redis jako przykład bazy typu klucz-wartość
2. Baza MongoDB jako przykład dokumentowej bazy danych
3. Baza Cassandra jako przykład kolumnowej bazy danych
4. Baza Neo4J jako przykład grafowej bazy danych
5. Baza eXist jako przykład bazy dokumentów XML
W cyklu 2019/2020-Z:
Zapoznanie studentów z podstawowymi zagadnieniami dotyczącymi baz danych opartych na innych modelach niż relacyjny. Przedstawiana jest ogólna koncepcja i potrzeba stosowania baz danych typu NoSQL, prezentowane są bazy z następujących kategorii: dokumentowe bazy danych, bazy typu klucz-wartość i krotkowe, bazy grafowe, bazy danych XML. Dodatkowo w ramach wykładu przedstawia się wprowadzenie do Event Sourcingu wraz z przykładowym silnikiem bazy danych do zapisu informacji tego typu. Na ćwiczeniach laboratoryjnych studenci zdobywają umiejętność praktycznego zastosowania poznanych baz danych, języków zapytań dedykowanych dla każdej z kategorii baz oraz poznają podstawy tworzenia aplikacji wykorzystujących nierelacyjne bazy danych. |
Koordynatorzy przedmiotu
W cyklu 2019/2020-Z: | W cyklu 2023/2024-L: | W cyklu 2024/2025-L: | W cyklu 2022/2023-L: | W cyklu 2023/2024-Z: | W cyklu 2021/2022-L: |
<b>Ocena końcowa</b>
W cyklu 2024/2025-L: Ocenę końcową wyznacza prowadzący wykład jako wypadkową ocenę z ćwiczeń laboratoryjnych i z egzaminu.
| W cyklu 2022/2023-L: Ocenę końcową wyznacza prowadzący wykład jako wypadkową ocenę z ćwiczeń laboratoryjnych i z egzaminu.
| W cyklu 2023/2024-L: Ocenę końcową wyznacza prowadzący wykład jako wypadkową ocenę z ćwiczeń laboratoryjnych i z egzaminu.
|
<b>Wymagania wstępne</b>
W cyklu 2024/2025-L: | W cyklu 2022/2023-L: Znajomość podstawowych zasad programowania uzyskana na przedmiotach Bazy danych I, II oraz programowanie III i IV.
| W cyklu 2023/2024-L: Znajomość podstawowych zasad programowania uzyskana na przedmiotach Bazy danych I, II oraz programowanie III i IV.
|
<b>Literatura podstawowa</b>
<b>Literatura uzupełniająca</b>
<b>Inne informacje</b>
Efekty kształcenia
Wiedza
Ma uporządkowaną, podbudowaną teoretycznie wiedzę w zakresie nierelacyjnych baz danych.
Powiązane efekty kierunkowe:
IF1A_W08
Metody weryfikacji:
Kolokwium
Wiedza
Ma uporządkowaną i podbudowaną teoretycznie w zakresie tworzenia aplikacji w tym również związanych z wykorzystaniem baz danych typu NoSQL.
Powiązane efekty kierunkowe:
IF1A_W11
Metody weryfikacji:
Kolokwium
Wiedza
Ma uporządkowaną wiedzę w zakresie metod i technik programowania w obszarze aplikacji wykorzystujących nierelacyjne bazy danych.
Powiązane efekty kierunkowe:
IF1A_W04
Metody weryfikacji:
Kolokwium
Umiejętności
Ma umiejętność samokształcenia się, potrafi pozyskiwać informacje z literatury oraz in¬nych właściwie dobranych źródeł, także w języku angielskim w zakresie wyboru bazy danych, programowania z nastawieniem na nierelacyjne dane, potrafi integrować uzyskane informacje, dokonywać ich inter¬pretacji, a także wyciągać wnioski oraz formułować i uzasad¬niać opinie.
Powiązane efekty kierunkowe:
IF1A_U06
Metody weryfikacji:
Kolokwium
Sprawdzenie na zajęciach - odpowiedź ustna
Umiejętności
Potrafi dokonać identyfikacji i sformułować specyfikację zadań wynikających z doboru do określonego problemu nierelacyjnej bazy danych oraz wykonać zapytania w wybranym dialekcie bazy danych.
Powiązane efekty kierunkowe:
IF1A_U23
Metody weryfikacji:
Kolokwium
Sprawdzenie na zajęciach - odpowiedź ustna
Umiejętności
Potrafi, zgodnie z zadaną specyfikacją, zaprojektować oraz zrealizować proste oprogramowanie, używając właściwych metod, technik i narzędzi programistycznych z wykorzystaniem nierelacyjnej bazy danych.
Powiązane efekty kierunkowe:
IF1A_U27
Metody weryfikacji:
Kolokwium
Sprawdzenie na zajęciach - odpowiedź ustna
Kompetencje społeczne
Rozumie potrzebę uczenia się przez całe życie. Potrafi inspiro¬wać i organizować proces uczenia się innych osób.
Powiązane efekty kierunkowe:
IF1A_K01
Metody weryfikacji:
Sprawdzenie na zajęciach - odpowiedź ustna
Kryteria oceniania
Wykłady w formie prezentacji z wykorzystaniem rzutnika multimedialnego. Treść slajdów obejmuje zarówno aspekty teoretyczne baz NoSQL, jaki i praktyczne przykłady rozwiązywania konkretnych zapytań. Wykłady kończą się egzaminem, który ma charakter testu jednokrotnego wyboru. Pytania dotyczą zagadnień teoretycznych oraz analizy przykładowych zapytań. Za każde pytanie można uzyskać jeden punkt, a do zaliczenia wymagana jest poprawna odpowiedź na co najmniej 50% pytań plus jedno pytanie. Za 100% skuteczność student uzyskuje ocenę bardzo dobrą, a za mniejszą - proporcjonalnie mniej. Warunkiem dopuszczenia do egzaminu jest zdobycie pozytywnej oceny z laboratorium.
W ramach laboratorium rozwiązywane są praktyczne zadania dotyczące poszczególnych typów baz danych przedstawianych na wykładzie. Za każde rozwiązane zadanie student uzyskuje ocenę (od dwóch do pięciu punktów). Dwa punkty za brak lub rozwiązanie nieprawidłowe, trzy lub więcej punktów w zależności od liczby punktów przypisanych do danego zadania. Aby zaliczyć laboratorium należy uzyskać średnią arytmetyczną ze wszystkich ocen nie mniejszą niż 3,0. Średnia ta zaokrąglona do najbliższej połówki stanowi ocenę zaliczającą ćwiczenia.
Ocena końcowa dla modułu to średnia arytmetyczna oceny z egzaminu oraz oceny zaliczającej laboratorium. Obydwie muszą być pozytywne.
Literatura
- Jeremy Nelson, Mastering Redis, PACKT 2016.
- Pramod J. Sadalage, Martin Fowler, NoSQL: Kompendium wiedzy, Helion 2015.
- Guy Harrison, NoSQL, NewSQL i BigData: Bazy danych następnej generacji, Helion 2019.
- Shannon Bradshaw, Eoin Brazil, Kristina Chodorow, Przewodnik po MongoDB, Helion 2021.
- Denise Koessler Gosnell, Matthias Beoecheler, Dane grafowe w praktyce, Helion 2021.
- Vivek Mishra, Beginning Apache Cassandra Development, Apress 2014.
- Jerome Baton, Rik Van Bruggen, Learning Neo4j 3.x, Packt 2017.
- Erik Siegel, Adam Rotter, eXist: a NoSQL Document Database and Application Platform, O'Reilly 2014.