
简介
2024 年 3 月 2 日至 3 月 6 日,在英国爱丁堡举行了第30届IEEE高性能计算机体系结构国际研讨会HPCA(30th IEEE International Symposium on High-Performance Computer Architecture),HPCA是计算机体系结构领域的四大顶级会议之一。由阿里云服务器研发团队和蚂蚁数据基础设施与高可用团队合作完成的论文《LightPool: A NVMe-oF-based High-performance and Lightweight Storage Pool Architecture for Cloud-Native Distributed Database 》入选。
新兴的云原生分布式数据库依靠本地NVMe SSD为众多云应用提供高性能、高可用的数据服务。然而,由于各节点内CPU和存储容量不平衡,数据库集群的本地存储利用率较低。例如,OceanBase分布式数据库集群,拥有数百PB的本地存储容量,但本地存储利用率仅为40%左右。虽然分解存储(EBS)可以通过按需独立配置CPU和存储来提高存储利用率,但它们存在性能瓶颈和高昂的成本。
在本文中,作者提出了LightPool,一种高性能、轻量级的存储池架构,大规模部署在OceanBase集群中,提高存储资源利用率。 LightPool的核心思想是将集群存储聚合到存储池中并实现统一管理。
1 背景
**1.1NVMe(Non-Volatile Memory Express) && NVMe over Fabrics (NVMe-oF) **
NVMe (Non-Volatile Memory Express):一个专门为固态硬盘设计的高速传输协议。NVMe通过PCIe总线连接,支持多队列并行处理,能够大幅提升带宽和减少延迟,相较传统硬盘和SATA-SSD具有显著的性能优势。因此NVMe SSDs成为了云数据中心满足高I/O密集型应用需求的首选
NVMeover Fabrics (NVMe-oF):这是NVMe的扩展协议,用于通过网络(称为“fabric”)访问远程的NVMe设备,在远程访问场景中提供接近本地存储的高性能。NVMe-oF支持不同的网络协议(如RDMA和TCP),在云数据中心中,通常选择TCP协议因其稳定性和无需硬件支持的特点,而RDMA则适合于特殊的高性能环境
1.2 Kubernetes
Kubernetes 是一个流行的容器编排系统,广泛应用于云数据中心。其主要架构包括控制平面节点和工作节点。在 Kubernetes 集群中,Pod 是最小的工作负载单元,每个 Pod 包含一个或多个运行的容器。Kubernetes 提供了一种灵活的方式来管理和分配计算资源,从而使应用程序能够根据需求自动扩展和调度。
1.3 容器存储(Container Storage)
容器存储(Container Storage)在 Kubernetes 集群中,存储提供者为 Pod 提供持久化存储,以“卷”的形式存在。常见的存储选项包括本地存储、分离式存储方案、共享存储方案。
- 本地存储方案允许用户直接访问与同一工作节点相连的存储设备,从而实现高吞吐和低延迟。
- 分离式存储方案通过网络访问远程的专用存储集群。OpenEBS 提供高可靠的存储,支持多数据副本,并通过 NVMe-oF 将数据副本存储到其他节点。
- 共享存储方案是上述两种方案的结合。

最低0.47元/天 解锁文章
706





