Nazwa przedmiotu:
Elective III/Databases
Koordynator przedmiotu:
Dr hab. inż. Maciej Grzenda, prof. uczelni
Status przedmiotu:
Obowiązkowy
Poziom kształcenia:
Studia II stopnia
Program:
Data Science
Grupa przedmiotów:
Współny
Kod przedmiotu:
1120-IN000-ISA-0241
Semestr nominalny:
2 / rok ak. 2022/2023
Liczba punktów ECTS:
4
Liczba godzin pracy studenta związanych z osiągnięciem efektów uczenia się:
1. godziny kontaktowe – 60 h; w tym a) obecność na wykładach – 30 h b) obecność na laboratoriach – 30 h 2. praca własna studenta – 60 h; w tym a) przygotowanie do zajęć laboratoryjnych – 30 h b) przygotowanie do egzaminu – 30 h Razem 120 h, co odpowiada 4 pkt. ECTS
Liczba punktów ECTS na zajęciach wymagających bezpośredniego udziału nauczycieli akademickich:
1. obecność na wykładach – 30 h 2. obecność na laboratoriach – 30 h Razem 60 h, co odpowiada 2 pkt. ECTS
Język prowadzenia zajęć:
angielski
Liczba punktów ECTS, którą student uzyskuje w ramach zajęć o charakterze praktycznym:
1. obecność na laboratoriach – 30 h 2. przygotowanie do zajęć laboratoryjnych – 30 h Razem 60 h, co odpowiada 2 pkt. ECTS
Formy zajęć i ich wymiar w semestrze:
  • Wykład30h
  • Ćwiczenia0h
  • Laboratorium30h
  • Projekt0h
  • Lekcje komputerowe0h
Wymagania wstępne:
Basic knowledge of object-oriented programming
Limit liczby studentów:
Laboratory – the number of students in a group matches the limits defined by the Warsaw University of Technology
Cel przedmiotu:
The objective of the course is to provide knowledge about the theory and applications of databases. After completing the course, students should: • have sufficient knowledge to design data model, including the normalization process, • be familiar with and correctly apply mechanisms used to enforce data integrity, such as mechanisms applied to ensure referential integrity or the uniqueness of primary key values, • use the SQL language to select and modify database content, • understand and be able to use transactional processing, • be able to use selected advanced mechanisms of database management systems, such as stored procedures • understand performance issues and related techniques, including indexes, • have basic knowledge about database system administration, including methods of ensuring database security on the example of Oracle RDBMS, • have basic knowledge of data warehouses and spatial data management, • know selected issues of advanced RDBMS architecture on the example of Oracle Database, • know the basic features of Big Data and NoSQL platforms.
Treści kształcenia:
Lecture: • Databases - definition. Database management systems (DBMS). • Key solutions of relational databases. • Data normalization and redundancy. Entity-relationship diagrams. • Referential integrity, uniqueness of primary key values. • SQL language – selection and modification of database content. • Transactional processing, transaction isolation. • Database server programming - stored procedures. • Performance assurance - indexes, the use of statistics and query execution plans, performance monitoring methods. • Security issues and selected issues of database server administration on the example of Oracle RDBMS. • Introduction to data warehouses. • Introduction to spatial data management. • Creating database applications - design principles and basic architectural solutions. • Access to databases from Java applications and .NET - establishing connections, effective execution of SQL statements. • Selected issues of Oracle's RDBMS architecture: databases, instances, management of physical data organization (table spaces, data files), network access configuration, data protection mechanisms and backup management. • Introduction to Big Data storage - Apache Hadoop platform and NoSQL platforms Laboratory: • Architecture of database management systems (DBMS). • Data model design. Normalization and data redundancy problems. • Ensuring data consistency – referential integrity, unique values of primary keys. • SQL language - retrieval and modification of database content. • SQL - creation and modification of a table structure. • Transactional processing, transaction isolation, locks and deadlocks. • Database server programming: stored procedures. • Indexes and performance issues. • Simple database applications • Introduction to the use of data warehouses and the use of Business Intelligence systems
Metody oceny:
There are 2-3 assignments prepared during the laboratories (max 70 points) and exam from the topics presented during the lectures (max 30 points). Total number of points to get is 100 points. At least 51 points are needed to pass the module. Final grade depends on the total number of points as follows: 0-50 points: 2.0; 51-60 points: 3.0; 61-70 points: 3.5; 71-80 points: 4.0; 81-90 points: 4.5; 91-100 points: 5.0.
Egzamin:
tak
Literatura:
1. A. Brust, S. Forte, Programming Microsoft SQL server 2005, Microsoft Press, 2006. 2. T. M. Connolly, C. E. Begg., Database systems : a practical approach to design, implementation, and management, Addison-Wesley, 2002. 3. Kleppmann, M. Designing Data-Intensive Applications. The Big Ideas Behind Reliable, Scalable, and Maintanable Systems, O’Reilly, 2017
Witryna www przedmiotu:
.
Uwagi:
.

Efekty uczenia się

Profil ogólnoakademicki - wiedza

Charakterystyka W01
Has general theoretical knowledge of databases
Weryfikacja: exam
Powiązane charakterystyki kierunkowe: DS2_W13**
Powiązane charakterystyki obszarowe:
Charakterystyka W02
Knows the way relational databases are designed and normalised; knows the way of ensuring high quality of the data and high performance of database systems
Weryfikacja: exam, graded lab. tasks
Powiązane charakterystyki kierunkowe: DS2_W13**
Powiązane charakterystyki obszarowe:
Charakterystyka W03
Has a working knowledge of SQL sufficient to prepare queries and create and alter the structure of the tables; knows key capabilities of modern database management systems
Weryfikacja: exam, graded lab. tasks
Powiązane charakterystyki kierunkowe: DS2_W13**
Powiązane charakterystyki obszarowe:

Profil ogólnoakademicki - umiejętności

Charakterystyka U01
Can formulate SQL-based queries in order to retrieve in-formation of interest, which includes formulating queries in order to aggregate data present in databases
Weryfikacja: exam, graded lab. tasks
Powiązane charakterystyki kierunkowe: DS2_U21**
Powiązane charakterystyki obszarowe:
Charakterystyka U02
Can develop database applications using JDBC standard and Oracle databases
Weryfikacja: exam, graded lab. tasks
Powiązane charakterystyki kierunkowe: DS2_U18**, DS2_U21**
Powiązane charakterystyki obszarowe:

Profil ogólnoakademicki - kompetencje społeczne

Charakterystyka K01
Knows and understands the impact of improper data organisation (lack of normalisation, lack of appropriate indexes) on the quality of the data and the risk of negative impact on the work of the users of IT systems
Weryfikacja: exam, graded lab. tasks
Powiązane charakterystyki kierunkowe: DS2_K03
Powiązane charakterystyki obszarowe: