Concurrency Control Across Heterogeneous Storage Engines (Master Thesis, Ongoing)

Author

Tobias Hafner

Description

Concurrency control is a fundamental aspect of modern database systems, ensuring that multiple transactions can execute simultaneously without compromising data integrity. It maintains the consistency and correctness of the database by managing the interactions between transactions, preventing issues like lost updates, dirty reads, and uncommitted data.

Polypheny is a versatile system capable of handling a variety of data and workloads. This is achieved by utilizing various database systems optimized for different workloads as storage and execution engines. These underlying systems, however, may provide different levels of transaction guarantees. Some systems offer strong transactional consistency, while others rely on best-effort or optimistic models that may result in committed data not being immediately visible. In some cases, certain storage engines may not provide any transactional guarantees at all. Polypheny’s current approach, based on Strong Strict Two-Phase Locking (SS2PL), is leading to inefficiencies and potential bottlenecks.

The objective of the project is to develop a more flexible concurrency control mechanism that can accommodate the different transactional properties of these heterogeneous storage engines while maintaining the overall consistency and reliability of the Polypheny system. This also includes designing a distributed commit protocol capable of managing transactions across multiple systems and dealing with various replication models where replicas may provide different levels of transaction guarantees. Additionally, the existing SS2PL protocol needs to be replaced with a more efficient model, such as Multiversion Concurrency Control (MVCC).

Start / End Dates

2024/11/03 - 2024/05/02

Supervisors

Research Topics