Repository navigation
First measured snapshot. Synthetic data, multi-node clusters with one container per node, every figure traced to a file under results/.
Citus 14.2 on PostgreSQL 17.11
- A planner reads the foreign-key graph and emits the migration; the six ways a naive distribution fails are reproduced and fixed. 6M events migrated in 122.3 s with all 11 foreign keys restored.
- Online rebalance onto a third worker under 8-thread load: 7 moves in 37.1 s, 977,368 operations with 0 errors, every acknowledged write present.
- The whale tenant isolated in 12.8 s; a size-based rebalance brought nodes from 2.36× apart to 1.10×.
TimescaleDB 2.30 — entity-led vs time-led keys, a 17.0× columnstore, candle aggregates checked against raw, and insert-only vacuum.
ClickHouse 25.8, 2 shards × 2 replicas — sort-key choice (49,152 vs 4,168,647 rows read), async inserts, and a 60 s replica outage with no failed reads or writes.
One dataset, four engines — size, ingest and query latency, warm and cold; no winner declared.
Failures worth knowing — PostgreSQL 17.11's output_plugin_libraries, a cleanup record left by drain-then-remove, a table without a primary key blocking the rebalancer, and by_disk_size's base cost — are in the README.