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.
翻译:摘要:在成本敏感的部署场景中,RAID阵列可能混合不同性能等级的固态硬盘(SSD)。这种异构性出现在以下情况:老化SSD性能退化但仍可继续使用,或失效硬盘被更换为性能显著更优的新设备时。虽然这降低了采购成本,却带来了性能挑战:传统条带化机制虽然能均匀分发请求,但性能较慢的SSD会成为瓶颈,导致高速SSD利用率不足,整体带宽受限在最慢硬盘的水平。针对此问题,我们提出了面向读密集型工作负载的HACache(异构自适应缓存),通过引入高性能SSD作为读缓存来重新平衡请求分布。首先,我们对请求跨盘分流问题进行形式化描述并给出理论解法。其次,为支持运行时最优分流比搜索,HACache采用两阶段请求分流比调整机制。最后,通过缓存容量调节机制,基于命中率和请求分流需求为每个后端SSD动态分配缓存配额。该设计最大化带宽利用率。实验表明,在典型混合配置下,HACache可将异构RAID读取性能提升约35%的带宽增益。