支持追加写操作的存储方法和装置、电子设备和存储介质制造方法及图纸

技术编号:38437709 阅读:23 留言:0更新日期:2023-08-11 14:21
本申请提供了一种支持追加写操作的存储方法和装置、电子设备和存储介质,其中,该方法包括:获取用户通过至少一次追加写操作上传的至少一个待存储数据块;根据每个待存储数据块的数据量对至少一个待存储数据块按照预设的数据量上限进行对齐,得到对齐后数据块,并在对象存储系统中对对齐后数据块通过第一存储操作进行存储;在存在互补数据块组的情况下,将每组互补数据块组整合成重组数据块,并在对象存储系统对重组数据块通过第二存储操作进行存储,其中,每个互补数据块组中包括多个互不相同的第一对齐后数据块,且每个互补数据块组的总数据量为数据量上限。通过本申请,解决了相关技术中存在的对象存储的存储方式存在读写放大的技术问题。读写放大的技术问题。读写放大的技术问题。

【技术实现步骤摘要】
支持追加写操作的存储方法和装置、电子设备和存储介质


[0001]本申请涉及云存储
,尤其涉及一种支持追加写操作的存储方法和装置、电子设备和存储介质。

技术介绍

[0002]对象存储系统最初支持的文件的操作就是put/get/delete这类整体的操作,随着使用场景的丰富,逐渐产生了对文件追加上传的场景。比如客户使用对象存储存储一个实时生成的视频(例如,命名为video),在不支持append(即,追加)的场景下,客户只能在本地将视频缓存完整之后再进行上传,或者分别命名为例如part1,part2...partX之后上传到对象存储,异步再进行合并。支持了Append接口之后,客户可以将一个对象以分块追加的方式上传到指定存储桶中。客户首次使用Append Object接口上传时,video这个对象的属性自动为appendable,客户可以按需调用Append接口将数据逐渐追加到video文件中。每次追加的大小可以由客户自行决定,但是一般存储系统会有自己的存储格式和要求,比如客户追加了100M的数据,而存储系统会将内容切割为10个10M的对象存本文档来自技高网...

【技术保护点】

【技术特征摘要】
1.一种支持追加写操作的存储方法,其特征在于,包括:获取用户通过至少一次追加写操作上传的至少一个待存储数据块;根据每个待存储数据块的数据量对所述至少一个待存储数据块按照预设的数据量上限进行对齐,得到对齐后数据块,并在对象存储系统中对所述对齐后数据块通过第一存储操作进行存储,其中,所述数据量上限为所述对象存储系统支持的最大对象存储数据量,所述对齐后数据块包括:数据量小于所述数据量上限的第一对齐后数据块和/或数据量为所述数据量上限的第二对齐后数据块;在存在互补数据块组的情况下,将每组所述互补数据块组整合成重组数据块,并在所述对象存储系统对所述重组数据块通过第二存储操作进行存储,其中,每个互补数据块组中包括多个互不相同的所述第一对齐后数据块,且每个互补数据块组的总数据量为所述数据量上限。2.根据权利要求1所述的方法,其特征在于,所述根据每个待存储数据块的数据量对所述至少一个待存储数据块按照预设的数据量上限进行对齐,得到对齐后数据块,包括:确定出指定待存储数据块的指定数据量以及所述指定待存储数据块的指定偏移量,其中,所述指定待存储数据块为所述至少一个待存储数据块中的任一个所述待存储数据块,偏移量用于指示在通过所对应的追加写操作进行数据存储之前已在所述对象存储系统存储的数据的总数据量;判断所述指定数据量与所述指定偏移量之和与目标偏移量的数量关系,其中,所述目标偏移量为所有所述数据量上限的整数倍偏移量中,大于所述指定数据量,且偏移量最小的整数倍偏移量;在所述数量关系指示所述指定数据量与所述指定偏移量之和小于或等于目标偏移量的情况下,不对所述指定待存储数据块进行拆分;在所述数量关系指示所述指定数据量与所述指定偏移量之和大于所述目标偏移量的情况下,按照所述目标偏移量与所述指定偏移量对所述指定待存储数据块进行拆分,得到指定对齐后数据块以及剩余数据块,通过所述剩余数据块对所述指定待存储数据块进行更新,以及通过所述目标偏移量对所述指定偏移量进行更新,并跳转至步骤所述判断所述指定数据量与所述指定偏移量之和与目标偏移量的数量关系,按此循环,直至所述数量关系指示所述指定数据量与所述指定偏移量之和小于或等于目标偏移量为止,其中,所述指定对齐后数据块的数据量为所述目标偏移量与所述指定偏移量之差。3.根据权利要求2所述的方法,其特征在于,所述确定出指定待存储数据块的指定数据量以及所述指定待存储数据块的指定偏移量,包括:按照所述每个待存储数据块的接收次序以及所述至少一个待存储数据块中已存储的待存储数据块,确定出所述指定待存储数据块;以及,按照所述至少一个待存储数据块中已存储的待存储数据块的已存储数据量,确定出所述指定偏移量。4.根据权利要求1所述的方法,其特征在于,所述根据每个待存储数据块的数据量对所述至少一个待存储数据块按照预设的数据量上限进行对齐,得到对齐后数据,包括:在所述至少一个待存储数据块中存在至少两个目标待存储数据块的情况下,将所述至少两个目标待存储数据块中的每个目标待存储数据块确定为待重组成同一个指定重组后
数据块的指定对齐后数据块,其中,所述至少两个目标待存储数据块的数据量之和为所述数据量上限。5.根据权利要求1所述的方法,其特征在于,所述在对象存储系统中对所述对齐后数据块通过第一存储操作进行存储,包括:将对齐后数据块通过所述第一存储操作,存储至所述对象存储系统的指定存储区域中,并确定与所述指定存储区域...

【专利技术属性】
技术研发人员:甘红星
申请(专利权)人:武汉金山云信息技术有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1