Efficiently Supporting Multi-Level Serializability in Decentralized Database Systems

Published in IEEE Transactions on Knowledge and Data Engineering, 2023

An efficient concurrency control algorithm in distributed database system that can achieve multiple serializable levels, including strict serializable, sequential serializable, and serializable.

Abstract

In decentralized database systems, it is reported that serializability could still produce unexpected transaction orderings, leading to the stale read anomaly. To eliminate this anomaly, strict serializability imposes an additional ordering constraint, called the real-time order, which is required to be preserved among serializable transactions. Yet, preserving the real-time order in strict serializability often causes the performance to drop significantly. Because a weaker data consistency often yields better performance, in this paper, we model serializability from different consistency perspectives to properly leverage the performance and consistency. To do this, we first define a group of orderings, based on which we formulate multi-level serializability by preserving a certain set of ordering constraints among transactions. We then propose a bidirectional timestamp adjustment algorithm (abbreviated as BDTA) to support multi-level serializability with various optimizations. Our special design makes ordering constraints among transactions be preserved simply by adjusting timestamp intervals. Finally, we conduct extensive experiments to show the necessity of introducing multi-level serializability and confirm that BDTA achieves up to 1.19× better performance than the state-of-the-art concurrency control algorithms.

Citation


@article{DBLP:journals/tkde/ZhaoZZLLZPD23,
  author       = {Zhanhao Zhao and
                  Hongyao Zhao and
                  Qiyu Zhuang and
                  Wei Lu and
                  Haixiang Li and
                  Meihui Zhang and
                  Anqun Pan and
                  Xiaoyong Du},
  title        = {Efficiently Supporting Multi-Level Serializability in Decentralized
                  Database Systems},
  journal      = {IEEE Trans. Knowl. Data Eng.},
  volume       = {35},
  number       = {12},
  pages        = {12618--12633},
  year         = {2023}
}