etcd is a distributed, strongly consistent key-value store that serves as a foundational building block for distributed systems, particularly Kubernetes. In production, it runs as a Raft-based cluster (typically 3-5 nodes) providing gRPC and HTTP APIs for reading, writing, watching, and leasing key-value data. The server persists state via an MVCC engine over bbolt, with a write-ahead log (WAL) and snapshotting for durability and recovery. Key client libraries exist in Go (client/v3), along with CLI tools (etcdctl, etcdutl) and embedded server support. The architecture separates consensus (Raft), storage (MVCC/WAL/backend), API (gRPC/HTTP), and client layers, with extensive observability (Prometheus metrics, OpenTelemetry tracing). External dependencies include bbolt, the etcd-io/raft library, gRPC, protobuf, and Prometheus. While primarily an application/infrastructure project, it also includes research-grade robustness testing with model checking and fault injection, but these are testing tools, not the core purpose.
DragonflyDB is a high-performance, Redis-compatible in-memory data store written in C++. It implements the Redis wire protocol (RESP) and Memcached protocol, providing drop-in replacement capabilities with significantly higher throughput and lower latency, especially on multi-core machines. The architecture is based on a shared-nothing, multi-threaded design using fibers (boost.fibers) and a custom proactor event loop (epoll/io_uring). Data is partitioned across shards, each with its own thread, and transactions use a VLL-based locking scheme to minimize contention. The system supports replication via a write-ahead journal, cluster mode with slot migration, persistence via RDB snapshots, and tiered storage for offloading cold data to SSD. It also includes a full-text search engine with vector similarity (HNSW), JSON document store, Lua scripting, ACL-based security, and probabilistic data structures (Bloom, Cuckoo, Count-Min Sketch, Top-K). The codebase demonstrates advanced engineering in memory management (custom allocators, SIMD probing, compact object encoding) and concurrency (fiber-aware synchronization, RCU patterns). While primarily an application, it contains research-grade data structures and algorithms, giving it a hybrid character between production service and systems research project.
Valkey is a high-performance in-memory data structure server, forked from Redis under a BSD-3-Clause license. It serves as a key-value store with support for strings, hashes, lists, sets, sorted sets, streams, geospatial indexes, and more. The architecture is event-loop-driven (single-threaded main loop with background I/O threads for persistence, replication, and lazy freeing). It supports clustering (up to 16384 slots), replication (leader-follower with partial resync), persistence (RDB snapshots, AOF logs), Lua scripting (EVAL/FUNCTION), a pluggable module API, TLS, RDMA, and advanced features like client-side caching, hot-key detection, and replication throttling. Key entry points include the `valkey-server` daemon, `valkey-cli` client, `valkey-benchmark` load generator, and `valkey-check-rdb`/`valkey-check-aof` integrity tools. External dependencies include jemalloc (default allocator), Lua 5.1, LZ4, Zstd (optional), OpenSSL (TLS), and RDMA libraries (optional). The codebase is actively maintained with extensive unit and integration tests, and demonstrates high craftsmanship in its lock-free queues, streaming compression, and data structure implementations.
immudb is an immutable, cryptographically verifiable database system designed for tamper-evident storage. It provides ACID transactions with cryptographic verification via Merkle trees, ensuring data integrity and historical auditability. The system supports multiple data models: key-value, SQL (with PostgreSQL wire protocol compatibility), and document storage. Architecture follows a modular client-server design with separate binaries for server (immudb), admin CLI (immuadmin), client CLI (immuclient), and test tool (immutest). Key entry points include cmd/immudb/immudb.go (server), cmd/immuadmin/immuadmin.go (admin), and cmd/immuclient/immuclient.go (client). Data flows involve clients sending requests via gRPC or PostgreSQL wire protocol to the server, which processes transactions, appends to an immutable log, updates verification structures, and returns verifiable responses. External dependencies include Go modules for gRPC, protobuf, Viper, cryptographic libraries, and optional S3/MinIO for remote storage. The codebase demonstrates strong engineering practices with clear separation of concerns, extensive testing, and active maintenance.
This repository is a monorepo for the Cacheable ecosystem, providing a comprehensive suite of caching libraries for Node.js. It includes packages for in-memory caching (CacheableMemory, NodeCache), file-based caching (FlatCache, FileEntryCache), HTTP request caching (CacheableRequest, CacheableNet), and a multi-tier cache manager (cache-manager) used by NestJS. The core Cacheable class implements layered (L1/L2) caching with support for TTL, events, hooks, tag-based invalidation, non-blocking writes, and distributed synchronization via Qified/Redis. The architecture is modular, with each package designed to be used independently or composed together. The codebase is written in TypeScript with extensive test coverage (vitest), dual CJS/ESM builds, and uses modern tooling (biome, pnpm). It emphasizes production-readiness with features like stampede protection (coalesceAsync), per-store TTLs, and statistics tracking. The repository also includes a benchmark package comparing various caching implementations and a documentation website. While the API surface is large, the code demonstrates solid engineering practices and provides genuinely reusable components that solve recurring caching problems.
BuntDB is a low-level, in-memory, key/value store library in Go. It supports custom indexing (B-tree and R-tree), geospatial queries, JSON indexing, TTL expiration, and ACID transactions with multiple readers / single writer. Persistence is via an append-only file (AOF) with automatic background shrinking. The library is designed for high performance and embeddability, and is used by projects requiring a fast, reliable embedded database. The codebase is a single package with a well-structured API, comprehensive tests, and minimal dependencies.
This repository is a Redis-compatible in-memory data structure server with significant custom extensions, including vector similarity search via HNSW (vector-sets module), rate limiting (GCRA), key eviction protection (BLESS), and a comprehensive module system. The architecture is a single-threaded event loop (ae) with optional IO threads, supporting a wide range of data structures: strings, hashes, lists, sets, sorted sets, streams, geospatial indexes, HyperLogLog, and bitfields. Persistence is provided via RDB snapshots and AOF logs, with replication and cluster support. The codebase is a fork/derivative of Redis/Valkey, incorporating additional features not present in upstream, such as hash field expiration (ebuckets/estore), per-key metadata (keymeta), and a Fenwick tree-based key selection (kvstore). Key entry points include the redis-server daemon, redis-cli, redis-benchmark, and module loading via the redismodule.h API. External dependencies include jemalloc, hiredis, Lua 5.1, linenoise, tre, xxhash, OpenSSL, and optional ZSTD compression. The system is designed for high throughput and low latency, with extensive use of custom memory management (zmalloc) and data structure optimizations.
RoseDB is a lightweight, fast, and reliable key-value storage engine implemented in Go, based on the Bitcask storage model. It provides a simple embedded database library with operations like Put, Get, Delete, batch writes, TTL/expiry, key watching, and merge (compaction). The architecture uses a Write-Ahead Log (WAL) for persistence and an in-memory BTree index for fast lookups. The codebase is well-structured, with clean separation of concerns: the DB layer, index abstraction, record encoding, and utility functions. It demonstrates strong engineering practices including thread safety via sync.RWMutex, object pooling for performance, and a pluggable index interface. The repository includes comprehensive tests, benchmarks, and examples. It is actively maintained with recent commits and a responsive community.
ArcadeDB is a high-performance, multi-model database system supporting graph, document, key-value, time-series, vector, and full-text data models. It exposes multiple query languages (SQL, Cypher, Gremlin, GraphQL) and wire protocols (HTTP, Bolt, PostgreSQL, MongoDB, gRPC). The architecture is modular: a core engine (storage, indexing, query execution) with pluggable server plugins for protocols, replication (Raft-based HA), and observability. It features advanced indexing (LSM-tree, hash, vector quantization, sparse vectors, full-text BM25), time-series with PromQL and downsampling, and graph analytical views with CSR compression. Python bindings allow embedded use. The codebase demonstrates strong engineering with extensive use of interfaces, design patterns, comprehensive test coverage (including issue-specific regression tests), and automated CI/CD with performance benchmarks. It is actively maintained with low technical debt and a clean architecture.
Redka is a Redis-compatible data store implemented in Go, using SQLite or PostgreSQL as the storage backend. It reimplements core Redis data structures (strings, lists, sets, hashes, sorted sets) with full TTL support, key scanning, and set/sorted-set aggregation operations. The system can be deployed either as an embedded Go library (via the `redka` module) or as a standalone RESP-compatible server (single binary or Docker image). Architecture follows a clean layered design: a top-level `DB` struct provides transactional access to per-type repositories (e.g., `ZSet()`, `Hash()`), which in turn use a dialect abstraction layer (`sqlx`) to generate SQLite- or PostgreSQL-specific queries. The RESP server is built on `tidwall/redcon` with a command dispatch pattern and a reusable parser combinator framework for argument parsing. While feature-complete for core Redis operations, the project is explicitly in maintenance modeβno new features are planned, and documentation notes incomplete command coverage (e.g., blocking operations, some sorted set commands). The codebase is well-structured with extensive test coverage, but Postgres support shows signs of drift (many queries aliased to SQLite) and the command dispatch switch has grown large.