MemArts :高效解决存算分离架构中数据访问的组件
本文分享自华为云社区《华为云全新缓存生态组件MemArts》,作者: MichaelYun。
公有云的基础设施都是基于存算分离的架构,即计算任务运行在计算集群的虚拟机(Virtual Machine, VM)上,而数据存储在远端的对象存储(Object Storage Service, OBS)集群中。但是,由于远端 OBS 的数据访问速度限制,VM 上的计算任务经常需要等待数据而拖慢任务的执行。
计算侧需要一个高速的缓存层来消除计算集群和 OBS 之间的数据访问鸿沟。为了解决这个问题,提出 MemArts CC 分布式客户端缓存。
设计简单性:在满足需求的前提下,尽量选择简单的设计实现方案。
解耦清晰:系统采用分层架构,层间划分清晰边界,保持整体架构稳定,同时整体架构能够解耦。各层之内的服务也需要清晰、明确、合理地解耦。
组件化原则:遵循内聚原则,划分组件,做到并行设计、独立开发、独立测试。
合理利用成熟部件:为加快开发速度和保持系统稳定,可能的情况下合理利用现有的成熟部件或加以改造,避免重复性"制造轮子"。
DevOps 为导向:使用 Microservices 设计,并提高测试、运维自动化能力,保障可监控性,可调式性,以及快速定位问题的能力。
高可用性:分布式子系统必须能够处理网络、节点、进程故障挂起、超时场景,系统设计应当避免出现单点失效。
无 NameNode 去中心化架构
应用解耦,可对接 ModelArts、 MRS、LakeHouse 等多种应用
基于 Tier Memory 的高速缓存层
基于数据分片的多节点并发预取
极轻量的缓存数据一致性校验
DAG 驱动,提前加载数据
Locality-aware 任务调度
RDMA 网络和内存计算的未来扩展
版权声明: 本文为 InfoQ 作者【华为云开发者联盟】的原创文章。
原文链接:【http://xie.infoq.cn/article/429d4491f6e5d161717f872e8】。文章转载请联系作者。
评论