Bird
Raised Fist0
HLDsystem_design~20 mins

Database replication (master-slave) in HLD - Practice Problems & Coding Challenges

Choose your learning style10 modes available
Challenge - 5 Problems
🎖️
Master of Master-Slave Replication
Get all challenges correct to earn this badge!
Test your skills under time pressure!
🧠 Conceptual
intermediate
1:30remaining
What is the primary role of the master in a master-slave database replication setup?
In a master-slave replication system, what is the main responsibility of the master database?
ATo handle all write operations and propagate changes to slaves
BTo serve read requests only without accepting writes
CTo synchronize data from slaves to itself
DTo act as a backup server without processing any requests
Attempts:
2 left
💡 Hint
Think about which database handles data changes first.
❓ Architecture
intermediate
1:30remaining
Which component ensures data consistency between master and slaves in replication?
In a master-slave replication architecture, which mechanism is primarily used to keep slave databases consistent with the master?
AManual synchronization by database administrators
BPeriodic full database snapshots sent to slaves
CSlaves independently polling the master for changes
DBinary log shipping from master to slaves
Attempts:
2 left
💡 Hint
Consider how changes are recorded and sent continuously.
❓ scaling
advanced
2:00remaining
How does master-slave replication improve read scalability?
In a system using master-slave replication, how is read scalability typically improved?
ABy increasing the number of write operations on the master
BBy making slaves handle write requests to reduce master load
CBy directing read requests to multiple slave databases to distribute load
DBy disabling replication during peak read times
Attempts:
2 left
💡 Hint
Think about how slaves can help with read requests.
❓ tradeoff
advanced
2:00remaining
What is a common tradeoff when using asynchronous master-slave replication?
Choosing asynchronous replication between master and slaves often leads to which tradeoff?
APotential data loss on master failure due to lag in replication
BSlower write performance on the master due to waiting for slaves
CSlaves becoming write masters automatically
DIncreased network traffic from slaves to master
Attempts:
2 left
💡 Hint
Consider what happens if the master crashes before slaves catch up.
❓ estimation
expert
2:30remaining
Estimate the maximum number of slaves supported given network bandwidth constraints
A master database generates 100 MB of binary log data per minute. Each slave requires a dedicated network connection with 10 MB/min bandwidth to receive replication data without lag. What is the maximum number of slaves that can be supported without replication delay?
A1 slave
B10 slaves
C50 slaves
D100 slaves
Attempts:
2 left
💡 Hint
Divide total data generated by bandwidth per slave.

Practice

(1/5)
1. What is the primary role of the master in a master-slave database replication setup?
easy
A. Handle all write operations and propagate changes to slaves
B. Serve read requests only
C. Backup data from slaves
D. Monitor network traffic between nodes

Solution

  1. Step 1: Understand master responsibilities

    The master database is responsible for handling all write operations to ensure data consistency.
  2. Step 2: Understand slave responsibilities

    Slaves replicate data from the master and typically handle read requests to reduce load on the master.
  3. Final Answer:

    Handle all write operations and propagate changes to slaves -> Option A
  4. Quick Check:

    Master = writes + replication [OK]
Hint: Master handles writes; slaves handle reads [OK]
Common Mistakes:
  • Thinking slaves handle writes
  • Confusing backup role with master
  • Assuming master only monitors
2. Which of the following is the correct sequence for setting up master-slave replication?
easy
A. Configure slaves only, master is optional
B. Configure slaves, then configure master, then start replication
C. Start replication, then configure master and slaves
D. Configure master, then configure slaves, then start replication

Solution

  1. Step 1: Configure master first

    The master must be configured first to accept writes and log changes for replication.
  2. Step 2: Configure slaves after master

    Slaves are then configured to connect to the master and replicate its data.
  3. Final Answer:

    Configure master, then configure slaves, then start replication -> Option D
  4. Quick Check:

    Master setup before slaves [OK]
Hint: Master setup precedes slaves setup [OK]
Common Mistakes:
  • Configuring slaves before master
  • Starting replication before configuration
  • Ignoring master configuration
3. Consider a master-slave setup where the master receives 100 writes per second and each slave replicates with a 2-second lag. If a read request is sent to a slave immediately after a write, what is the likely result?
medium
A. The slave returns the latest data including the write
B. The slave crashes due to replication lag
C. The slave returns stale data missing the latest write
D. The slave rejects the read request

Solution

  1. Step 1: Understand replication lag effect

    Replication lag means slaves are behind the master by 2 seconds, so recent writes are not yet applied.
  2. Step 2: Analyze read request timing

    A read immediately after a write will hit the slave before replication applies the change, so stale data is returned.
  3. Final Answer:

    The slave returns stale data missing the latest write -> Option C
  4. Quick Check:

    Replication lag causes stale reads [OK]
Hint: Replication lag means slaves have delayed data [OK]
Common Mistakes:
  • Assuming slaves always have latest data
  • Thinking slaves reject reads during lag
  • Believing slaves crash due to lag
4. A system uses master-slave replication but experiences inconsistent reads from slaves. Which change can fix this issue?
medium
A. Allow writes on slaves to sync data faster
B. Increase monitoring and reduce replication lag
C. Disable replication and use only master for reads
D. Add more slaves without changing replication

Solution

  1. Step 1: Identify cause of inconsistent reads

    Inconsistent reads usually happen due to replication lag causing slaves to have outdated data.
  2. Step 2: Fix by reducing replication lag

    Improving monitoring and optimizing replication reduces lag, making slave reads more consistent.
  3. Final Answer:

    Increase monitoring and reduce replication lag -> Option B
  4. Quick Check:

    Reduce lag to fix inconsistent reads [OK]
Hint: Reduce lag to fix stale slave reads [OK]
Common Mistakes:
  • Allowing writes on slaves breaks consistency
  • Disabling replication loses read scaling
  • Adding slaves without lag fix doesn't help
5. You are designing a high-availability system using master-slave replication. Which approach best ensures minimal downtime and data loss during master failure?
hard
A. Automatically promote a slave to master and redirect writes
B. Stop all writes until the master is manually restored
C. Allow writes on slaves during master downtime
D. Use only one master without slaves to avoid complexity

Solution

  1. Step 1: Understand master failure impact

    If the master fails, writes cannot proceed unless a new master is available.
  2. Step 2: Use automatic failover

    Promoting a slave to master automatically and redirecting writes ensures availability and minimal data loss.
  3. Step 3: Evaluate other options

    Stopping writes causes downtime; writing on slaves breaks consistency; single master lacks redundancy.
  4. Final Answer:

    Automatically promote a slave to master and redirect writes -> Option A
  5. Quick Check:

    Automatic failover ensures availability [OK]
Hint: Auto-promote slave for failover [OK]
Common Mistakes:
  • Stopping writes causes downtime
  • Writing on slaves breaks data integrity
  • Ignoring failover leads to outages
Recommended

Ready to prove it?

Pass the test and this pattern moves unknown strong while earning +1 Grip toward your certificate.

10 questions~5 mineasy hard