These are my personal notes on CockroachDB paper CockroachDB: What is it? CockroachDB is a scalable geo-distributed SQL DBMS. Built using global OLTP workloads in mind with high availability and stron...
Notes Types of locks - Write lock Read lock Predicate lock - Lock where multiple rows are locked for reads(WHERE clause) All of these locks are long locks(Meaning all are acquired first and then all a...
Notes Two strategies for implementing deadlock prevention used in 2-phase locking Wound wait - Force the lock to release from another transaction Wait die - Wait for lock to be released or die https:/...
Notes Requirements for consistencies Linearizability Global ordering Completion to Invocation globally Sequential Global ordering Completion to Invocation per client Causal Completion to invocation pe...
Notes Dynamo is similar to a Distributed Hash Table meaning it uses consistent hashing. Dynamo is called a zero-hop DHT because each node has enough information about the whole consistent hashing ring...
Notes Background Already existing scheme used db query for replication Replication scheme was in such a way that any follower could query any other follower Due to this when they tried to implement RA...
File systems that already existed during GFS - GPFS/Lustre/AFS Why GFS was built instead of using existing ones? GPFS and Lustre are paid systems(could be the main reason) Specialized workflows Most c...