什么是事务空洞?

已解决

什么是事务空洞?

展开
收起
云上静思 2022-07-11 19:15:45 487 分享 版权
1 条回答
写回答
取消 提交回答
  • 推荐回答

    定义:对于一个2PC事务 (Prepare+Commit),如果在其Prepare和Commit之间,穿插了其它事务的Prepare或Commit,我们称这些事务间存在空洞。由于多个分布式事务时并发提交的,所以空洞现象不可避免。

    举例:假设有事务T1和T2,Prepare阶段简称为P,Commit阶段简称为C

    • 有空洞:P1 P2 C1 C2、P1 P2 C2 C1、P2 P1 C1 C2、P2 P1 C2 C1

    • 无空洞:P1 C1 P2 C2、P2 C2 P1 C1

    以上内容摘自《PolarDB-X 从入门到实战》电子书,点击https://developer.aliyun.com/ebook/download/7674可下载完整版

    2022-07-12 14:37:56
    赞同 展开评论

PolarDB 分布式版 (PolarDB for Xscale,简称“PolarDB-X”) 采用 Shared-nothing 与存储计算分离架构,支持水平扩展、分布式事务、混合负载等能力,100%兼容MySQL。 2021年开源,开源历程及更多信息访问:OpenPolarDB.com/about

收录在圈子:
还有其他疑问?
咨询AI助理