[发明专利]一种垃圾数据回收方法及系统在审
申请号: | 202210046168.0 | 申请日: | 2022-01-14 |
公开(公告)号: | CN114442949A | 公开(公告)日: | 2022-05-06 |
发明(设计)人: | 王鹏 | 申请(专利权)人: | 苏州浪潮智能科技有限公司 |
主分类号: | G06F3/06 | 分类号: | G06F3/06 |
代理公司: | 济南诚智商标专利事务所有限公司 37105 | 代理人: | 黄晓燕 |
地址: | 215100 江苏省苏州市吴*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 垃圾 数据 回收 方法 系统 | ||
本发明提供了一种垃圾数据回收方法及系统,方法包括获取对象及对象的实际数据大小;遍历对象的数据结构blob,计算所有数据结构blob占用的实际物理磁盘空间;在实际数据大小和占用的实际物理磁盘空间均满足预设的回收条件时,创建新数据结构blob,将对象重新写入被分配的新磁盘空间中,并在写完对象后,释放原有数据及其存储空间。本发明可有效识别并处理存在垃圾数据的对象,释放垃圾数据占用的空间,减小存储系统的空间放大。并且由于使用了单独线程并设定了启动条件,可以减小垃圾数据回收对正常业务的影响。
技术领域
本发明涉及存储技术领域,尤其是一种垃圾数据回收方法及系统。
背景技术
Bluestore(Ceph存储引擎)作为Ceph(分布式存储系统)的新一代存储引擎,绕过本地文件系统直接管理裸设备,因此可以自主设定最小分配单元大小,并通过blob(bluestore中对应数据逻辑段和物理磁盘空间的数据结构)将逻辑数据块对应到物理磁盘的空间上。同时引入了重定向写,即在修改写时重新创建blob并分配磁盘空间写入新数据,在新数据落盘后修改对象元数据引用到新blob上,极大提高了性能。但这种机制也引入了新的问题,在对象进行clone(克隆)操作后(如在对逻辑卷创建快照),会将对象原有blob标记为不可修改的shared_blob,同时被原对象和clone对象引用,在对原数据修改写时,由于share_blob仍被快照对象引用,因此会重新创建blob并分配新的磁盘空间写入数据,当clone对象删除时,原shared_blob的引用计数会减去相应值,但是由于该shared_blob仍然可能存在有效数据(如clone操作后原对象进行了小于最小分配单元的修改写,原对象该最小分配单元中部分数据未被修改)并被引用,该shared_blob并不会释放。当持续进行clone操作和修改写操作后,删除快照后,会出现快照对象已经全部删除,但是一个对象由于分配了较多的blob,且一些blob中存在着已不被使用的垃圾数据并占用物理空间,导致该对象分配的物理空间远超过数据的实际大小,即对象发生了空间放大。
现有bluestore中已存在空间回收操作,即当写数据时,查找该数据逻辑位置附近的blob个数,如果这段数据被分配了过多blob,则认为存在垃圾数据,会触发空间回收机制,即读取对应范围内的数据,然后再重新写入。
由于bluestore的再分配写机制,所有数据会重新分配blob写入到新的连续磁盘空间,原blob和对应的磁盘空间会被释放。然而该逻辑需要由bluestore的非最小分配单元修改写流程触发,同时写操作触发的空间回收会导致对应写操作时延剧增。对于有快照的业务场景,原有方法并不能很好的识别和处理对象clone后数据碎片化造成的空间浪费。
发明内容
本发明提供了垃圾数据回收方法及系统,用于解决现有方法并不能很好的识别和处理对象clone后数据碎片化造成的空间浪费的问题。
为实现上述目的,本发明采用下述技术方案:
本发明第一方面提供了一种垃圾数据回收方法,所述方法包括以下步骤:
获取对象及对象的实际数据大小;
遍历所述对象的数据结构blob,计算所有数据结构blob占用的实际物理磁盘空间;
在所述实际数据大小和占用的实际物理磁盘空间均满足预设的回收条件时,创建新数据结构blob,将对象重新写入被分配的新磁盘空间中,并在写完对象后,释放原有数据及其存储空间。
进一步地,所述对象通过预设的垃圾数据回收队列中获取;所述获取对象之前包括步骤:
增加垃圾数据回收队列;
判断所述垃圾数据回收队列是否为空;
若是,则遍历对象存储设备OSD中的对象,将对象加入到所述垃圾数据回收队列中,从垃圾数据回收队列中获取对象;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于苏州浪潮智能科技有限公司,未经苏州浪潮智能科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202210046168.0/2.html,转载请声明来源钻瓜专利网。
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置