{"repo":"pie-314/RadishDB","free":true,"listed":false,"github":"https://github.com/pie-314/RadishDB","clone":"git clone https://github.com/pie-314/RadishDB.git","description":"Redis-inspired in-memory key–value database in C with WAL, crash recovery, TTL, AOF rewrite, REPL, and TCP server. Built to understand real database internals.","language":"C","stars":10,"topics":["c","crash-recovery","database","from-scratch","hash-table","in-memory-database","key-value-store","learning-project","persistence","storage-engine"],"license":"MIT","category":"databases-storage","readme_excerpt":"RadishDB RadishDB is a Redis-inspired, in-memory key–value database written in C , built to understand how real databases work internally and how to deploy them like production services. RadishDB implements real storage engine internals and is fully containerized and deployable using Docker and Docker Compose . This project focuses on: write-ahead logging (WAL) crash recovery expiration & TTL log compaction persistent storage containerized deployment (Docker) service orchestration (docker-compose) RadishDB is a learning-grade but architecturally serious database, following patterns used in Redis, RocksDB, and PostgreSQL. --- Screenshots Interactive REPL TCP Server Mode --- Core Features Key–Value Storage String → string mapping Hash table with separate chaining Automatic resizing Heap-managed memory Safe insert, update, delete --- TTL & Expiration Per-key expiration timestamps Passive expiration on read Active expiration via sweeper Redis-style TTL semantics --- Persistence RadishDB uses two persistence layers. Snapshot (.rdbx) Binary snapshot of full database state. Used for fast save and restore. --- Append-Only File (AOF) Crash-safe write-ahead log. Features: deterministic replay fsync durability partial write protection crash recovery --- AOF Rewrite (Log Compaction) RadishDB implements log compaction: serializes current state writes new compact log removes obsolete history This ensures: bounded disk usage fast startup crash safety --- Architecture RadishDB is built as a ","default_branch":null,"files":null,"tree":[],"storefront":"/r/pie-314","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/pie-314/RadishDB/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}