Module also offered within study programmes:
General information:
Name:
Bazy Danych II
Course of study:
2015/2016
Code:
BIT-2-105-OB-s
Faculty of:
Geology, Geophysics and Environmental Protection
Study level:
Second-cycle studies
Specialty:
Software and Data Bases in Geology
Field of study:
Applied Computer Science
Semester:
1
Profile of education:
Academic (A)
Lecture language:
Polish
Form and type of study:
Full-time studies
Course homepage:
 
Responsible teacher:
dr hab. inż. Piórkowski Adam (pioro@agh.edu.pl)
Academic teachers:
dr hab. inż. Piórkowski Adam (pioro@agh.edu.pl)
Module summary

Description of learning outcomes for module
MLO code Student after module completion has the knowledge/ knows how to/is able to Connections with FLO Method of learning outcomes verification (form of completion)
Skills
M_U001 Student powinien umieć konstruować zaawansowane zapytania w języku SQL IT2A_U02 Execution of laboratory classes
M_U002 Student powinien umieć optymalizować zapytania w języku SQL IT2A_U02 Execution of exercises
M_U003 Student powinien umieć konstruować, realizować i konfigurować rozproszone systemy bazodanowe IT2A_U05, IT2A_U11 Execution of laboratory classes
M_U004 Student potrafi projektować i tworzyć proste i złożone systemy bazodanowe IT2A_U11 Execution of laboratory classes
Knowledge
M_W001 Student zna koncepcję realizacji współbieżności w bazach danych IT2A_W03, IT2A_W01, IT2A_W02 Execution of laboratory classes
FLO matrix in relation to forms of classes
MLO code Student after module completion has the knowledge/ knows how to/is able to Form of classes
Lecture
Audit. classes
Lab. classes
Project classes
Conv. seminar
Seminar classes
Pract. classes
Zaj. terenowe
Zaj. warsztatowe
Others
E-learning
Skills
M_U001 Student powinien umieć konstruować zaawansowane zapytania w języku SQL + - - - - - + - - - -
M_U002 Student powinien umieć optymalizować zapytania w języku SQL + - - - - - + - - - -
M_U003 Student powinien umieć konstruować, realizować i konfigurować rozproszone systemy bazodanowe - - - - - - + - - - -
M_U004 Student potrafi projektować i tworzyć proste i złożone systemy bazodanowe + - - - - - + - - - -
Knowledge
M_W001 Student zna koncepcję realizacji współbieżności w bazach danych + - - - - - + - - - +
Module content
Lectures:

Współbieżność w bazach danych.
Transakcje w bazach danych. Punkty bezpieczeństwa transakcji. Kursory. Transakcje a współbieżny dostęp wielu użytkowników. Anomalie w transakcjach przeprowadzanych współbieżnie.Utracone modyfikacje. Niepowtarzalne odczyty. Błędne odczyty. Pojawianie się fantomów. Poziomy izolacji transakcji. Odczyt niezatwierdzonych danych. Odczyt zatwierdzonych danych. Stabilność na poziomie kursora. Odczyt powtarzalny. Transakcje szeregowalne. Zarzšdzanie poziomem izolacji transakcji w SQL. Blokady w bazach danych. Blokady wierszy. Blokady atrybutów. Blokady tabel. Rodzaje blokad. Zakleszczenia. Obsługa blokad w systemie baz danych.
Trwałość i składowanie danych.
Partycjonowanie poziome, pionowe i mieszane. Metody indeksacji w relacyjnych bazach danych. Metoda ISAM. Metoda B-drzew. Metoda B*-drzew. Metoda R-drzew. Metoda R+-drzew. Metoda tablic mieszajšcych. Metoda bitmap. Rodzaje indeksów. Indeksy złożone. Indeksy klastrowane. Indeksy unikalne i nieunikalne. Indeksy pełnotekstowe. Indeksacja w systemach relacyjnych baz danych.
Optymalizacja zapytań SQL.
Cel optymalizacji. Plan wykonania zapytania. Techniki optymalizacji zapytań w systemach baz danych. Plan wykonania zapytania z optymalizacją. Przegląd rozwiązań optymalizacyjnych. Optymalizacja zapytań SQL. Proste wyrażenia. Złączenia tabel. Algorytmy realizacji złączeń tabel. Złączenia tabel a zagnieżdżenia. Optymalizacja w bazach danych Oracle. Klastry danych. Optymalizator regułowy. Optymalizacja kosztowa w bazach danych Oracle. Narzędzia strojenia bazy danych Oracle. Wyznaczanie planu wykonania zapytania. Analiza statystyczna zapytania. Wskazówki. Optymalizacja w bazach danych PostgreSQL. Narzędzia strojenia bazy danych PostgreSQL.
Rozproszone bazy danych.
Migracja danych. Replikacja. Podstawowe modele aktualizacji danych w systemach baz danych. Replikacja w MS SQL Server. Replikacja migawkowa. Replikacja transakcyjna. Replikacja złączająca. Replikacja w Oracle. Replikacja migawkowa. Replikacja Multi-Master. Replikacja hybrydowa. Replikacja master-slave w PostgreSQL. Replikacja MySQL. Replikacja oparta na poleceniach. Replikacja oparta na przekazywaniu krotek. Architektury replikacji w MySQL. Hurtownie danych.
Obiektowe bazy danych.
Model obiektowy. Pojęcie klasy. Obiekty klasy. Zapytania w obiektowych bazach danych. Strategia wykonywania zapytania. Graf wykonywania zapytania. Języki zapytań do obiektowych baz danych. ODL. OQL. Przykładowe systemy obiektowych baz danych.
XML-owe bazy danych.
Projektowanie baz danych.
Etapy tworzenia oprogramowania bazodanowego. Etapy projektu systemu bazodanowego. Diagramy Hierarchii Funkcji (FHD). Diagramy przypadków użycia. Diagramy związków encji (ERD). Diagramy przepływów danych (DFD). Diagramy stanów systemu (STD). Pakiety do wspomagania projektowania baz danych (CASE).

