Build Your Own Fast, Persistent, Toy KV Store

This page summarizes the projects mentioned and recommended in the original post on news.ycombinator.com

Our great sponsors
  • WorkOS - The modern identity platform for B2B SaaS
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • SaaSHub - Software Alternatives and Reviews
  • dslabs

    Distributed Systems Labs and Framework

  • If building a distributed KV store interests you, you might want to check out Georgia Tech's OMSCS Distributed Computing course: https://omscs.gatech.edu/cs-7210-distributed-computing . While rewarding, this class was hell and still gives me nightmares....

    By the way, the course is built on top of Distributed System's lab: https://github.com/emichael/dslabs

  • build-your-own-x

    Master programming by recreating your favorite technologies from scratch.

  • Thank YOU! I have literally been looking for something like this to try to build a rocksdb-like project for fun. I've been waiting to pull the trigger on YC's code crafters (https://codecrafters.io/) which have you build your own redis and mysql-lite compatible db. Looking forward to going through this.

  • WorkOS

    The modern identity platform for B2B SaaS. The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.

    WorkOS logo
  • whirlog

    a minimal versioned log structured relational DB in Common Lisp

  • I've built several versions of a log based db with composite keys over the years, the most complete version so far in Common Lisp:

    https://github.com/codr7/whirlog

  • barreldb

    A disk based KV store (based on Bitcask implementation)

  • I recently implemented the Bitcask paper in Golang and shared my learnings [on this post](https://mrkaran.dev/posts/barreldb/).

    [GitHub](https://github.com/mr-karan/barreldb/) repo if interested.

    Bitcask is an excellent paper that is not overwhelming to understand and offers a great stepping stone in building your own data stores. The simple yet powerful design of an append only file is eloquent and performant.

    I’d love to read about more such implementations, if anyone has any recommendations.

  • quickiebase

    a pure-Python NoSQL database

  • I'm writing Quickiebase[1], a NoSQL database with an API similar to MongoDB. it has a roadmap: https://github.com/cabalamat/quickiebase/wiki/roadmap

    [1]: https://github.com/cabalamat/quickiebase

  • InfluxDB

    Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.

    InfluxDB logo
NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts