Harmonia: A Multi-Agent Reinforcement Learning Approach to Data Placement and Migration in Hybrid Storage Systems

📄 arXiv: 2503.20507v3 📥 PDF

作者: Rakesh Nadig, Vamanan Arulchelvan, Rahul Bera, Taha Shahroodi, Gagandeep Singh, Andreas Kakolyris, Mohammad Sadrosadati, Jisung Park, Onur Mutlu

分类: cs.AR, cs.DC, cs.LG

发布日期: 2025-03-26 (更新: 2025-09-11)


💡 一句话要点

Harmonia:一种基于多智能体强化学习的混合存储系统数据放置与迁移方法

🎯 匹配领域: 支柱二:RL算法与架构 (RL & Architecture)

关键词: 混合存储系统 数据放置 数据迁移 强化学习 多智能体系统

📋 核心要点

  1. 现有混合存储系统的数据放置和迁移策略通常独立优化,导致整体性能受限。
  2. Harmonia采用多智能体强化学习,通过数据放置和迁移两个智能体的协同优化,提升HSS性能。
  3. 实验表明,Harmonia在多种HSS配置和工作负载下,显著优于现有方法,且开销较低。

📝 摘要(中文)

混合存储系统(HSS)集成了多种具有不同特性的存储设备,以低成本提供高性能和大容量。HSS的性能高度依赖于两个关键策略的有效性:(1)数据放置策略,它决定了传入数据的最佳存储设备;(2)数据迁移策略,它动态地重新排列存储的数据(即,预取热数据并驱逐冷数据)在设备之间,以维持高的HSS性能。以往的工作孤立地优化数据放置或数据迁移,导致次优的HSS性能。遗憾的是,之前没有工作尝试一起优化这两个策略。我们的目标是设计一种整体的数据管理技术,优化数据放置和数据迁移策略,以充分利用HSS的潜力,从而显著提高系统性能。我们提出了Harmonia,一种基于多智能体强化学习(RL)的数据管理技术,它采用两个轻量级的自主RL智能体,一个数据放置智能体和一个数据迁移智能体,它们调整其策略以适应当前的工作负载和HSS配置,同时相互协调以提高整体HSS性能。我们在具有多达四个异构存储设备的真实HSS配置和十七个数据密集型工作负载上评估了Harmonia。在性能优化(成本优化)的具有两个存储设备的HSS上,Harmonia的性能平均优于最佳的现有方法49.5%(31.7%)。在具有三个(四个)设备的HSS上,Harmonia的性能平均优于最佳的现有工作37.0%(42.0%)。Harmonia的性能优势来自于低延迟(推理为240纳秒)和存储开销(两个RL智能体组合在DRAM中占用206 KiB)。我们将开源Harmonia的实现,以帮助未来对HSS的研究。

🔬 方法详解

问题定义:混合存储系统(HSS)的性能受数据放置和数据迁移策略影响。现有方法通常独立优化这两个策略,无法充分利用HSS的潜力,导致性能瓶颈。因此,需要一种能够同时优化数据放置和迁移策略的整体解决方案。

核心思路:Harmonia的核心思路是利用多智能体强化学习(MARL),将数据放置和数据迁移建模为两个独立的智能体,通过智能体之间的协同交互,共同优化HSS的整体性能。这种方法允许智能体根据当前的工作负载和HSS配置动态调整策略。

技术框架:Harmonia包含两个主要模块:数据放置智能体和数据迁移智能体。数据放置智能体负责决定新数据的最佳存储位置,数据迁移智能体负责在不同存储设备之间迁移数据,以优化数据访问性能。这两个智能体通过共享状态信息和奖励信号进行协作。整体流程如下:系统接收到数据请求后,数据放置智能体决定数据存储位置;数据迁移智能体周期性地评估数据分布,并决定是否进行数据迁移。

关键创新:Harmonia的关键创新在于使用多智能体强化学习框架,将数据放置和数据迁移策略联合优化。与传统的独立优化方法相比,Harmonia能够更好地适应动态的工作负载和HSS配置,实现更高的性能。此外,Harmonia采用轻量级的设计,降低了推理延迟和存储开销。

关键设计:数据放置智能体和数据迁移智能体都使用深度Q网络(DQN)作为其策略网络。状态空间包括HSS的配置信息、工作负载特征和数据分布情况。动作空间包括选择不同的存储设备进行数据放置,以及选择不同的数据块进行迁移。奖励函数的设计目标是最大化HSS的整体性能,同时考虑延迟和存储开销。具体的参数设置包括学习率、折扣因子、探索率等,这些参数通过实验进行调整。

🖼️ 关键图片

fig_0
fig_1
fig_2

📊 实验亮点

Harmonia在真实HSS配置和数据密集型工作负载下进行了评估。在具有两个存储设备的性能优化HSS上,Harmonia的性能平均优于最佳现有方法49.5%。在具有三个和四个设备的HSS上,Harmonia的性能分别优于最佳现有方法37.0%和42.0%。同时,Harmonia保持了较低的延迟(240ns)和存储开销(206 KiB)。

🎯 应用场景

Harmonia可应用于各种需要高性能和高容量存储的场景,例如云计算、大数据分析、高性能计算等。通过优化数据放置和迁移策略,Harmonia能够显著提高存储系统的性能,降低成本,并提升用户体验。未来,Harmonia可以进一步扩展到支持更多类型的存储设备和更复杂的工作负载。

📄 摘要(原文)

Hybrid storage systems (HSS) integrate multiple storage devices with diverse characteristics to deliver high performance and capacity at low cost. The performance of an HSS highly depends on the effectiveness of two key policies: (1) the data-placement policy, which determines the best-fit storage device for incoming data, and (2) the data-migration policy, which dynamically rearranges stored data (i.e., prefetches hot data and evicts cold data) across the devices to sustain high HSS performance. Prior works optimize either data placement or data migration in isolation, which leads to suboptimal HSS performance. Unfortunately, no prior work tries to optimize both policies together. Our goal is to design a holistic data-management technique that optimizes both data-placement and data-migration policies to fully exploit the potential of an HSS, and thus significantly improve system performance. We propose Harmonia, a multi-agent reinforcement learning (RL)-based data-management technique that employs two lightweight autonomous RL agents, a data-placement agent and a data-migration agent, that adapt their policies for the current workload and HSS configuration while coordinating with each other to improve overall HSS performance. We evaluate Harmonia on real HSS configurations with up to four heterogeneous storage devices and seventeen data-intensive workloads. On performance-optimized (cost-optimized) HSS with two storage devices, Harmonia outperforms the best-performing prior approach by 49.5% (31.7%) on average. On an HSS with three (four) devices, Harmonia outperforms the best-performing prior work by 37.0% (42.0%) on average. Harmonia's performance benefits come with low latency (240ns for inference) and storage overheads (206 KiB in DRAM for both RL agents combined). We will open-source Harmonia's implementation to aid future research on HSS.