- 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. 2023/2024
- 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: