缓存放置文章调研

对缓存系统中的数据放置问题做简单的调研,展示几篇相关性比较强的论文

数据放置问题一般产生于分布式存储系统中,多节点之间的数据均衡问题

对于文件系统而言,一般的负载均衡策略都基于文件级(还有块级、目录级别、客户端请求级别、混合级别等)

文件级别的负载均衡大概分为两类,基于哈希 的负载均衡和基于启发式策略的负载均衡,后期一般需要结合机器学习

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

  1. 磁盘I/O瓶颈:磁盘I/O是限制数据密集型应用程序性能和可扩展性的主要瓶颈。为了应对磁盘I/O瓶颈,通常使用并行存储系统,利用独立存储组件的并发操作。
  2. 并行存储系统的挑战:虽然并行存储系统可以解决部分I/O瓶颈问题,但由于配置的静态性,实现一致的高并行I/O性能仍然具有挑战性。现代并行存储系统(尤其是云、企业数据中心和科学集群中的存储系统)通常被多个应用程序共享,这些应用程序会生成动态且共存的数据访问模式。然而,这些系统通常采用"一种布局适用于所有"的数据放置策略,导致I/O并行性次优。
  3. 自适应并行存储框架:本文提出了一个通用框架,用于自适应并行存储系统,旨在持续提供高程度的I/O并行性。该框架受到关联规则挖掘、图着色、装箱问题和网络流技术的指导。评估结果表明,该框架在调整偏斜的并行访问模式方面非常成功,适用于基于硬盘驱动器(HDD)的传统存储阵列和基于固态驱动器(SSD)的全闪存阵列。
  4. 框架的通用性:除了存储阵列外,该框架具有足够的通用性,可以根据不同的并行存储场景进行定制,包括但不限于键值存储、并行/分布式文件系统以及SSD的内部并行性。

总结来说,这段文字描述了一项通过自适应并行存储系统来提高I/O并行性和整体性能的研究,并介绍了一个可以应用于多种存储环境的通用框架。评估结果表明,该框架在应对不同存储设备和访问模式时具有显著的效果。

该方法的特征

  1. 对于倾斜负载(skewed parallel access workload)非常有效
  2. 需要搞清楚该论文提出的框架的方法,理解"受到关联规则挖掘、图着色、装箱问题和网络流技术的指导"的含义
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)的跟踪器,用于收集文件的访问特征。

基于对数据访问模式的预测结果,本文提出了一种线性数据放置算法。该算法旨在优化混合存储介质上的数据访问性能,使系统能够根据预测的访问模式,将文件放置在最佳位置。

相关推荐
Pasregret9 分钟前
多级缓存架构深度解析:从设计原理到生产实践
缓存·架构
我的golang之路果然有问题2 小时前
快速了解redis,个人笔记
数据库·经验分享·redis·笔记·学习·缓存·内存
道友老李3 小时前
【存储中间件】Redis核心技术与实战(五):Redis缓存使用问题(BigKey、数据倾斜、Redis脑裂、多级缓存)、互联网大厂中的Redis
redis·缓存·中间件
绿算技术11 小时前
存储新势力:助力DeepSeek一体机
人工智能·科技·缓存·fpga开发
zru_960216 小时前
Docker 部署 Redis:快速搭建高效缓存服务
redis·缓存·docker
axinawang17 小时前
springboot整合redis实现缓存
spring boot·redis·缓存
for6218 小时前
本地缓存大杀器-Caffeine
缓存·caffeine·本地缓存
听闻风很好吃21 小时前
Redis高级数据类型解析(二)——Set、Sorted Set与Geo实战指南
数据库·redis·缓存
陈大大陈21 小时前
基于 C++ 的用户认证系统开发:从注册登录到Redis 缓存优化
java·linux·开发语言·数据结构·c++·算法·缓存
编程在手天下我有21 小时前
缓存与数据库数据一致性:旁路缓存、读写穿透和异步写入模式解析
数据库·缓存·oracle·软件开发·架构设计·数据一致性