Hybrid Deterministic and Nondeterministic Execution of Transactions in Actor Systems
Research output: Chapter in Book/Report/Conference proceeding › Article in proceedings › Research › peer-review
Standard
Hybrid Deterministic and Nondeterministic Execution of Transactions in Actor Systems. / Liu, Yijian; Su, Li; Shah, Vivek; Zhou, Yongluan; Vaz Salles, Marcos Antonio.
SIGMOD 2022 - Proceedings of the 2022 International Conference on Management of Data. Association for Computing Machinery, Inc., 2022. p. 65-78.Research output: Chapter in Book/Report/Conference proceeding › Article in proceedings › Research › peer-review
Harvard
APA
Vancouver
Author
Bibtex
}
RIS
TY - GEN
T1 - Hybrid Deterministic and Nondeterministic Execution of Transactions in Actor Systems
AU - Liu, Yijian
AU - Su, Li
AU - Shah, Vivek
AU - Zhou, Yongluan
AU - Vaz Salles, Marcos Antonio
N1 - Funding Information: This work was supported by Independent Research Fund Denmark under Grant 9041-00368B. Publisher Copyright: © 2022 ACM.
PY - 2022
Y1 - 2022
N2 - 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.
AB - 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.
KW - actor model
KW - transaction processing
UR - http://www.scopus.com/inward/record.url?scp=85132696384&partnerID=8YFLogxK
U2 - 10.1145/3514221.3526172
DO - 10.1145/3514221.3526172
M3 - Article in proceedings
AN - SCOPUS:85132696384
SP - 65
EP - 78
BT - SIGMOD 2022 - Proceedings of the 2022 International Conference on Management of Data
PB - Association for Computing Machinery, Inc.
T2 - 2022 ACM SIGMOD International Conference on the Management of Data, SIGMOD 2022
Y2 - 12 June 2022 through 17 June 2022
ER -
ID: 317503360