Zachodniopomorski Uniwersytet Technologiczny w Szczecinie

Wydział Informatyki - Informatyka (S1)

Sylabus przedmiotu Bazy danych 2:

Informacje podstawowe

Kierunek studiów Informatyka
Forma studiów studia stacjonarne Poziom pierwszego stopnia
Tytuł zawodowy absolwenta inżynier
Obszary studiów charakterystyki PRK, kompetencje inżynierskie PRK
Profil ogólnoakademicki
Moduł
Przedmiot Bazy danych 2
Specjalność przedmiot wspólny
Jednostka prowadząca Katedra Inżynierii Systemów Informacyjnych
Nauczyciel odpowiedzialny Bartłomiej Małachowski <Bartlomiej.Malachowski@zut.edu.pl>
Inni nauczyciele Piotr Buczyński <Piotr.Buczynski@zut.edu.pl>, Jarosław Jankowski <Jaroslaw.Jankowski@zut.edu.pl>, Przemysław Korytkowski <Przemyslaw.Korytkowski@zut.edu.pl>, Magdalena Krakowiak <Magdalena.Krakowiak@zut.edu.pl>, Bartłomiej Małachowski <Bartlomiej.Malachowski@zut.edu.pl>, Krzysztof Michalak <Krzysztof.Michalak@zut.edu.pl>
ECTS (planowane) 3,0 ECTS (formy) 3,0
Forma zaliczenia zaliczenie Język polski
Blok obieralny 4 Grupa obieralna 1

Formy dydaktyczne

Forma dydaktycznaKODSemestrGodzinyECTSWagaZaliczenie
laboratoriaL4 30 2,00,50zaliczenie
wykładyW4 15 1,00,50zaliczenie

Wymagania wstępne

KODWymaganie wstępne
W-1Bazy danych 1

Cele przedmiotu

KODCel modułu/przedmiotu
C-1Zapoznanie studentów z roznymi metodami programowego dostepu do baz danych oraz nierelacyjnymi bazami danych.

Treści programowe z podziałem na formy zajęć

KODTreść programowaGodziny
laboratoria
T-L-1PHP Data Objects - łączenie z bazą danych, przesyłanie zapytań, odbieranie rezultatów.2
T-L-2Java Database Connectivity (JDBC) Objects - łaczenie z bazą danych, przesyłanie zapytań, odbieranie rezultatów.2
T-L-3Java Persistence API - modelowanie encji danych, utrwalanie i wczytywanie obiektów, modelowanie relacji.4
T-L-4Doctrine DBAL - łaczenie i zadawanie zapytań, zarządzanie schematem danych.2
T-L-5Doctrine ORM - modelowanie encji danych, utrwalanie i wczytywanie obiektów, modelowanie relacji.2
T-L-6Interfejs programistyczny MongoDB dla języka Java - łączenie z bazą, pobieranie i zapis danych.2
T-L-7Przygotowanie danych na potrzeby migracji do bazy danych Cassandra.2
T-L-8Projektowanie struktur danych w bazie Cassandra: klucze podziału i atrybuty grupujące.2
T-L-9Cassandra Query Language: filtrowanie, zakładanie indeksów.2
T-L-10Cassandra Query Language: typy złożone - zbiory, listy, mapy.2
T-L-11Interfejs programistyczny Cassandry dla języka Python. Poziomy spójności w Cassandrze.2
T-L-12Metody reprezentacji i przetwarzania grafowych struktur danych z wykorzystaniem dedykowanych bibliotek programistycznych (środowisko R lub Python).2
T-L-13Projektowanie i zarządzanie grafowymi bazami danych z wykorzystaniem platformy Neo4J, język Cypher.4
30
wykłady
T-W-1Interfejsy programistyczne stanowiące warstwę abstrakcji w dostępie do relacyjnej bazy danych na przykłaldzie języków Java i PHP2
T-W-2Interfejsy programistyczne stanowiące warstwę abstrakcji bazy danych i wykorzystujące wzorzec projektowy budowniczego zapytań (Query builder)2
T-W-3Techniki mapowania obiektowo-relacyjnego na przykładzie interfejsów programistycznych dla języka Java i PHP3
T-W-4Wprowadzenie do nierelacyjnych baz danych: bazy klucz-wartość, bazy dokuemntowe, bazy kolumnowe, bazy grafowe; teorie CAP i BASE.2
T-W-5Architektura rozproszonych baz danych: replikowanie, partycjonowanie.2
T-W-6Reprezentacja grafowa struktur danych, modele statystyczne, wielowarstwowe i temporalne struktur grafowych, zastosowania.2
T-W-7Grafowe bazy danych: wybrane platformy i systemy zarządzania grafowymi bazami danych, języki zapytań Cypher, zastosowania.2
15

