Bird
Raised Fist0
HLDsystem_design~5 mins

Cache eviction policies (LRU, LFU, TTL) in HLD - Cheat Sheet & Quick Revision

Choose your learning style10 modes available
Recall & Review
beginner
What does LRU stand for in cache eviction policies?
LRU stands for Least Recently Used. It evicts the cache item that has not been used for the longest time.
Click to reveal answer
beginner
Explain LFU cache eviction policy.
LFU stands for Least Frequently Used. It removes the cache item that has been accessed the fewest times.
Click to reveal answer
beginner
What is TTL in cache eviction and how does it work?
TTL means Time To Live. It sets a fixed time limit for cache items. After this time, the item expires and is removed.
Click to reveal answer
intermediate
Which cache eviction policy is best when recent data is more important?
LRU is best when recent data is more important because it keeps the most recently used items in cache.
Click to reveal answer
intermediate
Why might LFU be less effective in some scenarios compared to LRU?
LFU can keep rarely used but frequently accessed old data, which may waste cache space. LRU adapts better to changing access patterns.
Click to reveal answer
Which cache eviction policy removes the item that was used least recently?
ALRU
BLFU
CTTL
DRandom
What does LFU prioritize when evicting cache items?
AItems with the oldest timestamp
BItems used most recently
CItems used least frequently
DItems with the shortest TTL
TTL cache eviction is based on which factor?
AFrequency of access
BRecency of access
CCache size limit
DTime elapsed since insertion
Which eviction policy is best for caching session data that expires after a fixed time?
ATTL
BLRU
CLFU
DRandom
If a cache keeps frequently accessed old data but ignores recent data, which policy might it be using?
ALRU
BLFU
CTTL
DFIFO
Describe the differences between LRU, LFU, and TTL cache eviction policies.
Think about how each policy decides which item to remove.
You got /4 concepts.
    Explain when you would choose LRU over LFU or TTL for cache eviction in a system.
    Consider what kind of data your system uses most.
    You got /4 concepts.

      Practice

      (1/5)
      1. Which cache eviction policy removes the data that was used the longest time ago?
      easy
      A. Random Replacement
      B. Least Frequently Used (LFU)
      C. Time To Live (TTL)
      D. Least Recently Used (LRU)

      Solution

      1. Step 1: Understand LRU policy

        LRU removes the cache entry that was accessed the longest time ago, prioritizing recent usage.
      2. Step 2: Compare with other policies

        LFU removes least used items by frequency, TTL removes expired items by time, Random Replacement is arbitrary.
      3. Final Answer:

        Least Recently Used (LRU) -> Option D
      4. Quick Check:

        Oldest access time = LRU [OK]
      Hint: LRU = remove oldest used data [OK]
      Common Mistakes:
      • Confusing LRU with LFU
      • Thinking TTL removes based on usage
      • Assuming random removal is LRU
      2. Which of the following is a correct description of the TTL cache eviction policy?
      easy
      A. Removes data after a fixed expiration time
      B. Removes the least recently used data
      C. Removes the least frequently used data
      D. Removes data randomly when cache is full

      Solution

      1. Step 1: Define TTL policy

        TTL (Time To Live) removes cache entries after their set expiration time passes.
      2. Step 2: Contrast with other policies

        LRU removes oldest used, LFU removes least used by frequency, random is arbitrary.
      3. Final Answer:

        Removes data after a fixed expiration time -> Option A
      4. Quick Check:

        TTL = expiration time removal [OK]
      Hint: TTL means data expires after set time [OK]
      Common Mistakes:
      • Mixing TTL with LRU or LFU
      • Thinking TTL depends on usage frequency
      • Assuming TTL removes randomly
      3. Consider a cache with the following access pattern: keys A, B, A, C, B, A. Using LFU eviction, which key will be evicted when the cache is full and a new key D is added?
      medium
      A. Key C
      B. Key A
      C. Key B
      D. Key D

      Solution

      1. Step 1: Count frequency of each key

        Key A accessed 3 times, B accessed 2 times, C accessed 1 time.
      2. Step 2: Identify LFU eviction candidate

        LFU removes the least frequently used key, which is C with frequency 1.
      3. Final Answer:

        Key C -> Option A
      4. Quick Check:

        Lowest frequency = C [OK]
      Hint: LFU evicts lowest frequency key [OK]
      Common Mistakes:
      • Evicting most recent key instead of least frequent
      • Confusing frequency with recency
      • Evicting key D which is new
      4. A cache using TTL eviction is not removing expired entries as expected. Which of the following is the most likely cause?
      medium
      A. The TTL value is set too low
      B. The cache uses LRU instead of TTL
      C. The cache does not check expiration before access
      D. The cache size is too large

      Solution

      1. Step 1: Understand TTL eviction mechanism

        TTL eviction requires checking if entries have expired before returning or during cleanup.
      2. Step 2: Identify why expired entries remain

        If cache does not check expiration on access or cleanup, expired entries stay indefinitely.
      3. Final Answer:

        The cache does not check expiration before access -> Option C
      4. Quick Check:

        Expiration check missing = no TTL eviction [OK]
      Hint: TTL needs expiration checks to remove entries [OK]
      Common Mistakes:
      • Assuming low TTL causes no eviction
      • Confusing TTL with LRU behavior
      • Thinking cache size affects TTL eviction
      5. You are designing a cache for a news website where articles are frequently accessed shortly after publishing but rarely after a few days. Which eviction policy is best suited to keep fresh content while removing stale data efficiently?
      hard
      A. Least Recently Used (LRU)
      B. Time To Live (TTL)
      C. Random Replacement
      D. Least Frequently Used (LFU)

      Solution

      1. Step 1: Analyze data usage pattern

        Articles are popular shortly after publishing, then become stale after days.
      2. Step 2: Match eviction policy to pattern

        TTL removes data after expiration time, ideal for removing stale articles automatically.
      3. Step 3: Compare with other policies

        LRU and LFU focus on usage, but TTL ensures freshness by time. Random is inefficient.
      4. Final Answer:

        Time To Live (TTL) -> Option B
      5. Quick Check:

        Freshness by expiration time = TTL [OK]
      Hint: Use TTL for time-based freshness eviction [OK]
      Common Mistakes:
      • Choosing LRU or LFU ignoring data staleness
      • Assuming random eviction is efficient
      • Not considering time-based expiration
      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