事务系统实现模式很简单?你确定没忽视这些差异?(3)
发布时间:2019-02-20 08:14 所属栏目:21 来源:hellocode
导读:它们在复制上的区别: 第一种方案,复制了事务的REDO,事务的提交顺序由Raft Log的顺序确定,Failover等机制完全按照RSM的模型来即可; 第二种方案,Raft仅仅用于复制KV,事务的顺序和Raft Log的顺序没有关系,KV层
它们在复制上的区别:
从复杂度来看:
从事务并发的角度来看:
从读写开销的角度来看:
不过这仅仅是理论上的分析,实际的复杂度、性能,很大程度上取决于实现而非理论。 三、总结 如果我们从很粗的层面来看,会觉得这些系统不过都是几个技术点的组合,而每一个技术点看起来都很简单,进而觉得事务系统不过是如此。 但实际上事务系统绝非简单的KV+Raft+Snapshot Isolation,它们之间不同的组合方式,会最终造就不同的系统。 本文留下了很多问题,RSM的Order往往认为是全序的,而Transaction 的Serialization Order是偏序的(偏序关系由事务冲突定义),它们之间如何统一? RSM的Checkpoint和Transaction Checkpoint的统一?RSM的Recovery和Transaction Recovery的关系?写两条日志的系统(journal和binlog)两条日志之间的关系是什么? 【编辑推荐】
点赞 0 (编辑:ASP站长网) |
相关内容
网友评论
推荐文章
热点阅读