Redis
Redis is a in-memory data structure store, used as a key-value database.
Because it is in-memory it can leverage efficient low level data-structures including but not limited to:
- Linked Lists
- Sets
- Hash Tables
- Streams
- JSON
Trade-offs:
Advantages
- High read/write throughput because its in-memory
- Memory access is significantly faster than random disk I/O (DB)
- Low latency Disadvantages
- Dataset cannot be larger than memory
Uses
- Caching
- Messaging/Queues
- Real time leaderboards
- Session Storage
- Rate Limiters