Time Clocks and the Ordering of Events in a Distributed System 译文
狭义相对论告诉我们时空中的事件并不存在一个始终如一的全序关系;不同的观察者对两个事件谁先发生可能具有不同的看法。当且仅当事件e2是由事件e1引起的时候,事件e1和e2之间才存在一个先后关系。
concurrent的事件在偏序中无法定义顺序;通过定义不同进程之间事件的顺序,将偏序扩展为全序
在外部系统介入后,逻辑时钟会产生“果先于因”的异常,因此引入物理时钟来满足“Strong Clock Condition”
Lamport timestamp -> vector clock
一些参考阅读
paxos的工程实践;mulit-paxos:选择master来减少通信和磁盘io。
shadow data structure
vs raft:
线性一致性:不能读到旧数据
raft:只读操作不能直接从leader返回,需要确保leader不是旧的leader
master lease:serve read op locally while master held lease
snapshot和raft的类似。每个节点独立的快照,同时需要特定信息来维持log的一致(install snapshot);快照的性能:raft论文中使用fork
难受住了,figure 1看不懂
Primary-backup is also a special case of Vertical Paxos
The Chubby lock service for loosely-coupled distributed systems
- PacificA: Replication in Log-Based Distributed Storage Systems
- log
- data location
- Better I/O Through Byte-Addressable, Persistent Memory
- petal
- The Design and Implementation of a Log-Structured File System
- Sinfonia: a new paradigm for building scalable distributed systems
- GFS
- Finding a needle in Haystack: Facebook’s photo storage
- seaweedfs
- Analysis of Six Distributed File Systems
- f2fs
- btrfs
- frangipani
- LSM-tree
- big table
- craq
- azure
- spanner
- Dynamo: Amazon’s Highly Available Key-value Store
- Cassandra - A Decentralized Structured Storage System
- f4
- bitcoin
- blockstack
- Introduction to Distributed System Design
- Designs, Lessons and Advice from Building Large Distributed Systems
- what we talk about when we talk about distributed systems
- Design a Cache System
- Operating Systems Study Guide
- Computer Science from the Bottom Up
- Operating Systems: Three Easy Pieces
- Memory Systems Cache, DRAM, Disk
- What are some high performance TCP hacks?
Distributed systems for fun and profit
Distributed Systems and the End of the API
Replication, atomicity and order in distributed systems