Obciążenie pracą studenta - formy aktywności

KODForma aktywnościGodziny
laboratoria
A-L-1udział w zajęciach30
A-L-2Praca własna20
50
wykłady
A-W-1udział w wykładzie15
A-W-2Praca własna8
A-W-3Konsultacje2
25

Metody nauczania / narzędzia dydaktyczne

KODMetoda nauczania / narzędzie dydaktyczne
M-1Wykład z prezentacją
M-2Laboratorium - Metoda przypadków z dyskusją
M-3Metoda objaśniająco-poglądowa - wykład z prezentacjami i przykładami.
M-4Metoda problemowa z dyskusją - w ramach zajęć praktycznych realizacja zadań indywidualnych.

Sposoby oceny

KODSposób oceny
S-1Ocena formująca: Laboratorium : Ogólna ocena formująca oraz ocena sprawozdań, wejściówek i aktywnej obecności
S-2Ocena podsumowująca: Wykład: ocena podsumowująca na podstawie zaliczenia pisemnego.
S-3Ocena formująca: Laboratorium: ocena kształtująca na podstawie bieżących sprawozdań z wykonanych zadań
S-4Ocena podsumowująca: Laboratorium: ocena podsumowująca na podstawie wykonanego zadania i obecności oraz aktywności na zajęciach.

Zamierzone efekty uczenia się - wiedza

Zamierzone efekty uczenia sięOdniesienie do efektów kształcenia dla kierunku studiówOdniesienie do efektów zdefiniowanych dla obszaru kształceniaOdniesienie do efektów uczenia się prowadzących do uzyskania tytułu zawodowego inżynieraCel przedmiotuTreści programoweMetody nauczaniaSposób oceny
Itest_1A_C18.4_W01
Student posiada wiedzę o nierelacyjnych bazach danych oraz o interfejsach programistycznych umożliwiających na dostęp do baz danych.
I_1A_W02, I_1A_W05C-1T-L-8, T-L-9, T-L-10, T-L-7, T-W-6, T-W-4M-3S-2

Zamierzone efekty uczenia się - umiejętności

Zamierzone efekty uczenia sięOdniesienie do efektów kształcenia dla kierunku studiówOdniesienie do efektów zdefiniowanych dla obszaru kształceniaOdniesienie do efektów uczenia się prowadzących do uzyskania tytułu zawodowego inżynieraCel przedmiotuTreści programoweMetody nauczaniaSposób oceny
Itest_1A_C18.4_U01
Student potrafi dobrać właściwe bazy danych do zadania oraz pracować z bazami relacyjnymi i nierelacyjnymi.
I_1A_U06C-1T-L-8, T-L-9, T-L-10, T-L-7, T-W-6, T-W-4M-2, M-4S-3, S-4

Kryterium oceny - wiedza

Efekt uczenia sięOcenaKryterium oceny
Itest_1A_C18.4_W01
Student posiada wiedzę o nierelacyjnych bazach danych oraz o interfejsach programistycznych umożliwiających na dostęp do baz danych.
2,0
3,0student potrafi wymienić nierelacyjne bazy danych i podać przykład zastosowania takich baz
3,5
4,0
4,5
5,0

Kryterium oceny - umiejętności

Efekt uczenia sięOcenaKryterium oceny
Itest_1A_C18.4_U01
Student potrafi dobrać właściwe bazy danych do zadania oraz pracować z bazami relacyjnymi i nierelacyjnymi.
2,0student nie ma umiejętnosci na poziomie 3,0
3,0student potrafi utworzyć aplikację bazodanową zawierajacą relację jeden do jeden wiele do wielu
3,5student ma umiejętności na poziomie 3,0 oraz potrafi utworzyć prostą klasę mapującą w Java Persistance API (JPA)
4,0student ma umiejętności na poziomie 3,5 oraz potrafii wykonać proste zadania w nierelacyjnych bazach danych
4,5student ma umiejętności na poziomie 4,0 i dodatkowo potrafi wykonać złozone zadania w nierelecyjnych bazach danych
5,0student osiągną umiejętności na poziomie 4,5 i dodatkowo wykazał się umiejętnością w tworzeniu złożonych klas mapujących lub tworzenia zlożonych funkcji w nierelacyjnych bazach danych

