Databases in System Design — SQL, NoSQL, Replication, Sharding, and ACID vs BASE | Rajendra Pancholi