When View- and Conflict-Robustness Coincide for Multiversion Concurrency Control
Saved in:
| Title: | When View- and Conflict-Robustness Coincide for Multiversion Concurrency Control |
|---|---|
| Authors: | Brecht Vandevoort, Bas Ketsman, Frank Neven |
| Contributors: | Informatics and Applied Informatics, Software Languages Lab, VANDEVOORT, Brecht, KETSMAN, Bas, NEVEN, Frank |
| Source: | Proceedings of the ACM on Management of Data. 2:1-16 |
| Publication Status: | Preprint |
| Publisher Information: | Association for Computing Machinery (ACM), 2024. |
| Publication Year: | 2024 |
| Subject Terms: | FOS: Computer and information sciences, Computer Science - Databases, 0202 electrical engineering, electronic engineering, information engineering, Databases (cs.DB), robustness, 0102 computer and information sciences, 02 engineering and technology, complexity, 01 natural sciences, CCS Concepts: • Information systems → Database transaction processing Additional Key Words and Phrases: concurrency control |
| Description: | A DBMS allows trading consistency for efficiency through the allocation of isolation levels that are strictly weaker than serializability. The robustness problem asks whether, for a given set of transactions and a given allocation of isolation levels, every possible interleaved execution of those transactions that is allowed under the provided allocation, is always safe. In the literature, safe is interpreted as conflict-serializable (to which we refer here as conflict-robustness). In this paper, we study the view-robustness problem, interpreting safe as view-serializable. View-serializability is a more permissive notion that allows for a greater number of schedules to be serializable and aligns more closely with the intuitive understanding of what it means for a database to be consistent. However, view-serializability is more complex to analyze (e.g., conflict-serializability can be decided in polynomial time whereas deciding view-serializability is NP-complete). While conflict-robustness implies view-robustness, the converse does not hold in general. In this paper, we provide a sufficient condition for isolation levels guaranteeing that conflict- and view-robustness coincide and show that this condition is satisfied by the isolation levels occurring in Postgres and Oracle: read committed (RC), snapshot isolation (SI) and serializable snapshot isolation (SSI). It hence follows that for these systems, widening from conflict- to view-serializability does not allow for more sets of transactions to become robust. Interestingly, the complexity of deciding serializability within these isolation levels is still quite different. Indeed, deciding conflict-serializability for schedules allowed under RC and SI remains in polynomial time, while we show that deciding view-serializability within these isolation levels remains NP-complete. |
| Document Type: | Article |
| File Description: | application/pdf |
| Language: | English |
| ISSN: | 2836-6573 |
| DOI: | 10.1145/3651592 |
| DOI: | 10.48550/arxiv.2403.17665 |
| Access URL: | http://arxiv.org/abs/2403.17665 https://biblio.vub.ac.be/vubir/when-view-and-conflictrobustness-coincide-for-multiversion-concurrency-control(d603f220-4685-4272-8e36-989e09ec8d09).html http://hdl.handle.net/1942/45427 |
| Rights: | arXiv Non-Exclusive Distribution URL: https://www.acm.org/publications/policies/copyright_policy#Background |
| Accession Number: | edsair.doi.dedup.....d2a9949f5ac13c065e10de79e35bae95 |
| Database: | OpenAIRE |
| Abstract: | A DBMS allows trading consistency for efficiency through the allocation of isolation levels that are strictly weaker than serializability. The robustness problem asks whether, for a given set of transactions and a given allocation of isolation levels, every possible interleaved execution of those transactions that is allowed under the provided allocation, is always safe. In the literature, safe is interpreted as conflict-serializable (to which we refer here as conflict-robustness). In this paper, we study the view-robustness problem, interpreting safe as view-serializable. View-serializability is a more permissive notion that allows for a greater number of schedules to be serializable and aligns more closely with the intuitive understanding of what it means for a database to be consistent. However, view-serializability is more complex to analyze (e.g., conflict-serializability can be decided in polynomial time whereas deciding view-serializability is NP-complete). While conflict-robustness implies view-robustness, the converse does not hold in general. In this paper, we provide a sufficient condition for isolation levels guaranteeing that conflict- and view-robustness coincide and show that this condition is satisfied by the isolation levels occurring in Postgres and Oracle: read committed (RC), snapshot isolation (SI) and serializable snapshot isolation (SSI). It hence follows that for these systems, widening from conflict- to view-serializability does not allow for more sets of transactions to become robust. Interestingly, the complexity of deciding serializability within these isolation levels is still quite different. Indeed, deciding conflict-serializability for schedules allowed under RC and SI remains in polynomial time, while we show that deciding view-serializability within these isolation levels remains NP-complete. |
|---|---|
| ISSN: | 28366573 |
| DOI: | 10.1145/3651592 |
Nájsť tento článok vo Web of Science