Measurements
KtemaThe engine measured on one host at 1,000, 10,000 and 100,000 records. Each volume is built once; every number is the median of 51 samples. These are the format's own costs, not a comparison against a database; the note below says which workload each is the right tool for.
Where this engine fits
Ktema is a record engine for an append-only, addressable history, not a general-purpose database. The format's per-record write cost is flat, and the structural index is constant in record count. Mount and hydration are linear: opening a volume walks the log and the host build keeps the record maps it hydrates. The total memory is therefore not constant, and this page does not claim it is. What stays constant is the index, not the engine's whole working set.
| Ktema | A relational database | |
|---|---|---|
| Purpose | An addressable history of what happened | Rows a program queries and changes |
| Write | Flat per record: 482 to 484 bytes | Row plus index maintenance |
| Index | Constant in record count, linear in distinct axis values | Grows with rows |
| Mount | Linear in the log, because the record maps hydrate | Fast, because the index is already on disk |
| Host | A service, or no OS at all on the device tier | An OS and a filesystem |
| Query | Addressed reads and bounded boxes | SQL, joins, ad-hoc predicates |
| Right tool when | The history is the product and the host is constrained | The data is mutable and the questions are open |
benches/run.sh 1000 10000 100000 · commit 19be5aa · 2026-11-06 · median of 51 samples. The host's seconds and the medium's bytes answer different questions; each chart carries one unit.