Multi-partition Distributed Transactions over Cassandra-Like Database with Tunable Contention Control
- First Online:
- Cite this paper as:
- Lewandowski M., Lewandowski J. (2017) Multi-partition Distributed Transactions over Cassandra-Like Database with Tunable Contention Control. In: Kozielski S., Mrozek D., Kasprowski P., Małysiak-Mrozek B., Kostrzewa D. (eds) Beyond Databases, Architectures and Structures. Towards Efficient Solutions for Data Analysis and Knowledge Representation. BDAS 2017. Communications in Computer and Information Science, vol 716. Springer, Cham
The amounts of data being processed today are enormous and they require specialized systems to store them, access them and do computations. Therefore, a number of NoSql databases and big data platforms were built to address this problem. They usually lack transaction support which features atomicity, consistency, isolation, durability and at the same time they are distributed, scalable, and fault tolerant. In this paper, we present a novel transaction processing framework based on Cassandra storage model. It uses Paxos protocol to provide atomicity and consistency of transactions and Cassandra specific read and write paths improvements to provide read committed isolation level and durability. Unlike built-in Light Weight Transactions (LWT) support in Cassandra, our algorithm can span multiple data partitions and provides tunable contention control. We verified correctness and efficiency both theoretically and by executing tests over different workloads. The results presented in this paper prove the usability and robustness of the designed system.