Literatura podstawowa

  1. Christian Bauer, Gavin King, Gary Gregory, Java Persistence. Programowanie aplikacji bazodanowych w Hibernate, Helion, 2016
  2. Sullivan, NoSQL. Przyjazny przewodnik, Helio, Gliwice, 2016
  3. Harrison, NoSQL i BigData. Bazy danych następnej generacji, Helion, Gliwice, 2019
  4. Kleppmann, Designing Data-Intensive Applications, O'Reilly, 2017
  5. Carpenter, Hewitt, Cassandra: The Definitive Guide, O'Reilly, 2020, 3
  6. Keith, Schincariol, Nardone, Pro JPA 2 i Java EE 8: An In-Depth Guide to Java Persistence APIs, Apress, 2018
  7. Romer, PHP Persistence: Concepts, Techniques and Practical Solutions with Doctrine, Apress, 2016
  8. Robinson, Webber, Eifrem, Graph databases: new opportunities for connected data, O'Reilly, 2015

Treści programowe - laboratoria

KODTreść programowaGodziny
T-L-1PHP Data Objects - łączenie z bazą danych, przesyłanie zapytań, odbieranie rezultatów.2
T-L-2Java Database Connectivity (JDBC) Objects - łaczenie z bazą danych, przesyłanie zapytań, odbieranie rezultatów.2
T-L-3Java Persistence API - modelowanie encji danych, utrwalanie i wczytywanie obiektów, modelowanie relacji.4
T-L-4Doctrine DBAL - łaczenie i zadawanie zapytań, zarządzanie schematem danych.2
T-L-5Doctrine ORM - modelowanie encji danych, utrwalanie i wczytywanie obiektów, modelowanie relacji.2
T-L-6Interfejs programistyczny MongoDB dla języka Java - łączenie z bazą, pobieranie i zapis danych.2
T-L-7Przygotowanie danych na potrzeby migracji do bazy danych Cassandra.2
T-L-8Projektowanie struktur danych w bazie Cassandra: klucze podziału i atrybuty grupujące.2
T-L-9Cassandra Query Language: filtrowanie, zakładanie indeksów.2
T-L-10Cassandra Query Language: typy złożone - zbiory, listy, mapy.2
T-L-11Interfejs programistyczny Cassandry dla języka Python. Poziomy spójności w Cassandrze.2
T-L-12Metody reprezentacji i przetwarzania grafowych struktur danych z wykorzystaniem dedykowanych bibliotek programistycznych (środowisko R lub Python).2
T-L-13Projektowanie i zarządzanie grafowymi bazami danych z wykorzystaniem platformy Neo4J, język Cypher.4
30

Treści programowe - wykłady

KODTreść programowaGodziny
T-W-1Interfejsy programistyczne stanowiące warstwę abstrakcji w dostępie do relacyjnej bazy danych na przykłaldzie języków Java i PHP2
T-W-2Interfejsy programistyczne stanowiące warstwę abstrakcji bazy danych i wykorzystujące wzorzec projektowy budowniczego zapytań (Query builder)2
T-W-3Techniki mapowania obiektowo-relacyjnego na przykładzie interfejsów programistycznych dla języka Java i PHP3
T-W-4Wprowadzenie do nierelacyjnych baz danych: bazy klucz-wartość, bazy dokuemntowe, bazy kolumnowe, bazy grafowe; teorie CAP i BASE.2
T-W-5Architektura rozproszonych baz danych: replikowanie, partycjonowanie.2
T-W-6Reprezentacja grafowa struktur danych, modele statystyczne, wielowarstwowe i temporalne struktur grafowych, zastosowania.2
T-W-7Grafowe bazy danych: wybrane platformy i systemy zarządzania grafowymi bazami danych, języki zapytań Cypher, zastosowania.2
15

Formy aktywności - laboratoria

KODForma aktywnościGodziny
A-L-1udział w zajęciach30
A-L-2Praca własna20
50
(*) 1 punkt ECTS, odpowiada około 30 godzinom aktywności studenta

Formy aktywności - wykłady

