对缓存系统中的数据放置问题做简单的调研,展示几篇相关性比较强的论文
数据放置问题一般产生于分布式存储系统中,多节点之间的数据均衡问题
对于文件系统而言,一般的负载均衡策略都基于文件级(还有块级、目录级别、客户端请求级别、混合级别等)
文件级别的负载均衡大概分为两类,基于哈希 的负载均衡和基于启发式策略的负载均衡,后期一般需要结合机器学习
2010
A data placement strategy in scientific cloud workflows
利用数据依赖矩阵表示数据之间的依赖关系,尽量将相互依赖的数据放置在同一个数据节点上,从而使得应用在请求数据时,能够快速获取当前需要的数据以及与其相关的数据。
2015 基于分布式哈希/数据放置
Adaptive Data Placement For Staging-Based Coupled Scientific Workflows
根据特定应用的动态数据访问模式调整数据放置,并应用访问模式驱动和位置感知机制来降低数据访问成本,支持多个工作流组件之间的高效数据共享。
2018 分层存储/数据迁移
Stacker: An Autonomic Data Movement Engine for Extreme-Scale Data Staging-Based In-Situ Workflows
- Burst Buffers的使用:论文研究了如何有效地使用Burst Buffers(突发缓冲区)。Burst Buffers是一种快速的存储层,通常位于内存层和磁盘存储层之间,用于加速数据访问和传输。
- 数据分层存储:Burst Buffers被用作内存层次结构中的持久化存储层。这意味着它们在整个存储体系结构中起到持久存储的作用,可以在需要时快速存取数据。
- 机器学习预取技术 :论文还研究了使用机器学习的预取技术,在不同的存储层之间自动移动数据。预取技术可以预测未来可能需要的数据,并提前将其从较慢的存储层移动到较快的存储层,从而提高数据访问的效率。
- Stacker原型系统:论文介绍了一个名为Stacker的原型系统,该系统在DataSpaces数据分层服务中实现了上述的解决方案。DataSpaces是一种用于数据分层和管理的服务,Stacker通过在其中实现新的功能来测试和展示论文提出的解决方案。
2018 针对倾斜负载/通用框架/数据放置
Towards Adaptive Parallel Storage Systems
- 磁盘I/O瓶颈:磁盘I/O是限制数据密集型应用程序性能和可扩展性的主要瓶颈。为了应对磁盘I/O瓶颈,通常使用并行存储系统,利用独立存储组件的并发操作。
- 并行存储系统的挑战:虽然并行存储系统可以解决部分I/O瓶颈问题,但由于配置的静态性,实现一致的高并行I/O性能仍然具有挑战性。现代并行存储系统(尤其是云、企业数据中心和科学集群中的存储系统)通常被多个应用程序共享,这些应用程序会生成动态且共存的数据访问模式。然而,这些系统通常采用"一种布局适用于所有"的数据放置策略,导致I/O并行性次优。
- 自适应并行存储框架:本文提出了一个通用框架,用于自适应并行存储系统,旨在持续提供高程度的I/O并行性。该框架受到关联规则挖掘、图着色、装箱问题和网络流技术的指导。评估结果表明,该框架在调整偏斜的并行访问模式方面非常成功,适用于基于硬盘驱动器(HDD)的传统存储阵列和基于固态驱动器(SSD)的全闪存阵列。
- 框架的通用性:除了存储阵列外,该框架具有足够的通用性,可以根据不同的并行存储场景进行定制,包括但不限于键值存储、并行/分布式文件系统以及SSD的内部并行性。
总结来说,这段文字描述了一项通过自适应并行存储系统来提高I/O并行性和整体性能的研究,并介绍了一个可以应用于多种存储环境的通用框架。评估结果表明,该框架在应对不同存储设备和访问模式时具有显著的效果。
该方法的特征
- 对于倾斜负载(skewed parallel access workload)非常有效
- 需要搞清楚该论文提出的框架的方法,理解"受到关联规则挖掘、图着色、装箱问题和网络流技术的指导"的含义
2019 分层存储/机器学习/数据放置
Optimizing Data Placement on Hierarchical Storage Architecture via Machine Learning
利用机器学习挖掘数据放置和系统I/O性能之间的关系,提出了一个数据放置学习器(ASL)。ASL可以感知不同工作流的特征与系统状态,将数据放置到合适的存储层中,最大程度保证系统I/O性能。
2020 分层存储/强化学习/数据放置
An Intelligent Data Placement Strategy for Hierarchical Storage Systems
WorkflowRL通过提取与I/O性能相关的特征,如工作流特性和系统信息,进行学习。
在多层分层存储系统中,它通过与存储环境的交互,使用强化学习算法找到最佳的数据放置策略。
2021 机器学习/持久化内存文件系统/机器学习
A machine learning assisted data placement mechanism for hybrid storage systems
本质上也是通过机器学习的方式动态学习文件的访问模式
设计了一个基于PMFS(Persistent Memory File System)的跟踪器,用于收集文件的访问特征。
基于对数据访问模式的预测结果,本文提出了一种线性数据放置算法。该算法旨在优化混合存储介质上的数据访问性能,使系统能够根据预测的访问模式,将文件放置在最佳位置。