SQLite Internals: Pages and B-trees

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

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

    Official Git mirror of the SQLite source tree

  • Here's a header file that basically mirrors some of what the article is talking about, the layout of pages and the btree and so on (~lines 100-200)

    https://github.com/sqlite/sqlite/blob/master/src/btreeInt.h

    The code for the btree functions is here and is a bit over my head TBH with all the locks and read permissions and so on but it's a nice example of how to comment code I think:

    https://github.com/sqlite/sqlite/blob/master/src/btree.c

  • mentat

    Discontinued UNMAINTAINED A persistent, relational store inspired by Datomic and DataScript. (by mozilla)

  • mentat was archived by mozilla back in 2017, but there are a bunch of forks. Because github is dumb and has a terrible interface for exploring forks [0], I used the Active GitHub Forks tool [1] that helped to find:

    qpdb/mentat [2] seems to be the largest (+131 commits) and most recently modified (May this year) fork of mozilla/mentat.

    [0]: https://github.com/mozilla/mentat/network/members - Seriously, how am I supposed to use this? Hundreds of entries, but no counts for stars, contributors, or commits, no details about recent commits. Just click every one?

    [1]: https://techgaun.github.io/active-forks/index.html

    [2]: https://github.com/qpdb/mentat

  • 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
  • schwardle

    Implementation of Wordle for the command line in Deno

  • any kind of complicated relational data https://github.com/schwartzworld/schwardle

  • DoorScope

    DoorScope application supporting the specification review process

  • Interesting article. When I implemented the no-sql database using the sqlite backend 15 years ago (for https://github.com/rochus-keller/DoorScope and https://github.com/rochus-keller/CrossLine) there was little literature about it (section 9 of https://www.amazon.com/Definitive-Guide-SQLite-Experts-Sourc... was helpful). There was no lmdb or leveldb yet; though there was bekreley db and I did prototypes with it, but the sqlite backend turned out to be much leaner and faster for the task at hand.

  • CrossLine

    CrossLine is an outliner with sophisticated cross-link capabilities in the tradition of the well-respected Ecco Pro

  • Interesting article. When I implemented the no-sql database using the sqlite backend 15 years ago (for https://github.com/rochus-keller/DoorScope and https://github.com/rochus-keller/CrossLine) there was little literature about it (section 9 of https://www.amazon.com/Definitive-Guide-SQLite-Experts-Sourc... was helpful). There was no lmdb or leveldb yet; though there was bekreley db and I did prototypes with it, but the sqlite backend turned out to be much leaner and faster for the task at hand.

  • datalevin

    A simple, fast and versatile Datalog database

  • active-forks

    Find active github forks of a repo https://git.io/vSnrC

  • mentat was archived by mozilla back in 2017, but there are a bunch of forks. Because github is dumb and has a terrible interface for exploring forks [0], I used the Active GitHub Forks tool [1] that helped to find:

    qpdb/mentat [2] seems to be the largest (+131 commits) and most recently modified (May this year) fork of mozilla/mentat.

    [0]: https://github.com/mozilla/mentat/network/members - Seriously, how am I supposed to use this? Hundreds of entries, but no counts for stars, contributors, or commits, no details about recent commits. Just click every one?

    [1]: https://techgaun.github.io/active-forks/index.html

    [2]: https://github.com/qpdb/mentat

  • 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
  • mentat

    A persistent, relational store inspired by Datomic and DataScript. (by qpdb)

  • mentat was archived by mozilla back in 2017, but there are a bunch of forks. Because github is dumb and has a terrible interface for exploring forks [0], I used the Active GitHub Forks tool [1] that helped to find:

    qpdb/mentat [2] seems to be the largest (+131 commits) and most recently modified (May this year) fork of mozilla/mentat.

    [0]: https://github.com/mozilla/mentat/network/members - Seriously, how am I supposed to use this? Hundreds of entries, but no counts for stars, contributors, or commits, no details about recent commits. Just click every one?

    [1]: https://techgaun.github.io/active-forks/index.html

    [2]: https://github.com/qpdb/mentat

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