[发明专利]分布式存储系统及其存储节点离线处理方法有效
申请号: | 202210528182.4 | 申请日: | 2022-05-16 |
公开(公告)号: | CN114625325B | 公开(公告)日: | 2022-09-23 |
发明(设计)人: | 李舒 | 申请(专利权)人: | 阿里云计算有限公司;阿里巴巴(中国)有限公司 |
主分类号: | G06F3/06 | 分类号: | G06F3/06;G06F11/07 |
代理公司: | 北京展翼知识产权代理事务所(特殊普通合伙) 11452 | 代理人: | 屠长存 |
地址: | 310024 浙江省*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 分布式 存储系统 及其 存储 节点 离线 处理 方法 | ||
本公开涉及一种分布式存储系统及其存储节点离线处理方法。分布式存储系统的多个存储节点的存储模块上存储数据副本,每份数据具有多个相同的数据副本。维护在线存储节点的存储模块的存活状态记录。保存分布式存储系统所存储数据的元数据,包括多个数据副本的存储位置信息。响应于存储节点离线,保持为该存储节点的存储模块维护的存活状态记录为存活,而禁止对该存储节点进行读操作和写操作。响应于来自客户端的读请求和/或写请求,基于元数据,分配指向其它存储节点的路径来执行相应的读操作和/或写操作。由此,可以降低大容量存储节点离线后对多备份/纠删码系统的影响,在提供稳定对外服务的同时,加速完成后台数据补齐。
技术领域
本公开涉及分布式存储系统,特别涉及分布式存储系统的存储节点离线处理方法。
背景技术
为满足大规模数据存储的需要,分布式存储方案得到了越来越广泛地应用。
分布式存储系统可以包括例如一个或多个存储节点集群。一个存储节点集群中可以设置多个存储节点。
图1示意性地示出了分布式存储系统或其一个存储节点集群。
数据中心网络系统,负责数据网络传输和控制,在一些层面如控制功能方面上也将其可以称为“控制节点”或“控制设备”,例如可以根据全局信息对数据读写任务进行整体调度。
多个存储节点在数据中心网络系统的调度下存储数据副本。可以为每份数据提供多个相同的数据副本,并且分别存储在不同存储节点的存储模块上。
每个存储节点上可以设置有网卡(NIC)、CPU、内存、多个存储模块如对象存储设备OSD 1至OSDn。
为了降低成本,目前开发的存储节点中,在同一机箱中封装了越来越多的存储模块,以便多个存储模块共享一些公共模块,如网卡、CPU、内存等等。
存储模块例如可以是对象存储设备(OSD),可以由硬盘如固态硬盘(SSD)来实现。
另一方面,存储模块如SSD的存储容量也变得越来越高。这样,高容量的存储节点可以提供多达几百个万亿字节(TB)的存储容量。
然而,随着存储节点以及其中的存储模块如SSD的大规模部署,按照一定的故障概率,在所部署的高容量存储节点中将不可避免地出现较多的故障,并因而需要对出现故障的存储节点进行维护。
在对出现故障的高容量存储节点(例如图1中以虚线框绘制的存储节点)进行维护时,需要先将其下线(使其处于离线状态),在离线状态下执行修复操作,然后再将修复后的存储节点恢复上线(使其处于在线状态)。
当一个存储节点出现故障时,故障可能在于存储节点上任何模块。现有方案中,会将整个存储节点下线,启动修复程序以解决问题。而当存储节点修复完成重新移回到存储节点集群时,需要重新安装操作系统,并且格式化存储模块。换言之,离线存储节点上的各个存储模块上所存储的所有数据将被丢弃。
待修复完成后,存储节点集群需要向修复后重新上线的存储节点填充整个存储节点的数据,就像对新并入的一个全新的存储节点所进行的操作一样。
然而,对于高容量存储节点,几百个TB的数据的离线(丢弃)可能会对数据可靠性和存储性能带来风险。
而且,故障存储节点离线后,可能需要从其它存储节点复制几百个TB的数据,以便维持数据副本的数量。而故障存储节点修复上线后,又需要从其它存储节点复制几百个TB的数据到恢复上线的存储节点。这都会导致巨量的网络流量。这样,在因故障离线再修复后恢复上线的存储节点准备好提供服务之前,会消耗很长的时间。
因此,仍然需要一种改进的分布式存储系统的存储节点离线处理方案,以解决上述至少一方面问题。
发明内容
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于阿里云计算有限公司;阿里巴巴(中国)有限公司,未经阿里云计算有限公司;阿里巴巴(中国)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202210528182.4/2.html,转载请声明来源钻瓜专利网。