An in-memory data store that is API-compatible with Redis and Memcached, aiming to be a drop-in replacement for both.
redis/redis
An in-memory data store used as a cache, data structure server, document store, vector database, and message broker.
- Stars
- 77,036
- Forks
- 24,888
- Open issues
- 3,055
- Last commit
- 8 hours ago
What is it?
Redis is an in-memory data store that keeps most data in RAM and exposes it through a simple text-based protocol. Beyond plain key-value storage, it offers native strings, hashes, lists, sets, sorted sets, streams, bitmaps, geospatial indexes and several probabilistic structures, along with transactions and Lua scripting.
The project also includes a query engine for indexing hash and JSON documents, with support for vector search, full-text search, geospatial queries and aggregations. Built-in modules add JSON, time series and Bloom, Cuckoo, Count-min, Top-k and t-digest filters. A modules API lets developers add new commands to the server.
The repository contains the server source in C, along with the redis-cli and redis-benchmark tools. It can be built from source on Linux, macOS and BSD systems, or installed via Docker images and package managers.
Key features
- 01Rich data types including strings, hashes, lists, sets, sorted sets, streams and bitmaps.
- 02Query engine for vector, full-text and geospatial search over hash and JSON documents.
- 03Key expiration and multiple eviction policies for cache use.
- 04Pub/sub messaging, streams with consumer groups, and transactions.
- 05Lua scripting that runs on the server.
- 06Modules API for extending server commands.
Use cases
- Caching frequently accessed data in front of a primary database.
- Storing user session data for web applications.
- Building job queues, leaderboards and rate limiters.
- Serving as a vector store for semantic search and LLM memory or RAG retrieval.
Quick start
- 1
Start a Redis server with Docker
docker run -d -p 6379:6379 redis:latest - 2
Or install a binary distribution such as Homebrew, Snap, RPM or Debian from the README links
Things to know
- The license is not clearly identified in the project metadata.
- Vector set is marked beta in the README.
Topics
FAQ
- What is redis?
- An in-memory data store used as a cache, data structure server, document store, vector database, and message broker. Redis is an in-memory data store that keeps most data in RAM and exposes it through a simple text-based protocol. Beyond plain key-value storage, it offers native strings, hashes, lists, sets, sorted sets, streams, bitmaps, geospatial indexes and several probabilistic structures, along with transactions and Lua scripting.
- Is redis free to use? What license does it have?
- redis is open source under the Other license. Check the license terms before using it in commercial products.
- Is redis still maintained?
- Actively maintained. The last commit to redis was on Oct 20, 2026.
- What can I use redis for?
- Caching frequently accessed data in front of a primary database. Storing user session data for web applications. Building job queues, leaderboards and rate limiters. Serving as a vector store for semantic search and LLM memory or RAG retrieval.
- How do I install redis?
- Start a Redis server with Docker: docker run -d -p 6379:6379 redis:latest Or install a binary distribution such as Homebrew, Snap, RPM or Debian from the README links
- Where can I get redis?
- The source code and installation instructions are on GitHub: https://github.com/redis/redis
Summary generated by AI from the project's README. GitHub stats refresh daily.
Related projects
A Redis- and Valkey-compatible in-memory key-value server written in Rust, with built-in full-text and vector search.
Distributed, reliable key-value store for the most critical data of a distributed system, built on Raft consensus with a gRPC API.
Apache IoTDB is a time series database for collecting, storing and analyzing IoT sensor data, with SQL-like queries and JDBC access.
An open-source graph database in Rust that stores graph, vector and full-text data together on object storage, queryable from Rust, TypeScript, Go and Python.
A Chinese-language Java backend interview guide covering CS fundamentals, databases, distributed systems, system design and AI application development.