TY - JOUR
T1 - Fine-Grained Re-Execution for Efficient Batched Commit of Distributed Transactions
AU - Dong, Zhiyuan
AU - Wang, Zhaoguo
AU - Zhang, Xiaodong
AU - Xu, Xian
AU - Zhao, Changgeng
AU - Chen, Haibo
AU - Panda, Aurojit
AU - Li, Jinyang
N1 - Publisher Copyright:
© 2023, VLDB Endowment. All rights reserved.
PY - 2023
Y1 - 2023
N2 - Distributed transaction systems incur extensive cross-node communication to execute and commit serializable OLTP transactions. As a result, their performance greatly suffers. Caching data at nodes that execute transactions can cut down remote reads. Batching transactions for validation and persistence can amortize the communication cost during committing. However, caching and batching can significantly increase the likelihood of conflicts, causing expensive aborts. In this paper, we develop Hackwrench to address the challenge of caching and batching. Instead of aborting conflicted transactions, Hackwrench tries to repair them using fine-grained re-execution by tracking the dependencies of operations among a batch of transactions. Tracked dependencies allowHackwrench to selectively invalidate and re-execute only those operations necessary to “fix” the conflict, which is cheaper than aborting and executing an entire batch of transactions. Evaluations using TPC-C and other micro-benchmarks show that Hackwrench can outperform existing commercial and research systems including FoundationDB, Calvin,COCO, and Sundial under comparable settings.
AB - Distributed transaction systems incur extensive cross-node communication to execute and commit serializable OLTP transactions. As a result, their performance greatly suffers. Caching data at nodes that execute transactions can cut down remote reads. Batching transactions for validation and persistence can amortize the communication cost during committing. However, caching and batching can significantly increase the likelihood of conflicts, causing expensive aborts. In this paper, we develop Hackwrench to address the challenge of caching and batching. Instead of aborting conflicted transactions, Hackwrench tries to repair them using fine-grained re-execution by tracking the dependencies of operations among a batch of transactions. Tracked dependencies allowHackwrench to selectively invalidate and re-execute only those operations necessary to “fix” the conflict, which is cheaper than aborting and executing an entire batch of transactions. Evaluations using TPC-C and other micro-benchmarks show that Hackwrench can outperform existing commercial and research systems including FoundationDB, Calvin,COCO, and Sundial under comparable settings.
UR - http://www.scopus.com/inward/record.url?scp=85161630502&partnerID=8YFLogxK
UR - http://www.scopus.com/inward/citedby.url?scp=85161630502&partnerID=8YFLogxK
U2 - 10.14778/3594512.3594523
DO - 10.14778/3594512.3594523
M3 - Conference article
AN - SCOPUS:85161630502
SN - 2150-8097
VL - 16
SP - 1930
EP - 1943
JO - Proceedings of the VLDB Endowment
JF - Proceedings of the VLDB Endowment
IS - 8
T2 - 49th International Conference on Very Large Data Bases, VLDB 2023
Y2 - 28 August 2023 through 1 September 2023
ER -