Hybrid Deterministic and Nondeterministic Execution of Transactions in Actor Systems

Autor: Yijian Liu, Li Su, Vivek Shah, Yongluan Zhou, Marcos Antonio Vaz Salles
Jazyk: angličtina
Rok vydání: 2022
Předmět:
Zdroj: Liu, Y, Su, L, Shah, V, Zhou, Y & Vaz Salles, M A 2022, Hybrid Deterministic and Nondeterministic Execution of Transactions in Actor Systems . in SIGMOD 2022-Proceedings of the 2022 International Conference on Management of Data . Association for Computing Machinery, Inc., pp. 65-78, 2022 ACM SIGMOD International Conference on the Management of Data, SIGMOD 2022, Virtual, Online, United States, 12/06/2022 . https://doi.org/10.1145/3514221.3526172
DOI: 10.1145/3514221.3526172
Popis: The actor model has been widely adopted in building stateful middle-tiers for large-scale interactive applications, where ACID transactions are useful to ensure application correctness. In this paper, we present Snapper, a new transaction library on top of Orleans, a popular actor system. Snapper exploits the characteristics of actor-oriented programming to improve the performance of multi-actor transactions by employing deterministic transaction execution, where pre-declared actor access information is used to generate deterministic execution schedules. The deterministic execution can potentially improve transaction throughput significantly, especially with a high contention level. Besides, Snapper can also execute actor transactions using conventional nondeterministic strategies, including S2PL, to account for scenarios where actor access information cannot be pre-declared. A salient feature of Snapper is the ability to execute concurrent hybrid workloads, where some transactions are executed deterministically while the others are executed nondeterministically. This novel hybrid execution is able to take advantage of the deterministic execution while being able to account for nondeterministic workloads. Our experimental results on two benchmarks show that deterministic execution can achieve up to 2x higher throughput than nondeterministic execution under a skewed workload. Additionally, the hybrid execution strategy can achieve a throughput that is close to deterministic execution when there is only a small percentage of nondeterministic transactions running in the system.
Databáze: OpenAIRE