加入收藏 | 设为首页 | 会员中心 | 我要投稿 济源站长网 (https://www.0391zz.cn/)- 数据工具、数据仓库、行业智能、CDN、运营!
当前位置: 首页 > 运营中心 > 建站资源 > 优化 > 正文

事务系统实现模式很简单?你确定没忽视这些差异?

发布时间:2019-02-20 09:06:45 所属栏目:优化 来源:hellocode
导读:本文试图讨论这几个问题: MySQL的redo log和binlog为什么要用XA? MongoDB的oplog是按照什么顺序复制? Raft真的只能串行Apply吗? 数据库的复制和事务是完全独立的两回事? 为什么MySQL不早点做一个Raft插件,直接用Raft实现高可用? 本文旨在阐述Fault-Toler

这种方法通过OpTime,保留了Transaction Serialization Order和RSM的Order之间的关系:

  • 并发且有冲突的事务,其OpTime的顺序和事务Serialization Order一样;
  • 并发但没有冲突的事务,其OpTime顺序不确定,因为谁先提交都不会影响正确性;
  • 有先于关系的事务,OpTime也一定满足这个先于关系。

不过这里留下了一个问题,留待读者思考:

如何按照OpTime复制,因为有事务Abort的情况,OpTime做不到连续自增,仅仅是单调自增。

二、对比

第一种其实是Spanner,第二种是TiKV、Percolator,第三种是MySQL、MongoDB。

(编辑:济源站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

热点阅读