Why is Redis an in-memory DB?
Redis is called an in-memory database, because all data is stored and processed right in RAM, rather than on disk like classic DBMSs.
The core idea
Redis works entirely out of RAM, to provide:
- instant access to data (access time in microseconds),
- high throughput (millions of operations per second),
- low latency even with a large number of clients.
Disk is used only for backups or persistence, not for the primary work with data.
How this is set up
- Every data structure (String, List, Set, Hash, ZSet, etc.) lives in RAM.
- Every operation (
GET,SET,INCR, etc.) runs directly on the objects in memory. - So data isn't lost on restart, Redis can:
- periodically save a snapshot (an RDB snapshot) to disk,
- or log every write (AOF, Append Only File). On restart, Redis loads that data back into memory.
Why this matters
- RAM is tens of thousands of times faster than disk.
- There's no slow I/O, reads and writes go directly against RAM.
- That makes Redis ideal for caches, queues, sessions, tokens, counters, and real-time analytics.
But Redis isn't a "pure cache" for all that
Although Redis runs in memory, it can be made persistent:
- With RDB or AOF enabled, data is saved and restored after a restart.
- Redis can also run in replication and cluster mode, which makes it resilient to failures.
Advantages of the in-memory approach
- Speed: millions of operations per second.
- Minimal latency (<1 ms).
- The ability to perform complex operations right in memory (aggregations, sorting, queues).
Limitations
- The data volume is limited by how much RAM is available.
- Once it fills up, Redis applies an eviction policy, removing old keys (e.g.
volatile-lru,allkeys-lru, and others). - Data is lost on a power failure, unless persistence has been configured.
So, Redis is an in-memory key-value store, where disk plays a supporting role, and all the work with data happens in RAM to deliver maximum speed.
Short Answer
Interview readyPremium
A concise answer to help you respond confidently on this topic during an interview.