Skip to Main Content (Press Enter)

Logo UNIBG
  • ×
  • Home
  • Degrees
  • Courses
  • People
  • Outputs
  • Organizations
  • Third Mission
  • Projects
  • Expertise & Skills

UNI-FIND
Logo UNIBG

|

UNI-FIND

unibg.it
  • ×
  • Home
  • Degrees
  • Courses
  • People
  • Outputs
  • Organizations
  • Third Mission
  • Projects
  • Expertise & Skills
  1. Courses

Data bases 2 - 21053-E1

courses
ID:
21053-E1
Dettaglio:
SSD: Data Processing Systems Duration: 48 CFU: 6
Located in:
DALMINE
Url:
Course Details:
COMPUTER SCIENCE AND ENGINEERING - 21-270/PERCORSO COMUNE Year: 3
Course Details:
COMPUTER SCIENCE AND ENGINEERING - 38-270/PERCORSO COMUNE Year: 2
COMPUTER SCIENCE AND ENGINEERING - 38-270/PERCORSO COMUNE Year: 1
Course Details:
MANAGEMENT ENGINEERING - 22-270/GENERALE Year: 3
Year:
2025
  • Overview
  • Syllabus
  • Degrees
  • People
  • Other

Overview

Date/time interval

Primo Semestre (15/09/2025 - 20/12/2025)

Syllabus

Course Objectives

After completing the course, the student will have a thorough knowledge of the inner workings of a modern DBMS. The focus is mainly on understanding the principles that underlie the construction of the various components dedicated to the management of data and transactions, providing knowledge that can find use even outside the specific domain of relational systems and lead to the design of efficient software applications.

Course Prerequisites

There are no formal requirements. It is expected that students are already familiar with DBMSs as they are illustrated in common Data Base courses.

Teaching Methods

Lectures presenting the concepts and the resolution of exercises.

Assessment Methods

The exam consists of a written test, typically structured in 4-6 questions and exercises that cover the entire program. Usually, an exercise appears that requires you to create a trigger system and an exercise that asks you to express queries in XQuery. The time available for the test is usually 2.5 hours.For students attending the course it is also possible to pass the exam through intermediate tests, one offered in the middle of the course and the other at the end of the course, each on half of the program.
It is also possible to develop a small project to get additional points.

Contents

Transactional Systems. Why transactional systems are relevant. Examples of transactional systems: financial applications, banks, online order-entry (e-commerce), online booking, "wall-street applications". Notion of "transaction". ACID properties: atomicity, consistency, isolation, durability. Concurrency control theory. Histories (or schedules), serializability, various notions of equivalence, complexity of testing. View-serializability, conflict-serializability. Two phase locking. Hierarchical locking. Deadlock analysis and resolution. Timestamp-based concurrency control. Multi-version concurrency control. Implementation of locking in commercial systems. Reliability control theory. Notion of: stable storage, logging, checkpointing, write-ahead log rule, commit rule. Recovery protocols: warm restart, cold restart. Implementation of reliability control in commercial systems. Commit protocols, theory of two-phase-commit, presumed-abort and read-only optimizations, non-blocking protocols (3 and 4 phase commit protocols). Implementation of commit protocols with heterogeneous DB servers in the X-open standard. Database architectures. Client-server applications (two and three tiers). Heterogeneous access via ODBC-JDBC standards. Distributed databases. Notion of fragmentation, allocation, transparent access. Query optimization. Distributed transactions. Parallelism in database servers. Shared-memory vs shared-nothing approaches. Scale-up, speed-up, benchmarking of performance. Replicated databases. Synchronous vs asynchronous methods. Symmetric vs primary-secondary approaches. Implementation of replication servers. Internal structure of a database server. Buffer Management. Page management. Data organizations according to the sequential, direct, and indexed data structures. B and B+ trees. Hashing functions. Access methods: scans, ordering joins. Join methods. Query optimization fundamentals. Cost models and optimal query plan selection (branch&bound method for execution plan selection). Database administration in commercial systems. Hints to physical database design (index selection, primary storage method selection). XML Databases. XML as a data modeling paradigm. Native vs relational storage. Query languages for XML. XPath, XQuery, XQBE. Active databases: The ECA Paradigm (event/condition/action) and data management. Execution methods for active databases. Trigger languages and systems: Starburst, Oracle, DB2. Formal properties of active rule sets. Termination, confluence, observable determinism. Rule analysis. Design of active rules for integrity maintenance.


Online Resources

  • E-learning
  • Leganto - Reading lists

More information

Website: https://cs.unibg.it/db2.html

Degrees

Degrees (3)

COMPUTER SCIENCE AND ENGINEERING - 21-270 
Bachelor's Degree
3 years
MANAGEMENT ENGINEERING - 22-270 
Bachelor's Degree
3 years
COMPUTER SCIENCE AND ENGINEERING - 38-270 
Master's Degree
2 years
No Results Found

People

People

PARABOSCHI Stefano Giulio
AREA MIN. 09 - Ingegneria industriale e dell'informazione
Gruppo 09/IINF-05 - SISTEMI DI ELABORAZIONE DELLE INFORMAZIONI
Settore IINF-05/A - Sistemi di elaborazione delle informazioni
Professori Ordinari
No Results Found

Other

Main module

Data bases 2
  • Use of cookies

Powered by VIVO | Designed by Cineca | 26.4.3.0