更新时间:2024-12-09 GMT+08:00

MemArtsCC基本原理

MemArtsCC是一个分布式计算侧缓存系统。计算任务运行在计算集群的虚拟机(Virtual Machine, VM)上,数据存储在远端的对象存储(Object Storage Service, OBS)集群中。由于远端OBS的数据访问速度限制,VM上的计算任务经常需要等待数据而拖慢任务的执行。因此,计算侧需要一个高速的缓存层来消除计算集群和OBS之间的数据访问鸿沟。为了解决这个问题,提出MemArts分布式客户端缓存,MemArts部署在计算侧的VM中,通过智能预取OBS上的数据来加速计算任务的执行。

图1 MemArtsCC结构图
表1 MemArtsCC结构图说明

名称

说明

CC SDK

提供OBSA(OBSA,hadoop客户端插件) FS客户端使用的可访问OBS服务器对象的SDK。

ShardView

提供一个全局的集群视图。给定一个文件分片key,通过查询ShardView可以定位其在哪一个物理节点上。

CacheCore

提供数据读取,分片查询、数据预取、缓存淘汰功能。

LocalStore

提供管理本地SSD中缓存数据的读和写功能。

RemoteStore

提供访问OBS服务器的接口,同时内部支持通过流控机制控制预取带宽。

CM(Cluster Manager)

该集群管理模块需要具备集群视图管理,提供静态和动态视图的更新、帮助业务实现快速选主,且集群管理本身要保证服务的高可靠、视图等数据的一致性等。