Challenge - 5 Problems
Redis Bulk Operations Master
Get all challenges correct to earn this badge!
Test your skills under time pressure!
❓ query_result
intermediate2:00remaining
What is the output of this MGET command?
Given the following Redis commands executed in order:
1. MSET user:1 "Alice" user:2 "Bob" user:3 "Charlie"
2. MGET user:1 user:2 user:4
What is the output of the MGET command?
1. MSET user:1 "Alice" user:2 "Bob" user:3 "Charlie"
2. MGET user:1 user:2 user:4
What is the output of the MGET command?
Redis
MSET user:1 "Alice" user:2 "Bob" user:3 "Charlie" MGET user:1 user:2 user:4
Attempts:
2 left
💡 Hint
MGET returns values for keys in order; missing keys return null.
✗ Incorrect
MGET returns the values for the requested keys in the same order. Since user:4 does not exist, its value is null.
📝 Syntax
intermediate1:30remaining
Which MSET command is syntactically correct?
Choose the syntactically correct MSET command to set keys 'a' to '1' and 'b' to '2'.
Attempts:
2 left
💡 Hint
MSET expects key and value pairs as separate arguments.
✗ Incorrect
MSET requires keys and values as separate arguments, not as objects or arrays.
❓ optimization
advanced1:30remaining
Why use MSET instead of multiple SET commands?
Which is the main advantage of using MSET over multiple individual SET commands in Redis?
Attempts:
2 left
💡 Hint
Think about network calls and atomicity.
✗ Incorrect
MSET sends all key-value pairs in one command, reducing network round-trips and ensuring atomicity.
🔧 Debug
advanced2:00remaining
Identify the error in this MGET usage
What error occurs when running this command?
MGET user:1 user:2 user:3 user:4 user:5 user:6 user:7 user:8 user:9 user:10 user:11 user:12 user:13 user:14 user:15 user:16 user:17 user:18 user:19 user:20 user:21 user:22 user:23 user:24 user:25 user:26 user:27 user:28 user:29 user:30 user:31 user:32 user:33 user:34 user:35 user:36 user:37 user:38 user:39 user:40 user:41 user:42 user:43 user:44 user:45 user:46 user:47 user:48 user:49 user:50 user:51 user:52 user:53 user:54 user:55 user:56 user:57 user:58 user:59 user:60 user:61 user:62 user:63 user:64 user:65 user:66 user:67 user:68 user:69 user:70 user:71 user:72 user:73 user:74 user:75 user:76 user:77 user:78 user:79 user:80 user:81 user:82 user:83 user:84 user:85 user:86 user:87 user:88 user:89 user:90 user:91 user:92 user:93 user:94 user:95 user:96 user:97 user:98 user:99 user:100 user:101
MGET user:1 user:2 user:3 user:4 user:5 user:6 user:7 user:8 user:9 user:10 user:11 user:12 user:13 user:14 user:15 user:16 user:17 user:18 user:19 user:20 user:21 user:22 user:23 user:24 user:25 user:26 user:27 user:28 user:29 user:30 user:31 user:32 user:33 user:34 user:35 user:36 user:37 user:38 user:39 user:40 user:41 user:42 user:43 user:44 user:45 user:46 user:47 user:48 user:49 user:50 user:51 user:52 user:53 user:54 user:55 user:56 user:57 user:58 user:59 user:60 user:61 user:62 user:63 user:64 user:65 user:66 user:67 user:68 user:69 user:70 user:71 user:72 user:73 user:74 user:75 user:76 user:77 user:78 user:79 user:80 user:81 user:82 user:83 user:84 user:85 user:86 user:87 user:88 user:89 user:90 user:91 user:92 user:93 user:94 user:95 user:96 user:97 user:98 user:99 user:100 user:101
Redis
MGET user:1 user:2 user:3 user:4 user:5 user:6 user:7 user:8 user:9 user:10 user:11 user:12 user:13 user:14 user:15 user:16 user:17 user:18 user:19 user:20 user:21 user:22 user:23 user:24 user:25 user:26 user:27 user:28 user:29 user:30 user:31 user:32 user:33 user:34 user:35 user:36 user:37 user:38 user:39 user:40 user:41 user:42 user:43 user:44 user:45 user:46 user:47 user:48 user:49 user:50 user:51 user:52 user:53 user:54 user:55 user:56 user:57 user:58 user:59 user:60 user:61 user:62 user:63 user:64 user:65 user:66 user:67 user:68 user:69 user:70 user:71 user:72 user:73 user:74 user:75 user:76 user:77 user:78 user:79 user:80 user:81 user:82 user:83 user:84 user:85 user:86 user:87 user:88 user:89 user:90 user:91 user:92 user:93 user:94 user:95 user:96 user:97 user:98 user:99 user:100 user:101
Attempts:
2 left
💡 Hint
Redis MGET has no hard limit of 100 keys; it is limited practically by memory, network buffers, and performance considerations.
✗ Incorrect
Redis MGET supports more than 100 keys per call. There is no error for 101 keys; it returns an array with values or null for each key in order.
🧠 Conceptual
expert2:30remaining
What happens if MSET is interrupted mid-operation?
Consider a Redis server crash occurring during an MSET command that sets multiple keys.
Which statement best describes the state of the keys after the server restarts?
Which statement best describes the state of the keys after the server restarts?
Attempts:
2 left
💡 Hint
Think about atomicity guarantees of MSET in Redis.
✗ Incorrect
MSET is atomic in Redis, so either all keys are set or none are set, even if interrupted.