Workload
read-heavy
Runs closed-loop clients with 95% point reads and 5% updates against existing records selected from a scrambled Zipfian distribution.
Application operations
| API | total | avg/s | p0.1/s | p1/s | p50/s | p99/s | p99.9/s | min/s | max/s |
|---|---|---|---|---|---|---|---|---|---|
| 6.45M | 7.16K | 5.88K | 5.99K | 7.27K | 8.09K | 8.34K | 5.83K | 8.41K | |
Loading chart… | |||||||||
| 338.73K | 376.28 | 286.99 | 298.77 | 377.78 | 459.13 | 477.03 | 282.97 | 481.99 | |
Loading chart… | |||||||||
| 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | |
Loading chart… | |||||||||
Application throughput
| API | total GiB | avg MiB/s | p0.1 | p1 | p50 | p99 | p99.9 | min | max |
|---|---|---|---|---|---|---|---|---|---|
| 2.52 | 2.87 | 2.36 | 2.4 | 2.91 | 3.24 | 3.34 | 2.33 | 3.37 | |
Loading chart… | |||||||||
| 0.13 | 0.15 | 0.11 | 0.12 | 0.15 | 0.18 | 0.19 | 0.11 | 0.19 | |
Loading chart… | |||||||||
Application latency
| API | avg ms | p0.1 | p1 | p50 | p99 | p99.9 | min | max |
|---|---|---|---|---|---|---|---|---|
| 8.93 | 0.01 | 0.01 | 0.04 | 40.22 | 74.75 | 0 | 6,328.32 | |
Loading chart… | ||||||||
| 0.02 | 0.01 | 0.01 | 0.02 | 0.05 | 0.09 | 0 | 3.54 | |
Loading chart… | ||||||||
| 130.46 | 130.5 | 130.5 | 130.5 | 130.5 | 130.5 | 130.43 | 130.5 | |
Loading chart… | ||||||||
Time from when a write returns until SlateDB first reports its sequence durable. | 90.65 | 27.89 | 32.37 | 90.24 | 168.58 | 261.12 | 22.88 | 392.7 |
Loading chart… | ||||||||
Object-store operations
| Method | total | avg/s | p0.1/s | p1/s | p50/s | p99/s | p99.9/s | min/s | max/s | $ | $/month |
|---|---|---|---|---|---|---|---|---|---|---|---|
| 2.16M | 2.4K | 2.15K | 2.2K | 2.41K | 2.5K | 2.53K | 2.05K | 2.54K | $0.8637 | $2,486.89 | |
Loading chart… | |||||||||||
| 2.67K | 2.96 | 1 | 2 | 2 | 11.99 | 14.99 | 1 | 15.01 | $0.0133 | $38.41 | |
Loading chart… | |||||||||||
| 8.91K | 9.9 | 8 | 8.99 | 10 | 10.01 | 14 | 8 | 15 | $0.0446 | $128.30 | |
Loading chart… | |||||||||||
| 8.11K | 9.01 | 0 | 0 | 0 | 32.01 | 33.03 | 0 | 34 | $0.00 | $0.00 | |
Loading chart… | |||||||||||
| 6 | 0.01 | 0 | 0 | 0 | 0 | 2 | 0 | 2 | $0.000030 | $0.0864 | |
Loading chart… | |||||||||||
Object-store throughput
| Method | total GiB | avg MiB/s | p0.1 | p1 | p50 | p99 | p99.9 | min | max |
|---|---|---|---|---|---|---|---|---|---|
| 7.98 | 9.08 | 8.12 | 8.34 | 9.11 | 9.58 | 9.72 | 7.74 | 9.77 | |
Loading chart… | |||||||||
| 0.04 | 0.04 | 0 | 0 | 0 | 1.27 | 1.98 | 0 | 2.11 | |
Loading chart… | |||||||||
| 0.24 | 0.27 | 0.11 | 0.13 | 0.16 | 0.2 | 30.13 | 0.11 | 36.45 | |
Loading chart… | |||||||||
| 0 | 0 | 0 | 0 | 0 | 0.01 | 0.01 | 0 | 0.01 | |
Loading chart… | |||||||||
| 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | |
Loading chart… | |||||||||
Process statistics
| Metric | avg | p0.1 | p1 | p50 | p99 | p99.9 | min | max |
|---|---|---|---|---|---|---|---|---|
| 0.74 | 0.6 | 0.61 | 0.73 | 0.91 | 1.18 | 0.6 | 1.27 | |
Loading chart… | ||||||||
| 15.68 | 7.38 | 7.53 | 16.21 | 21.34 | 21.38 | 7.32 | 21.38 | |
Loading chart… | ||||||||
Machine statistics
| Metric | avg | p0.1 | p1 | p50 | p99 | p99.9 | min | max |
|---|---|---|---|---|---|---|---|---|
| 4.75 | 3.66 | 3.84 | 4.72 | 5.9 | 7.37 | 3.65 | 8.22 | |
Loading chart… | ||||||||
| 16.85 | 8.54 | 8.72 | 17.38 | 22.5 | 22.54 | 8.49 | 22.55 | |
Loading chart… | ||||||||
| 11.01 | 9.82 | 10.03 | 11.01 | 12.64 | 13.42 | 9.42 | 13.57 | |
Loading chart… | ||||||||
| 4.67 | 4.06 | 4.19 | 4.56 | 4.91 | 35.5 | 3.97 | 41.92 | |
Loading chart… | ||||||||
| 0.01 | 0 | 0 | 0 | 0.09 | 0.45 | 0 | 4.98 | |
Loading chart… | ||||||||
| 0.02 | 0 | 0 | 0 | 0.41 | 1.51 | 0 | 1.52 | |
Loading chart… | ||||||||
| 0.28 | 0 | 0 | 0 | 1 | 116.01 | 0 | 121 | |
Loading chart… | ||||||||
| 0.59 | 0 | 0 | 0 | 14 | 25.01 | 0 | 26.97 | |
Loading chart… | ||||||||
Benchmark configuration
| Key | Value |
|---|---|
| scale | 1 |
| dataset / record count | 300,000,000 |
| dataset / key bytes | 20 B |
| dataset / value bytes | 400 B |
| dataset / value compression ratio | 1 |
| caches / block bytes | 8 GiB |
| caches / metadata bytes | 4 GiB |
| task / task | read-heavy |
| task / clients | 64 |
| task / warmup ms | 300,000 ms |
| task / measurement ms | 900,000 ms |
| task / initial state | golden |
| task / key selection | scrambled-zipfian-0.99 |
| task / operation mix / get | 0.95 |
| task / operation mix / put | 0.05 |
| task / scan limit | — |
| task / transaction hot keys | — |
| task / transaction reads | — |
| task / transaction updates | — |
| build profile | release |
| enabled features | aws, foyer, wal_disable, zstd |
SlateDB configuration
| Key | Value |
|---|---|
| flush interval | 100ms |
| WAL enabled | Yes |
| manifest poll interval | 1s |
| manifest update timeout | 300s |
| min filter keys | 1,000 |
| L0 SST size bytes | 64 MiB |
| max WAL flushes before L0 flush | 4,096 |
| L0 max ssts | 32 |
| L0 max ssts per key | 32 |
| L0 flush parallelism | 4 |
| max unflushed bytes | 2 GiB |
| compactor options / poll interval | 5s |
| compactor options / manifest update timeout | 300s |
| compactor options / max concurrent compactions | 4 |
| compactor options / scheduler options / max compaction sources | 16 |
| compactor options / worker / max concurrent compactions | 4 |
| compactor options / worker / compactions poll interval | 5s |
| compactor options / worker / heartbeat bytes | 5 MiB |
| compactor options / worker / heartbeat min interval | 5s |
| compactor options / worker / max SST size | 268,435,456 |
| compactor options / worker / max fetch tasks | 4 |
| compactor options / worker / bytes to fetch | 2,097,152 |
| compactor options / worker / max subcompactions | 8 |
| compactor options / worker / min filter keys | 1,000 |
| compactor options / worker / compression codec | — |
| compactor options / worker / metric level | — |
| compactor options / metric level | — |
| compactor options / commit compacted interval | 1s |
| compactor options / worker heartbeat timeout | 30s |
| compression codec | — |
| object store cache options / root folder | — |
| object store cache options / max cache size bytes | — |
| object store cache options / part size bytes | 4 MiB |
| object store cache options / cache puts | No |
| object store cache options / preload disk cache on startup | — |
| object store cache options / scan interval | 3600s |
| object store cache options / max open file handles | 1,000 |
| garbage collector options / manifest options / interval | 60s |
| garbage collector options / manifest options / min age | 300s |
| garbage collector options / manifest options / dry run | No |
| garbage collector options / WAL options / interval | 60s |
| garbage collector options / WAL options / min age | 300s |
| garbage collector options / WAL options / dry run | No |
| garbage collector options / WAL fence options / interval | 60s |
| garbage collector options / WAL fence options / min age | 300s |
| garbage collector options / WAL fence options / dry run | Yes |
| garbage collector options / compacted options / interval | 60s |
| garbage collector options / compacted options / min age | 300s |
| garbage collector options / compacted options / dry run | No |
| garbage collector options / compactions options / interval | 60s |
| garbage collector options / compactions options / min age | 300s |
| garbage collector options / compactions options / dry run | No |
| garbage collector options / detach options / interval | 60s |
| garbage collector options / metric level | — |
| metric level | Info |
| default ttl | — |