Deterministic databases are able to reduce coordination costs in a replication.This property has fostered a significant interest in the design of efficient deterministic concurrency control protocols.However,the state...Deterministic databases are able to reduce coordination costs in a replication.This property has fostered a significant interest in the design of efficient deterministic concurrency control protocols.However,the state-of-the-art deterministic concurrency control protocol Aria has three issues.First,it is impractical to configure a suitable batch size when the read-write set is unknown.Second,Aria running in low-concurrency scenarios,e.g.,a single-thread scenario,suffers from the same conflicts as running in high-concurrency scenarios.Third,the single-version schema brings write-after-write conflicts.To address these issues,we propose Gria,an efficient deterministic concurrency control protocol.Gria has the following properties.First,the batch size of Gria is auto-scaling.Second,Gria’s conflict probability in low-concurrency scenarios is lower than that in high-concurrency scenarios.Third,Gria has no write-after-write conflicts by adopting a multi-version structure.To further reduce conflicts,we propose two optimizations:a reordering mechanism as well as a rechecking strategy.The evaluation result on two popular benchmarks shows that Gria outperforms Aria by 13x.展开更多
基金Key Laboratory Ministry of Industry and Information Technology of China,Shenzhen Science and Technology Program(Nos.GXWD20220817124827001 and JCYJ20210324132406016)National Natural Science Foundation of China(Grant No.61732022)National Science Foundation of Guangdong Province(No.2023A1515030273).
文摘Deterministic databases are able to reduce coordination costs in a replication.This property has fostered a significant interest in the design of efficient deterministic concurrency control protocols.However,the state-of-the-art deterministic concurrency control protocol Aria has three issues.First,it is impractical to configure a suitable batch size when the read-write set is unknown.Second,Aria running in low-concurrency scenarios,e.g.,a single-thread scenario,suffers from the same conflicts as running in high-concurrency scenarios.Third,the single-version schema brings write-after-write conflicts.To address these issues,we propose Gria,an efficient deterministic concurrency control protocol.Gria has the following properties.First,the batch size of Gria is auto-scaling.Second,Gria’s conflict probability in low-concurrency scenarios is lower than that in high-concurrency scenarios.Third,Gria has no write-after-write conflicts by adopting a multi-version structure.To further reduce conflicts,we propose two optimizations:a reordering mechanism as well as a rechecking strategy.The evaluation result on two popular benchmarks shows that Gria outperforms Aria by 13x.