[发明专利]存储容量均衡方法、对象存储方法及装置有效
申请号: | 201910867983.1 | 申请日: | 2019-09-16 |
公开(公告)号: | CN110633053B | 公开(公告)日: | 2020-07-10 |
发明(设计)人: | 刘萌;陈志德;黎莉;刘廷永;谢文辉;杨程;朱志强 | 申请(专利权)人: | 北京马赫谷科技有限公司 |
主分类号: | G06F3/06 | 分类号: | G06F3/06 |
代理公司: | 北京致科知识产权代理有限公司 11672 | 代理人: | 董玲;魏红雅 |
地址: | 100085 北京市海淀区*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 存储容量 均衡 方法 对象 存储 装置 | ||
本发明公开一种存储容量均衡方法、对象存储方法及装置。该存储容量均衡方法包括:形成哈希环,该哈希环由N个哈希值构成;将哈希环划分为M等份,每等份哈希环形成虚拟节点;根据存储节点的实时容量信息为待分存储节点分配X个虚拟节点;将X个虚拟节点散列到哈希环上;形成哈希索引记录,包括虚拟节点的VNode_ID、对应的哈希值、待分存储节点的OSD_ID;将存储系统中所有存储节点重复分配虚拟节点、散列虚拟节点及形成哈希索引记录的步骤。该方法给存储节点分配虚拟节点时,参考了该存储节点及存储系统中所有存储节点的实时容量信息,实现了自动均衡各个存储节点的写入量,最大限度地保证了各个存储节点的容量均衡。
技术领域
本发明涉及数据存储技术领域,尤其涉及一种存储容量均衡方法、对象存储方法及装置。
背景技术
对象存储是以对象为存储基本单元的存储系统,为满足海量的对象存储需求,一般是由多台存储节点(Object Storage Device,简称为:OSD)组成分布式存储系统,对外提供高性能的存储写入和查询能力。
当面对海量小文件存储需求时,如存储由视频采集装置采集的图片,业界通常采用写入散列的方式,即根据对象ID计算哈希值,不同的哈希值对应不同的存储节点,从而使对象能在数量上均匀地写入各个存储节点。
但是,由于对象数量巨大且大小不一,从几十KB(=210字节)到几MB(=220字节)不等,各存储节点上同样数量的对象所占的存储容量相差很大,很容易造成存储节点的容量不均衡,导致部分存储节点因容量写满而退出服务,进而造成系统整体的吞吐量降低。
发明内容
本发明提供一种存储容量均衡方法、对象存储方法及装置,能防止存储系统中各存储节点的容量不均衡。
本发明提供的一种存储容量均衡方法,包括:(1)形成哈希环,所述哈希环由N个哈希值构成;(2)将所述哈希环划分为M等份,每等份哈希环形成虚拟节点;(3)根据待分存储节点的当前的存储容量和剩余存储容量、所述待分存储节点所在存储系统中所有存储节点的当前的总存储容量和总剩余存储容量为所述待分存储节点实时动态分配X个虚拟节点;(4)将所述X个虚拟节点散列到所述哈希环上;(5)形成哈希索引记录,包括所述虚拟节点的虚拟节点编号VNode_ID、对应的所述哈希值、所述待分存储节点的存储节点编号OSD_ID;(6)将所述存储系统中未分配虚拟节点的存储节点作为所述待分存储节点重复所述步骤(3)~(5);
当CluserMap刷新时,重复所述步骤(3)~(6),所述CluserMap用于保存所述存储系统中各存储节点的存储节点编号OSD_ID、对应的当前的存储容量和剩余存储容量;
所述步骤(3)包括:根据公式为所述待分存储节点分配X个虚拟节点;所述公式为:X=M*(K*OSDCapacity/TotalCapacity+(1-K)*OSDFreeCapacity/TotalFreeCapacity),所述K为平衡因子,且0<K<1,所述OSDCapacity为所述待分存储节点的存储容量,所述OSDFreeCapacity为所述待分存储节点的剩余存储容量,所述TotalCapacity为所述待分存储节点所在存储系统中所有存储节点的总存储容量,所述TotalFreeCapacity为所述存储系统中所有存储节点的总剩余存储容量。
可选地,所述CluserMap刷新包括:所述存储系统中各存储节点定时向存储网关发送所述存储节点的存储节点编号OSD_ID、对应的当前的存储容量和剩余存储容量;所述存储网关刷新所述CluserMap中每个所述存储节点的存储节点编号OSD_ID、对应的当前的存储容量和剩余存储容量。
进一步地,所述步骤(4)包括:根据所述虚拟节点的虚拟节点编号VNode_ID和所述待分存储节点的存储节点编号OSD_ID计算生成第一散列值;将所述第一散列值作为所述虚拟节点的映射起始位置。
可选地,M与所述存储系统中存储节点的个数之比大于或等于100。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京马赫谷科技有限公司,未经北京马赫谷科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910867983.1/2.html,转载请声明来源钻瓜专利网。