baiwfg2 / awesome-readings

记录看各种文章、论文的心得
2 stars 0 forks source link

distributed trasaction(omid, percolator, Fauna) #23

Open baiwfg2 opened 3 years ago

baiwfg2 commented 3 years ago

[1] https://github.com/rystsov/awesome-distributed-transactions , 关于DT 的论文, Denis Rystsov

[2] omid reloaded: 高可用事务处理, Yahoo, fast17 https://www.usenix.org/conference/fast17/technical-sessions/presentation/shacham

Apache Tephra 用到了omid 思想,在HBase 基础上提供cross-region, cross-table , multi-RPC 的事务能力

Apache Phoenix 利用 Tephra 在Hbase 基础上加入 SQL 能力

[2.1] https://www.youtube.com/watch?v=3UhY0mFFaSs , omid 分享

[3] percolator, google, 2010

baiwfg2 commented 2 years ago

🍑 [4] https://fauna.com/blog/serializability-vs-strict-serializability-the-dirty-secret-of-database-isolation-levels ,区分serializability 和 strict serializability

The second (but related) limitation of serializability is that the serial order that a serializable system picks to be equivalent to doesn’t have to be at all related to the order of transactions that were submitted to the system. A transaction Y that was submitted after transaction X may still be processed in an equivalent serial order with Y before X.

This stale read would not be a violation of serializability. It is equivalent to a serial order of the second transaction prior to the first ??

Transaction reordering of this kind is very common in this type of example where the transactions access disjoint data (checking balance vs savings balance) if the disjoint data are located on different machines in a distributed system

声称Fauna 没有使用 逻辑时钟方法来保证 strict seria,这种方法比 spanner 好

The bottom line is that if Fauna is configured to be strictly serializable for all transactions, then stale reads will never happen. Every read issued by an application is guaranteed to reflect the writes of transactions that have completed prior to when the read was issued

baiwfg2 commented 2 years ago

[5] https://coolshell.cn/articles/10910.html, 皓叔讲分布式事务