← All posts

Time travel is just a really good index

Why AS OF queries on 30 days of history cost less than one extra replica.

Time travel is just a really good index

Customers use AS OF queries to answer the question every incident review asks: what did the system believe at 14:02? Keeping 30 days of history sounds expensive. It costs us less than a single extra replica.

Versions, not snapshots

Basalt never overwrites a row. Each change appends a new version tagged with the log sequence that produced it. A query AS OF a timestamp maps that time to a sequence and reads the newest version at or below it.

The index does the work

  • Versions of one key sit next to each other on disk, newest first.
  • A sparse index stores one entry per 4 KB block, so seeking to a version is one block read.
  • Old versions compact into columnar files after 24 hours and compress about 9 to 1.

The result: a point read 30 days back takes 6.1 ms at p99, against 4.2 ms for the present. History adds 14% to storage on a typical workspace.

Sigrún leads the query engine team in Reykjavík. Before Basalt she worked on storage at a Nordic payments company, where she learned to distrust any latency number without a percentile next to it.

Get started

Set your data in stone.

Free up to 10M events a month. No card, no sales call. Your first pipeline is live in about four minutes.

Project reserved · check your inbox
That didn't go through · check the address and try again
2,400+ teams in productionSOC 2 Type II38 regions