Practical classes:

1. Administracja systemami baz danych.
2. Administracja systemami baz danych – cd.
3. Współbieżność w bazach danych.
4. Optymalizacja zapytań SQL.
5. Optymalizacja zapytań SQL cd.
6. Zagadnienia indeksacji w systemach baz danych.
7. Wykorzystanie XML w systemach baz danych.
8. Replikacja danych w systemach Postgresql / MySQL.
9. Tworzenie aplikacji z zanurzonym SQL.
10. Bazy danych przestrzennych – rozszerzenia GIS.
11. Hurtownie danych – konstrukcja procesu ETL.
12. Hurtownie danych – konstrukcja procesu ETL dla danych przestrzennych.
13. NoSQL-owe bazy danych
14. Grafowe bazy danych

E-learning:
-
Student workload (ECTS credits balance)
Student activity form Student workload
Summary student workload 90 h
Module ECTS credits 3 ECTS
Participation in lectures 15 h
Realization of independently performed tasks 10 h
Participation in practical classes 45 h
Preparation for classes 20 h
Additional information
Method of calculating the final grade:

Ocena końcowa = 100% oceny z ćwiczeń
Ocena końcowa = 50% oceny z ćwiczeń + 50% oceny z egzaminu (jeśli jest)

Prerequisites and additional requirements:

Prerequisites and additional requirements not specified

Recommended literature and teaching resources:

Ullman, J.D., Widom J.: Podstawowy wykład z systemów baz danych. WNT, Warszawa 1999
Delobel C., Adiba M.: Relacyjne bazy danych. WNT, Warszawa 1989
Figura D.: Obiektowe bazy danych. AOW PLJ, Warszawa 1996
Ullman J.D.: Systemy Baz Danych WNT, Warszawa 1988
Gruber M.: SQL. Helion Gliwice, 1996.
Celko J.: SQL. Mikom, Warszawa, 1999.
Gurry M.: Optymalizacja Oracle SQL. Leksykon kieszonkowy. Helion, Gliwice, 2002.
Yourdon E.: Współczesna analiza strukturalna. WNT, Warszawa, 1996.
Jaszkiewicz A.: Inzynieria oprogramowania. Helion, Gliwice, 1997.
Baird S. Miller Ch.: SQL Server – Administracja. Robomatic, Wroclaw, 2000.

Scientific publications of module course instructors related to the topic of the module:

1. Piórkowski, A., & Leśniak, A. (2014). Możliwości zastosowania strumieniowych baz danych w realizacji systemu monitorującego stan obwałowań przeciwpowodziowych. Studia Informatica, 35(2).

2. Piórkowski, A. (2011). Mysql spatial and postgis–implementations of spatial data standards. EJPAU, 14(1), 03. (EN), prezentacja: Piórkowski A.: MySQL Spatial i PostGIS – implementacje standardów danych przestrzennych. II Konferencja Wolne Oprogramowanie w Geoinformatyce.

3. Klisiewicz J., Piórkowski A, Porzycka St.: Konstrukcja procesu ETL dla danych przestrzennych. Studia Informatica. 2011 vol. 32 no. 2B s. 131-142.

4. Lupa, M., & Piórkowski, A. (2012). Regułowa optymalizacja zapytań w bazach danych przestrzennych. Studia Informatica, 33(2B), 105-115.

5. Jajeśnica, Ł., & Piórkowski, A. (2010). Wydajność złączeń i zagnieżdżeń dla schematów znormalizowanych i zdenormalizowanych. Studia Informatica, 31(2A), 445-456.

6. Ładniak, M., Piórkowski, A., & Młynarczuk, M. (2013). Structure of systems for data exploration for raster images. Studia Informatica, 34(2B), 7-20.

Additional information:

None