PAIO: General, Portable I/O Optimizations With Minor Application Modifications
summary
PAIO is a user‑level library that inserts data plane stages between layers and a centralized control plane to enforce storage policies by propagating application metadata with context propagation. The implementation requires minor app changes (85 LOC inside RocksDB) and implements token‑bucket rate limiters and prioritized channels. Results show up to 4× improvement in 99th‑percentile latency for LSM key‑value stores and dynamic per‑application bandwidth guarantees under shared storage, with some throughput drops when preemption is unavailable. GitHub: dsrslab/pyo.
AI-written summary · about
chapters (11)
- 0:00Intro
- 0:23Data-centric systems
- 0:49Challenge #1
- 4:26PAIO design
- 6:101/0 differentiation
- 8:14Control plane interaction
- 9:10Tail Latency Control in LSM-based Key-Value Stores
- 11:22Mixture workload
- 12:31Read-heavy workload
- 13:26Write-heavy workload
- 15:27Paper
related talks
51mWhat went wrong with AIO
01h 06mIO in PostgreSQL: Past, Present, Future
19mBest I/O is No I/O
30mDeveloping IO Prefetching for Postgres
49mAIO in PG 18 and beyond
48mThe path to using AIO in postgres
19mSILK: Preventing Latency Spikes in Log-Structured Merge Key-Value Stores
16mDPA-Store: An Ordered Network Data Path Key-Value Store
