DEV.co
Open-Source Databases · OpenAtomFoundation

pikiwidb

PikiwiDB is a Redis-compatible key-value database built on RocksDB that handles persistent storage at scale, addressing Redis's in-memory limitations. It supports master-slave and Codis cluster deployments, making it suitable for applications requiring hundreds of gigabytes of data without code changes.

Source: GitHub — github.com/OpenAtomFoundation/pikiwidb
6.1k
GitHub stars
1.2k
Forks
C++
Primary language
BSD-3-Clause
License (OSI-approved)

Key facts

Objective fields from the source. Values we can't verify are shown as “Unknown” rather than guessed.

FieldValue
RepositoryOpenAtomFoundation/pikiwidb
OwnerOpenAtomFoundation
Primary languageC++
LicenseBSD-3-Clause — OSI-approved
Stars6.1k
Forks1.2k
Open issues81
Latest releasev3.5.7 (2026-06-18)
Last updated2026-07-07
Sourcehttps://github.com/OpenAtomFoundation/pikiwidb

What pikiwidb is

C++ implementation providing Redis protocol compatibility with data structures (string, hash, list, zset, set, geo, hyperloglog, pubsub, bitmap, stream, ACL). Multi-threaded architecture using RocksDB as persistent storage engine, supporting hot/cold data tiering and binlog-based asynchronous replication.

Quickstart

Get the pikiwidb source

Clone the repository and explore it locally.

terminalbash
git clone https://github.com/OpenAtomFoundation/pikiwidb.gitcd pikiwidb# follow the project's README for install & configuration

Need it deployed, integrated, or customized instead? DEV.co ships production installs.

Best use cases

Replacing Redis for High-Volume Data

When data exceeds Redis's 16GB practical in-memory limit, PikiwiDB provides drop-in protocol compatibility while persisting to RocksDB. Enables same client libraries and commands without application rewrites.

Large-Scale Distributed Cache with Persistence

Codis cluster mode supports elastic scaling and shrinking of groups. Suitable for scenarios like Weibo (10,000+ instances) or Ximalaya (6,000+ instances, 120TB+) requiring reliable failover and data durability.

Migrating from Redis with Zero Code Changes

Master-slave replication (slaveof) and provided migration tools enable smooth transitions. Maintains Redis operation/maintenance conventions, reducing team retraining and deployment friction.

Implementation considerations

  • Compilation requires gcc/g++ >= 9 (C++17), cmake >= 3.18, autoconf. CentOS 6/7 users need devtoolset-9 upgrade; plan build environment accordingly.
  • Each data structure uses separate RocksDB instances; configure storage paths, cache sizes, and compaction parameters per workload. Monitor disk usage closely given unbounded growth potential vs. in-memory constraints.
  • Binlog-based replication is asynchronous; plan for potential data loss window in failure scenarios. Test master-slave failover and recovery procedures before production.
  • Migration from Redis requires evaluating compatibility of custom Redis modules/Lua scripts; PikiwiDB supports 'common' commands but protocol gaps may exist. Use provided migration tools and validate thoroughly.
  • RocksDB tuning (block cache, write buffers, compaction strategy) significantly impacts performance; plan profiling and benchmarking specific to your data patterns.

When to avoid it — and what to weigh

  • Sub-millisecond Latency Critical — RocksDB persistence incurs disk I/O overhead. If use case demands Redis-level in-memory speed guarantees, PikiwiDB's hierarchical caching may not match.
  • Minimal Operational Overhead Required — Cluster deployments using Codis add operational complexity (group management, slot distribution). Single-machine deployments reduce this, but scale-out scenarios require additional tooling.
  • Strict Commercial Support SLA Needed — Data shows internal adoption by Chinese companies but no information on commercial support contracts, SLAs, or vendor backing. Requires community-based support.
  • Windows Production Deployment — README lists CentOS, Ubuntu, macOS, Rocky Linux. Windows support is not documented; builds will require non-standard environments.

License & commercial use

BSD 3-Clause License. Permissive open-source license permitting commercial use, modification, and distribution with proper attribution and license inclusion. No copyleft restrictions.

BSD 3-Clause is a permissive OSI-approved license that allows commercial use without royalty or licensing fees. However, no information on official vendor support, maintenance contracts, or SLA guarantees. Deployment should assume community-based support model and vendor-neutral maintenance liability.

DEV.co evaluation signals

Editorial assessment — not user reviews. Directional, with an explicit confidence level.

SignalAssessment
MaintenanceActive
DocumentationAdequate
License clarityClear
Deployment complexityModerate
DEV.co fitGood
Assessment confidenceHigh
Security considerations

No explicit security disclosures, CVE history, or threat model documented in provided data. Inherited from RocksDB (C++ library) and Redis protocol. Evaluate: (1) exposure of ACL implementation; (2) network security (TLS/auth mechanisms vs. Redis baseline); (3) RocksDB dependency patching process. Recommend security review before sensitive data storage.

Alternatives to consider

Redis (with Cluster/Sentinel)

Native in-memory performance at scale; mature ecosystem. Requires separate persistence layer (RDB/AOF) and complexity for multi-node failover if cluster support desired.

Memcached + persistent KV store (e.g., RocksDB direct, LevelDB)

Decoupled caching and storage; simpler for specific use cases. Requires dual-system operational overhead and custom layer for protocol translation.

Full control over persistence; no protocol overhead. Sacrifices Redis compatibility, requires custom client integration, and demand higher operational expertise.

Software development agency

Build on pikiwidb with DEV.co software developers

PikiwiDB delivers persistent storage at scale with Redis-compatible commands. Evaluate deployment modes, compile from source, and benchmark against your workload. Contact our engineering team for migration planning and operational support.

Talk to DEV.co

Related open-source tools

Surfaced by semantic similarity across the DEV.co open-source index.

Related on DEV.co

Explore the category and the services that help you build with it.

pikiwidb FAQ

Is PikiwiDB a drop-in replacement for Redis?
Mostly yes for protocol and common data structures, but not for performance (RocksDB adds latency) or in-memory-only design. Test compatibility and benchmark specific commands before migrating production workloads.
What is the maximum data volume PikiwiDB supports?
README states 'hundreds of gigabytes' and references users with 100TB+ deployments (Ximalaya 120TB+). Exact limits depend on disk capacity, RocksDB tuning, and hardware. No published benchmarks provided.
Does PikiwiDB support Redis modules or Lua scripting?
Unknown. README mentions 'common data structures' and Redis protocol compatibility but does not explicitly confirm module/Lua support. Verify against target version before adopting for Lua-dependent applications.
What is the replication lag in master-slave mode?
Binlog-based asynchronous replication; exact lag depends on workload and network. README does not provide latency guarantees or benchmarks. Plan for potential data loss window in failover; test recovery procedures.

Custom software development services

DEV.co helps companies turn open-source tools like pikiwidb into production software. Our software development services cover the full lifecycle — architecture, web development, integration, and maintenance — delivered by software developers and web developers who ship. Engage our software development agency to implement or customize it for your open-source databases stack.

Ready to Scale Beyond Redis's Memory Limits?

PikiwiDB delivers persistent storage at scale with Redis-compatible commands. Evaluate deployment modes, compile from source, and benchmark against your workload. Contact our engineering team for migration planning and operational support.