KODForma aktywnościGodziny
A-W-1udział w wykładzie15
A-W-2Praca własna8
A-W-3Konsultacje2
25
(*) 1 punkt ECTS, odpowiada około 30 godzinom aktywności studenta
PoleKODZnaczenie kodu
Zamierzone efekty uczenia sięItest_1A_C18.4_W01Student posiada wiedzę o nierelacyjnych bazach danych oraz o interfejsach programistycznych umożliwiających na dostęp do baz danych.
Odniesienie do efektów kształcenia dla kierunku studiówI_1A_W02Ma zaawansowaną i uporządkowaną, podbudowaną teoretycznie wiedzę ogólną obejmującą kluczowe zagadnienia z zakresu fundamentalnych obszarów informatyki.
I_1A_W05Ma wiedzę o nowoczesnych metodach projektowania, analizowania, wytwarzania, testowania oprogramowania oraz rozwiązywania wybranych zadań inżynierskich obejmujących w szczególności narzędzia wspomagające wytwarzanie oprogramowania na różnych etapach powstawania, eksploatacji i rozwoju systemów informatycznych.
Cel przedmiotuC-1Zapoznanie studentów z roznymi metodami programowego dostepu do baz danych oraz nierelacyjnymi bazami danych.
Treści programoweT-L-8Projektowanie struktur danych w bazie Cassandra: klucze podziału i atrybuty grupujące.
T-L-9Cassandra Query Language: filtrowanie, zakładanie indeksów.
T-L-10Cassandra Query Language: typy złożone - zbiory, listy, mapy.
T-L-7Przygotowanie danych na potrzeby migracji do bazy danych Cassandra.
T-W-6Reprezentacja grafowa struktur danych, modele statystyczne, wielowarstwowe i temporalne struktur grafowych, zastosowania.
T-W-4Wprowadzenie do nierelacyjnych baz danych: bazy klucz-wartość, bazy dokuemntowe, bazy kolumnowe, bazy grafowe; teorie CAP i BASE.
Metody nauczaniaM-3Metoda objaśniająco-poglądowa - wykład z prezentacjami i przykładami.
Sposób ocenyS-2Ocena podsumowująca: Wykład: ocena podsumowująca na podstawie zaliczenia pisemnego.
Kryteria ocenyOcenaKryterium oceny
2,0
3,0student potrafi wymienić nierelacyjne bazy danych i podać przykład zastosowania takich baz
3,5
4,0
4,5
5,0
PoleKODZnaczenie kodu
Zamierzone efekty uczenia sięItest_1A_C18.4_U01Student potrafi dobrać właściwe bazy danych do zadania oraz pracować z bazami relacyjnymi i nierelacyjnymi.
Odniesienie do efektów kształcenia dla kierunku studiówI_1A_U06Potrafi pozyskiwać, przesyłać, przetwarzać dane, podsumowywać wyniki eksperymentów empirycznych, dokonywać interpretacji uzyskanych wyników i formułować wynikające z nich wnioski.
Cel przedmiotuC-1Zapoznanie studentów z roznymi metodami programowego dostepu do baz danych oraz nierelacyjnymi bazami danych.
Treści programoweT-L-8Projektowanie struktur danych w bazie Cassandra: klucze podziału i atrybuty grupujące.
T-L-9Cassandra Query Language: filtrowanie, zakładanie indeksów.
T-L-10Cassandra Query Language: typy złożone - zbiory, listy, mapy.
T-L-7Przygotowanie danych na potrzeby migracji do bazy danych Cassandra.
T-W-6Reprezentacja grafowa struktur danych, modele statystyczne, wielowarstwowe i temporalne struktur grafowych, zastosowania.
T-W-4Wprowadzenie do nierelacyjnych baz danych: bazy klucz-wartość, bazy dokuemntowe, bazy kolumnowe, bazy grafowe; teorie CAP i BASE.
Metody nauczaniaM-2Laboratorium - Metoda przypadków z dyskusją
M-4Metoda problemowa z dyskusją - w ramach zajęć praktycznych realizacja zadań indywidualnych.
Sposób ocenyS-3Ocena formująca: Laboratorium: ocena kształtująca na podstawie bieżących sprawozdań z wykonanych zadań
S-4Ocena podsumowująca: Laboratorium: ocena podsumowująca na podstawie wykonanego zadania i obecności oraz aktywności na zajęciach.
Kryteria ocenyOcenaKryterium oceny
2,0student nie ma umiejętnosci na poziomie 3,0
3,0student potrafi utworzyć aplikację bazodanową zawierajacą relację jeden do jeden wiele do wielu
3,5student ma umiejętności na poziomie 3,0 oraz potrafi utworzyć prostą klasę mapującą w Java Persistance API (JPA)
4,0student ma umiejętności na poziomie 3,5 oraz potrafii wykonać proste zadania w nierelacyjnych bazach danych
4,5student ma umiejętności na poziomie 4,0 i dodatkowo potrafi wykonać złozone zadania w nierelecyjnych bazach danych
5,0student osiągną umiejętności na poziomie 4,5 i dodatkowo wykazał się umiejętnością w tworzeniu złożonych klas mapujących lub tworzenia zlożonych funkcji w nierelacyjnych bazach danych