Bird
Raised Fist0
Redisquery~5 mins

Redis CLI (redis-cli) basics - Time & Space Complexity

Choose your learning style10 modes available
Time Complexity: Redis CLI (redis-cli) basics
O(1)
Understanding Time Complexity

When using Redis CLI commands, it's helpful to know how the time to run a command changes as the data grows.

We want to see how the cost of commands grows when we have more data in Redis.

Scenario Under Consideration

Analyze the time complexity of the following Redis CLI commands.


SET key1 value1
GET key1
DEL key1
EXISTS key1
INCR counter
    

These commands set, get, delete, check existence, and increment keys in Redis.

Identify Repeating Operations

Look for any repeated steps or loops inside these commands.

  • Primary operation: Each command accesses a single key directly.
  • How many times: Each command runs once per call, no loops over multiple keys.
How Execution Grows With Input

As the number of keys in Redis grows, these commands still work on one key at a time.

Input Size (n)Approx. Operations
101 operation
1001 operation
10001 operation

Pattern observation: The time to run these commands stays about the same no matter how many keys exist.

Final Time Complexity

Time Complexity: O(1)

This means each command takes about the same time regardless of how much data Redis holds.

Common Mistake

[X] Wrong: "Commands like GET or SET take longer if Redis has more keys."

[OK] Correct: These commands directly access the key, so their time does not depend on total keys stored.

Interview Connect

Knowing that basic Redis commands run in constant time helps you explain how Redis stays fast even with lots of data.

Self-Check

"What if we used a command that scans all keys, like KEYS *? How would the time complexity change?"

Practice

(1/5)
1. What does the Redis CLI command SET key value do?
easy
A. Retrieves the value of the key
B. Deletes the key from Redis
C. Stores the value under the given key in Redis
D. Lists all keys in Redis

Solution

  1. Step 1: Understand the SET command

    The SET command in Redis stores a value under a specified key.
  2. Step 2: Match command to action

    Since SET assigns a value to a key, it stores data rather than deleting or retrieving it.
  3. Final Answer:

    Stores the value under the given key in Redis -> Option C
  4. Quick Check:

    SET command = store value [OK]
Hint: SET means store a value for a key [OK]
Common Mistakes:
  • Confusing SET with GET
  • Thinking SET deletes keys
  • Assuming SET lists keys
2. Which of the following is the correct syntax to get the value of a key named user1 in Redis CLI?
easy
A. KEYS user1
B. GET user1
C. DEL user1
D. SET user1

Solution

  1. Step 1: Identify the command to retrieve a value

    The GET command is used to fetch the value stored at a key in Redis.
  2. Step 2: Check syntax correctness

    GET followed by the key name is the correct syntax to get the value of 'user1'.
  3. Final Answer:

    GET user1 -> Option B
  4. Quick Check:

    GET command syntax = GET key [OK]
Hint: GET retrieves value, SET stores, DEL deletes [OK]
Common Mistakes:
  • Using SET instead of GET
  • Using DEL to get value
  • Using KEYS to get value
3. What will be the output of the following Redis CLI commands?
SET count 10
INCR count
GET count
medium
A. "11"
B. "10"
C. Error: wrong type operation
D. nil

Solution

  1. Step 1: Analyze the commands step-by-step

    SET count 10 stores the string "10" under key 'count'. INCR count increments the integer value by 1.
  2. Step 2: Understand INCR effect and GET result

    INCR converts the string "10" to integer 10, adds 1 to make 11. GET count returns "11" as a string.
  3. Final Answer:

    "11" -> Option A
  4. Quick Check:

    INCR on "10" = "11" [OK]
Hint: INCR adds 1 to numeric string values [OK]
Common Mistakes:
  • Expecting original value "10"
  • Thinking INCR causes error
  • Expecting nil for existing key
4. You run the command GET mykey but get an error: WRONGTYPE Operation against a key holding the wrong kind of value. What is the likely cause?
medium
A. The key holds a non-string value like a list or set
B. The key does not exist
C. The Redis server is down
D. The GET command is misspelled

Solution

  1. Step 1: Understand the error message

    The error means GET was used on a key that stores a data type other than string, like a list or set.
  2. Step 2: Identify the cause from options

    Since the key exists but is not a string, GET cannot retrieve it, causing the error.
  3. Final Answer:

    The key holds a non-string value like a list or set -> Option A
  4. Quick Check:

    WRONGTYPE error = wrong data type for GET [OK]
Hint: GET works only on string keys, not lists or sets [OK]
Common Mistakes:
  • Thinking key does not exist
  • Assuming server is down
  • Misspelling GET causes this error
5. You want to store a user's name and age in Redis using redis-cli. Which sequence of commands correctly stores the name "Alice" and age 30, then retrieves both values?
hard
A. SET user:name Alice SET user:age 30 HGET user:name HGET user:age
B. LPUSH user Alice 30 LRANGE user 1 1
C. SET user Alice 30 GET user
D. HSET user name Alice age 30 HGET user name HGET user age

Solution

  1. Step 1: Identify the best data structure for multiple fields

    Using a hash (HSET) allows storing multiple fields like name and age under one key.
  2. Step 2: Check commands for storing and retrieving fields

    HSET user name Alice age 30 stores both fields. HGET user name and HGET user age retrieve them separately.
  3. Final Answer:

    HSET user name Alice age 30 HGET user name HGET user age -> Option D
  4. Quick Check:

    Use hashes for multiple related fields [OK]
Hint: Use HSET/HGET for multiple fields in one key [OK]
Common Mistakes:
  • Using SET with multiple values
  • Using list commands for key-value pairs
  • Trying to GET multiple values at once
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