Distributed Systems — Replication

  1. Real-Time Sync- The replicas have to be in sync with the master. what does in-sync mean? Let's take a Database for example. In most databases, any writes going to the database are generally written to WAL (write-ahead log) first. Assuming the database storage is actually distributed over several storage servers, the data needs to be replicated as well for availability, scalability, and in the case of server crash/failure as a fallback mechanism. But to fallback, as in the server to start serving API requests from the fallback server, it needs to be in sync with the master.
    For eg an application serving hotel bookings to customers. As soon as a write occurs on the portion of the database in the master server, the replicated server needs to be in sync because if the master crashes before the write gets replicated that booking becomes invalid and might get rebooked to someone else.
    So how do we keep replicas in sync near real-time, it is one of the tough problems in computer science to solve out there.




All things Data| Lead Data Platform @ Razorpay | Ex-MongoDB

Love podcasts or audiobooks? Learn on the go with our new app.

Recommended from Medium

How to fix MacOS for a 3rd party Mouse

Person with a wrench working on a screen

Balancing Speed vs. Perfection

Homeland Security guide for Solution Architecture. [Part-2]

Building a leaderboard in Java with Jedis (Redis)

Creating a Game and Losing my Mind

Boosting image processing performance, from ImageMagick to Libvips

Connecting Your Android Device With ADB with Cable and Wifi

Learn Programming: C Static Libraries

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store
Harry Singh

Harry Singh

All things Data| Lead Data Platform @ Razorpay | Ex-MongoDB

More from Medium

Foundations of Data Systems

Key Value Stores

Kafka Stream Business Logic Error Management

4 Lessons Learned From Optimizing Our 100B-daily-events Web Handlers