Bird
Raised Fist0
Redisquery~5 mins

Sentinel quorum concept in Redis - Time & Space Complexity

Choose your learning style10 modes available
Time Complexity: Sentinel quorum concept
O(n)
Understanding Time Complexity

When Redis Sentinel monitors servers, it needs to decide when enough Sentinels agree that a server is down. This agreement is called a quorum.

We want to understand how the time to reach this quorum grows as the number of Sentinels increases.

Scenario Under Consideration

Analyze the time complexity of the following Redis Sentinel quorum check.


// Pseudocode for quorum check
int votes = 0;
for each sentinel in sentinels {
  if (sentinel reports server down) {
    votes++;
  }
}
if (votes >= quorum) {
  mark server as down;
}
    

This code counts how many Sentinels say the server is down and compares it to the quorum number.

Identify Repeating Operations

We look for repeated steps in the code.

  • Primary operation: Looping through all Sentinels to check their votes.
  • How many times: Once for each Sentinel in the system.
How Execution Grows With Input

As the number of Sentinels grows, the time to count votes grows too.

Input Size (n)Approx. Operations
1010 checks
100100 checks
10001000 checks

Pattern observation: The number of checks grows directly with the number of Sentinels.

Final Time Complexity

Time Complexity: O(n)

This means the time to decide if the quorum is reached grows in a straight line as more Sentinels join.

Common Mistake

[X] Wrong: "The quorum check happens instantly no matter how many Sentinels there are."

[OK] Correct: Each Sentinel's vote must be checked one by one, so more Sentinels mean more work.

Interview Connect

Understanding how quorum checks scale helps you explain how distributed systems keep data safe and available as they grow.

Self-Check

"What if Sentinel votes were stored in a data structure that allows instant counting? How would that change the time complexity?"

Practice

(1/5)
1.

What does the quorum setting in Redis Sentinel control?

easy
A. The maximum number of clients connected to Redis
B. The number of replicas a master must have
C. The timeout duration for client connections
D. The number of Sentinels that must agree a master is down before failover

Solution

  1. Step 1: Understand Sentinel quorum purpose

    The quorum defines how many Sentinels must agree that the master is down before starting failover.
  2. Step 2: Eliminate unrelated options

    Options about clients, timeouts, or replicas do not relate to quorum.
  3. Final Answer:

    The number of Sentinels that must agree a master is down before failover -> Option D
  4. Quick Check:

    Sentinel quorum = agreement count [OK]
Hint: Quorum means how many Sentinels agree on failure [OK]
Common Mistakes:
  • Confusing quorum with client limits
  • Thinking quorum is a timeout setting
  • Mixing quorum with replica count
2.

Which of the following is the correct way to set the quorum to 3 in a Redis Sentinel configuration file?

sentinel monitor mymaster 127.0.0.1 6379 3
easy
A. sentinel set quorum 3
B. sentinel quorum mymaster 3
C. sentinel monitor mymaster 127.0.0.1 6379 3
D. sentinel quorum 3 mymaster

Solution

  1. Step 1: Recall correct sentinel monitor syntax

    The sentinel monitor command includes the master name, IP, port, and quorum number at the end.
  2. Step 2: Match options to syntax

    Only sentinel monitor mymaster 127.0.0.1 6379 3 matches the full correct syntax with quorum as the last argument.
  3. Final Answer:

    sentinel monitor mymaster 127.0.0.1 6379 3 -> Option C
  4. Quick Check:

    Monitor command ends with quorum number [OK]
Hint: Quorum is last number in sentinel monitor command [OK]
Common Mistakes:
  • Using 'sentinel quorum' command which does not exist
  • Placing quorum before IP or port
  • Confusing 'set' command with monitor
3.

Given 5 Sentinels monitoring a master with quorum set to 3, what happens if only 2 Sentinels report the master as down?

medium
A. Failover starts immediately
B. Failover does not start because quorum is not reached
C. All Sentinels restart
D. The master is removed from monitoring

Solution

  1. Step 1: Understand quorum requirement

    Quorum is 3, meaning at least 3 Sentinels must agree the master is down to start failover.
  2. Step 2: Analyze 2 Sentinels reporting down

    Since only 2 Sentinels report down, quorum is not met, so failover will not start.
  3. Final Answer:

    Failover does not start because quorum is not reached -> Option B
  4. Quick Check:

    Quorum unmet = no failover [OK]
Hint: Failover needs quorum Sentinels agreeing [OK]
Common Mistakes:
  • Assuming failover starts with any Sentinel down report
  • Thinking Sentinels restart on partial failure
  • Believing master is removed automatically
4.

You configured 4 Sentinels with quorum set to 3, but failover never happens even when the master is down. What is the most likely cause?

medium
A. Quorum is set higher than the number of Sentinels available
B. Sentinel IP addresses are incorrect
C. The master is not actually down
D. The Redis version does not support Sentinel

Solution

  1. Step 1: Check quorum vs Sentinels count

    Quorum is 3 but only 4 Sentinels exist; if some Sentinels are unreachable, quorum may not be met.
  2. Step 2: Identify cause of failover not triggering

    If quorum is effectively higher than reachable Sentinels, failover won't start.
  3. Final Answer:

    Quorum is set higher than the number of Sentinels available -> Option A
  4. Quick Check:

    Quorum > available Sentinels blocks failover [OK]
Hint: Quorum must be ≤ number of active Sentinels [OK]
Common Mistakes:
  • Ignoring Sentinel network issues
  • Assuming master is always down
  • Blaming Redis version without checking
5.

You have 7 Sentinels monitoring a Redis master. To ensure high availability, you want failover to start only if a majority agrees the master is down. What is the best quorum value to set?

hard
A. 4
B. 3
C. 5
D. 7

Solution

  1. Step 1: Calculate majority of 7 Sentinels

    Majority means more than half, so (7 / 2) = 3.5, rounded up to 4.
  2. Step 2: Choose quorum equal to majority

    Setting quorum to 4 ensures failover starts only if most Sentinels agree.
  3. Final Answer:

    4 -> Option A
  4. Quick Check:

    Majority quorum = 4 for 7 Sentinels [OK]
Hint: Quorum = majority of Sentinels (half + 1) [OK]
Common Mistakes:
  • Setting quorum less than half
  • Setting quorum equal to total Sentinels
  • Not rounding up majority
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