Repolode
OpenAtomFoundation

OpenAtomFoundation/pikiwidb

A Redis-protocol-compatible key-value store that uses RocksDB for persistent storage, aimed at datasets larger than memory.

Open-source alternative to:Redis

Stars
6,136
Forks
1,170
Open issues
89
Last commit
22 days ago

What is it?

PikiwiDB (Pika) is a key-value storage system that speaks the Redis protocol and supports common Redis data types such as string, hash, list, zset, set, geo, hyperloglog, pubsub, bitmap and stream. Instead of keeping all data in memory, it persists data in RocksDB and caches hot data, so capacity is bounded by disk rather than RAM.

It is designed as a drop-in alternative for workloads where Redis memory cost or single-threaded limits become a problem. Deployments can run as a single master with replicas using the slaveof command, which supports full and incremental synchronization, or as a Codis cluster that scales by adding or removing groups. Migration tools for moving data from Redis are included in the repository.

The project builds from source on CentOS, Ubuntu and macOS with C++17, and official Docker images are provided. Metrics for monitoring are exposed through a companion exporter.

Key features

  • 01Compatible with the Redis protocol and its common data structures
  • 02Persists data in RocksDB while caching hot data
  • 03Supports master-slave replication with full and incremental sync
  • 04Scales out in a Codis cluster by adding or removing groups
  • 05Provides Docker images and build scripts for Linux and macOS

Use cases

  • Storing datasets that are too large to keep in Redis memory
  • Reducing memory hardware costs for large key-value workloads
  • Migrating an existing Redis deployment to a disk-backed store without changing application code

Quick start

  1. 1

    Clone the source code

    git clone https://github.com/OpenAtomFoundation/pikiwidb.git
  2. 2

    Compile with the build script

    ./build.sh
  3. 3

    Start PikiwiDB with the sample config

    ./output/pika -c ./conf/pika.conf

Things to know

  • Building from source needs gcc/g++ 9 or newer with C++17 support and cmake 3.18 or newer.
  • The README lists supported platforms as CentOS, Ubuntu and macOS only.

Topics

#redis#key-value-store#rocksdb#nosql#database-cluster#persistent-storage#nosql-data-storage#nosql-databases#pikiwidb#redis-interfaces

FAQ

What is pikiwidb?
A Redis-protocol-compatible key-value store that uses RocksDB for persistent storage, aimed at datasets larger than memory. PikiwiDB (Pika) is a key-value storage system that speaks the Redis protocol and supports common Redis data types such as string, hash, list, zset, set, geo, hyperloglog, pubsub, bitmap and stream. Instead of keeping all data in memory, it persists data in RocksDB and caches hot data, so capacity is bounded by disk rather than RAM.
Is pikiwidb free to use? What license does it have?
pikiwidb is open source under the BSD-3-Clause license. Check the license terms before using it in commercial products.
Is pikiwidb still maintained?
Actively maintained. The last commit to pikiwidb was on Oct 16, 2026.
What can I use pikiwidb for?
Storing datasets that are too large to keep in Redis memory Reducing memory hardware costs for large key-value workloads Migrating an existing Redis deployment to a disk-backed store without changing application code
How do I install pikiwidb?
Clone the source code: git clone https://github.com/OpenAtomFoundation/pikiwidb.git Compile with the build script: ./build.sh Start PikiwiDB with the sample config: ./output/pika -c ./conf/pika.conf
Where can I get pikiwidb?
The source code and installation instructions are on GitHub: https://github.com/OpenAtomFoundation/pikiwidb

Summary generated by AI from the project's README. GitHub stats refresh daily.

Related projects