[发明专利]一种存储桶索引重分裂的方法、装置、设备和介质在审
申请号: | 202110962471.0 | 申请日: | 2021-08-20 |
公开(公告)号: | CN113703678A | 公开(公告)日: | 2021-11-26 |
发明(设计)人: | 翟亚永;陶桐桐 | 申请(专利权)人: | 济南浪潮数据技术有限公司 |
主分类号: | G06F3/06 | 分类号: | G06F3/06 |
代理公司: | 北京集佳知识产权代理有限公司 11227 | 代理人: | 史翠 |
地址: | 250101 山东省济南市自由贸易试验区*** | 国省代码: | 山东;37 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 存储 索引 分裂 方法 装置 设备 介质 | ||
本申请实施例公开了一种存储桶索引重分裂的方法、装置、设备和介质,检测到桶索引分片上的数据量超过预设阈值时,依据桶索引分片上数据的增长量,建立相应个数新的桶索引分片。在接收到数据写入任务时,将数据写入任务对应的对象信息分配至新的桶索引分片中。依据数据的增长量增加相应个数的新的桶索引分片,并且不更改原有的桶索引分片上的对象数据,将新增的对象数据直接写到新增的桶索引分片上。既保证了桶索引分片上的对象数据量不会一直增大,也避免了桶索引分片分裂引发的数据迁移从而阻塞前端业务数据写入。且能够兼顾保证单个桶索引分片上的对象个数,提高了故障恢复的重构速度。随着对象个数的增多,可以对桶索引分片进行无限扩展。
技术领域
本申请涉及数据存储技术领域,特别是涉及一种存储桶索引重分裂的方法、装置、设备和计算机可读存储介质。
背景技术
在大数据时代,对象存储服务(Object Storage Service,OSS)是一种新兴的海量、安全、低成本、高可靠的云存储服务,适合存放非结构化的数据,例如:视频,图片,文档等。
对于对象存储,数据都存储在存储桶这种逻辑结构中,用以隔离对象。存储桶索引会记录桶内对象的信息,用以快速查找到对象和列举(list)桶内对象。存储桶索引分片默认为128分片,将桶内对象的属性信息均匀的以键值对组织(omap)的形式记录到128个分片上,这样可以使得每个分片上的omap不至于过大。
但是随着单桶数据量逐渐增多,每个分片上的对象记录也会越来越多,omap也会越来越大。桶索引分片上记录的omap越大,对于重构和桶list操作都是一种很大的压力,导致故障恢复的重构速度较慢。业界的做法是采用桶索引分片自动分裂的方式,当单个桶索引分片上的对象达到10万时,桶索引分片会由原来的128分裂到256个,桶索引分片上的对象重新进行分配,使得每个桶索引分片在5万左右,以此来保证桶索引分片上的对象记录不会很多。但是该方法有一个问题是:桶索引分片自动分裂和对象记录重分配的过程中,因为会对桶索引分片加锁,所以会影响前端的业务写入。
可见,如何在保证对象顺利写入桶索引分片的同时降低对前端写入业务的影响,是本领域技术人员需要解决的问题。
发明内容
本申请实施例的目的是提供一种存储桶索引重分裂的方法、装置、设备和计算机可读存储介质,可以在保证对象顺利写入桶索引分片的同时降低对前端写入业务的影响。
为解决上述技术问题,本申请实施例提供一种存储桶索引重分裂的方法,包括:
检测到桶索引分片上的数据量超过预设阈值时,依据桶索引分片上数据的增长量,建立相应个数新的桶索引分片;
在接收到数据写入任务时,将所述数据写入任务对应的对象信息分配至所述新的桶索引分片中。
可选地,所述依据桶索引分片上数据的增长量,建立相应个数新的桶索引分片包括:
查询预先建立的桶索引分片个数与数据增长范围的对应关系列表,确定出与所述桶索引分片上数据的增长量相匹配的目标桶索引分片个数;
基于所述目标桶索引分片个数创建新的桶索引分片。
可选地,所述依据桶索引分片上数据的增长量,建立相应个数新的桶索引分片包括:
计算所述桶索引分片上数据的增长量与预设增长值的比值;
基于所述比值以及原有的桶索引分片个数,确定出新建通索引分片的个数;
基于所述新建通索引分片的个数创建新的桶索引分片。
可选地,所述基于所述比值以及原有的桶索引分片个数,确定出新建通索引分片的个数包括:
在所述比值超过预设下限值时,则将所述原有的桶索引分片个数作为新建通索引分片的个数;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于济南浪潮数据技术有限公司,未经济南浪潮数据技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110962471.0/2.html,转载请声明来源钻瓜专利网。