Table of Contents
Fetching ...

HACache: Leveraging Read Performance with Cache in a Heterogeneous Array

Jialin Liu, Liang Shi, Dingcui Yu

Abstract

In cost-sensitive deployments, RAID arrays may combine SSDs with different performance levels. Such heterogeneity arises when aging SSDs degrade yet remain usable, or when failed drives are replaced with new devices of explicitly better performance. While this reduces procurement cost, it creates performance challenges: traditional striping mecahnism distributes requests evenly, but slower SSDs become bottlenecks, leaving faster ones underutilized and limiting overall bandwidth to the slowest drive. To address this, we propose HACache (Heterogeneity Adaptive Cache) for read-intensive workloads. HACache introduces high-performance SSDs as read caches to rebalance request distribution. First, we formalize the request diversion problem and solve it formally. Second, to support optimal diversion ratios searching at runtime, HACache adopts a two-phase request diversion ratio adjustment mechanism. Finally, a cache capacity regulation is adopted to adapt quotas for each backend SSD based on hit rates and request diversion needs. This design maximizes bandwidth utilization. Experiments show HACache improves heterogeneous RAID read performance significantly, with bandwidth gains of about 35\% in typical mixed configurations.

HACache: Leveraging Read Performance with Cache in a Heterogeneous Array

Abstract

In cost-sensitive deployments, RAID arrays may combine SSDs with different performance levels. Such heterogeneity arises when aging SSDs degrade yet remain usable, or when failed drives are replaced with new devices of explicitly better performance. While this reduces procurement cost, it creates performance challenges: traditional striping mecahnism distributes requests evenly, but slower SSDs become bottlenecks, leaving faster ones underutilized and limiting overall bandwidth to the slowest drive. To address this, we propose HACache (Heterogeneity Adaptive Cache) for read-intensive workloads. HACache introduces high-performance SSDs as read caches to rebalance request distribution. First, we formalize the request diversion problem and solve it formally. Second, to support optimal diversion ratios searching at runtime, HACache adopts a two-phase request diversion ratio adjustment mechanism. Finally, a cache capacity regulation is adopted to adapt quotas for each backend SSD based on hit rates and request diversion needs. This design maximizes bandwidth utilization. Experiments show HACache improves heterogeneous RAID read performance significantly, with bandwidth gains of about 35\% in typical mixed configurations.

Paper Structure

This paper contains 28 sections, 1 equation, 16 figures, 1 table, 3 algorithms.

Figures (16)

  • Figure 1: Measured vs. theoretical bandwidth of 4‑drive heterogeneous RAID
  • Figure 2: Proportion of requests queued at each SSD under 4KB random read workload
  • Figure 3: Proportion of requests handled by each SSD in the queue under 4KB random read workload
  • Figure 4: Bandwidth of each SSD under 4KB random read workload
  • Figure 5: Comparison of cache schemes for heterogeneous RAID
  • ...and 11 more figures