the library

everything we measured.

How kiban is built, how it was tested, and what it lost along the way, in the engine's own reports. 20 documents, 55k words, at commit fd1b95c.

start here

What kiban is, how it is built, and what changed.

  1. meet kiban.

    What the engine does, how to use it, and what it promises.

    6 min read
  2. how it is built.

    Ownership, durable state, reads, snapshots and maintenance.

    7 min read
  3. what changed.

    Every release and the unreleased work on main.

    3 min read

how it stays correct

The failures found, the repairs made, and how they were proved.

  1. the repairs.

    Three scale-validation failures, their root causes and the fixes.

    9 min read
  2. the audit.

    Concrete findings from an engine audit, and how each was closed.

    6 min read
  3. testing the write path.

    An independent QA pass on group commit, with one medium finding.

    12 min read
  4. how we measure.

    Workloads, cache treatment, fault injection and how to reproduce them.

    8 min read

head to head

Kiban against the engines people would otherwise use.

  1. against the field.

    Four engines at one commit: the campaign behind this site's numbers.

    5 min read
  2. versus tuned RocksDB.

    A fair fight: 425 commands, screened settings, and where RocksDB wins.

    23 min read
  3. why not just use SQLite?

    Both reasonable schemas, tuned, on an agent-memory workload.

    23 min read
  4. Helix and LMDB.

    In-process, with matched durability, at 10k and 1M records.

    34 min read

how it got fast

One bottleneck at a time, including what was rejected.

  1. one sync for many writers.

    How group commit took durable writes from 718 to 5,379 per second.

    4 min read
  2. where a read spends its time.

    A ranked cycle profile of the read path, and what it pointed at.

    24 min read
  3. reworking the read path.

    Faster scans, and an optional range tier ported from HelixDB.

    7 min read
  4. the perfect hash.

    The experiment that showed immutable tables could beat a B+tree.

    11 min read
  5. making the index cheap.

    PH3 cuts locator bytes by 61% and frees the path to a default.

    11 min read
  6. latest ten, faster.

    A scan extension that beats LMDB in every measured cell.

    3 min read
  7. reads on a small cache.

    Point reads when the data is ten times larger than the cache.

    39 min read

from the archive

Earlier work, kept because the context still matters.

  1. reading RocksDB.

    Mechanisms in the RocksDB source that matter to kiban.

    5 min read
  2. where it started.

    The v0.1.0 throughput comparison, losses included.

    10 min read