Table of Contents
Fetching ...

Delta Fair Sharing: Performance Isolation for Multi-Tenant Storage Systems

Tyler Griggs, Soujanya Ponnapalli, Dev Bali, Wenjie Ma, James DeLoye, Audrey Cheng, Jaewan Hong, Natacha Crooks, Scott Shenker, Ion Stoica, Matei Zaharia

TL;DR

This work addresses the lack of performance isolation in multi-tenant storage systems caused by high preemption delays in resources like write buffers and read caches. It introduces Delta Fair Sharing, a framework enforcing δ-fairness and δ-Pareto-efficiency to bound end-to-end waiting times for fair shares while maintaining high utilization; reservations are computed under worst-case demand modeling with a ramp-up threshold k. The authors implement these ideas in FairDB, an extension of RocksDB, detailing policies for the write buffer and read cache, plus per-client accounting and I/O scheduling, including compaction reservation. Through YCSB macrobenchmarks and microbenchmarks, FairDB achieves up to 9× reductions in p99 tail latency with throughput close to fair sharing and substantially better than static quotas, demonstrating predictable end-to-end delay composition across resources. The approach offers practical, tunable isolation suitable for production storage systems and broader multi-resource environments, with clear trade-offs between latency guarantees and utilization.

Abstract

Modern storage systems, often deployed to support multiple tenants in the cloud, must provide performance isolation. Unfortunately, traditional approaches such as fair sharing do not provide performance isolation for storage systems, because their resources (e.g., write buffers and read caches) exhibit high preemption delays. These delays lead to unacceptable spikes in client tail latencies, as clients may be forced to wait arbitrarily long to receive their fair share of resources. We introduce Delta Fair Sharing, a family of algorithms for sharing resources with high preemption delays. These algorithms satisfy two key properties: $δ$-fairness, which bounds a client's delay in receiving its fair share of resources to $δ$ time units, and $δ$-Pareto-efficiency, which allocates unused resources to clients with unmet demand. Together, these properties capture resource-acquisition delays end-to-end, bound well-behaved clients' tail-latency spikes to $δ$ time units, and ensure high utilization. We implement such algorithms in FAIRDB, an extension of RocksDB. Our evaluation shows that FAIRDB isolates well-behaved clients from high-demand workloads better than state-of-the-art alternatives.

Delta Fair Sharing: Performance Isolation for Multi-Tenant Storage Systems

TL;DR

This work addresses the lack of performance isolation in multi-tenant storage systems caused by high preemption delays in resources like write buffers and read caches. It introduces Delta Fair Sharing, a framework enforcing δ-fairness and δ-Pareto-efficiency to bound end-to-end waiting times for fair shares while maintaining high utilization; reservations are computed under worst-case demand modeling with a ramp-up threshold k. The authors implement these ideas in FairDB, an extension of RocksDB, detailing policies for the write buffer and read cache, plus per-client accounting and I/O scheduling, including compaction reservation. Through YCSB macrobenchmarks and microbenchmarks, FairDB achieves up to 9× reductions in p99 tail latency with throughput close to fair sharing and substantially better than static quotas, demonstrating predictable end-to-end delay composition across resources. The approach offers practical, tunable isolation suitable for production storage systems and broader multi-resource environments, with clear trade-offs between latency guarantees and utilization.

Abstract

Modern storage systems, often deployed to support multiple tenants in the cloud, must provide performance isolation. Unfortunately, traditional approaches such as fair sharing do not provide performance isolation for storage systems, because their resources (e.g., write buffers and read caches) exhibit high preemption delays. These delays lead to unacceptable spikes in client tail latencies, as clients may be forced to wait arbitrarily long to receive their fair share of resources. We introduce Delta Fair Sharing, a family of algorithms for sharing resources with high preemption delays. These algorithms satisfy two key properties: -fairness, which bounds a client's delay in receiving its fair share of resources to time units, and -Pareto-efficiency, which allocates unused resources to clients with unmet demand. Together, these properties capture resource-acquisition delays end-to-end, bound well-behaved clients' tail-latency spikes to time units, and ensure high utilization. We implement such algorithms in FAIRDB, an extension of RocksDB. Our evaluation shows that FAIRDB isolates well-behaved clients from high-demand workloads better than state-of-the-art alternatives.
Paper Structure (32 sections, 8 equations, 9 figures, 6 tables, 1 algorithm)

This paper contains 32 sections, 8 equations, 9 figures, 6 tables, 1 algorithm.

Figures (9)

  • Figure 1: Example. A well-behaved client demands its share at T$_0$ and experiences long delays to receive its share with traditional fair sharing. Delta Fair Sharing bounds such delays (to $\delta$ time units).
  • Figure 2: Delayed fair sharing for write buffer. $f_i$ is a client's fair share, $C_i$ is a portion of buffer capacity, and $\rho_i$ is the reservation size.
  • Figure 3: RocksDB Architecture Overview.
  • Figure 4: Write Buffer Manager (WBM). A reserved pool ensures bounded reclamation delay; excess usage draws from a global pool.
  • Figure 5: Cache Manager (CM). Per‑client reservations prevent eviction below $\rho_{\mathrm{cache}}$; capacity above $\rho_{\mathrm{cache}}$ remains shareable.
  • ...and 4 more figures