Hybrid Deterministic and Nondeterministic Execution of Transactions in Actor Systems
Research output: Chapter in Book/Report/Conference proceeding › Article in proceedings › Research › peer-review
Final published version, 3.19 MB, PDF document
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.
|Title of host publication||SIGMOD 2022 - Proceedings of the 2022 International Conference on Management of Data|
|Publisher||Association for Computing Machinery, Inc.|
|Publication status||Published - 2022|
|Event||2022 ACM SIGMOD International Conference on the Management of Data, SIGMOD 2022 - Virtual, Online, United States|
Duration: 12 Jun 2022 → 17 Jun 2022
|Conference||2022 ACM SIGMOD International Conference on the Management of Data, SIGMOD 2022|
|Periode||12/06/2022 → 17/06/2022|
This work was supported by Independent Research Fund Denmark under Grant 9041-00368B.
© 2022 ACM.
- actor model, transaction processing