System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术涉及计算机 ,尤其涉及一种基于在线重删功能的元数据管理方法及装置。
技术介绍
1、在线重删(inline deduplication)功能是指:在目标数据块存储到存储设备上的同时,运行重复数据删除流程,若存储设备中已存储过与目标数据块相同的数据块,即数据重复,则目标数据块不会落盘,而是在落盘之前就会被删除,从而保证相同的数据在存储设备上只存储一份,以节省存储空间。
2、为了查找及判断数据块的是否为相同数据块,每个数据块都会维护一组元数据,元数据包括数据块的指纹(即数据块的唯一标识,如:hash值)和存储数据块的物理地址块(physical block address,pba)的映射关系,以及数据块的逻辑地址块(logical blockaddress,lba)和所述物理地址块的映射关系。目前,元数据的管理是由存储设备的(多个)控制器实现,而且为了快速访问元数据,将元数据缓存在存储设备的内存中,但随着用户数据量的急剧增加,一部分元数据还要保存在大容量的磁盘中。因此,每次执行在线重删功能时,都要对元数据进行元数据镜像(多个控制器间元数据镜像)、掉电保护和缓存数据组织结构转换等操作,这一系列操作使得元数据管理逻辑非常复杂,且耗费存储设备较多的cpu和内存资源。
技术实现思路
1、本专利技术提供一种基于在线重删功能的元数据管理方法及装置,用以解决现有的存储设备中控制器对元数据管理逻辑复杂,且耗费存储设备较多的cpu和内存资源的问题。
2、本专利技术提供一种
3、接收存储设备中存储控制器发送的元数据i/o请求,所述元数据中,数据块的标识为标识键,数据块的逻辑地址块为逻辑地址键,标识和逻辑地址块各自对应的数据块的物理地址块为值;
4、在所述元数据i/o请求为写请求的情况下,所述元数据i/o请求包括元数据中的标识键和第一逻辑地址键,基于所述标识键和第一逻辑地址键,确定待写入键值对,将所述待写入键值对写入键值磁盘的非易失存储器中,在所述键值磁盘的易失内存中记录所述待写入键值对中的键以及待写入键值对在所述非易失存储器中存储地址的地址索引。
5、根据本专利技术提供的一种基于在线重删功能的元数据管理方法,基于所述标识键和第一逻辑地址键,确定待写入键值对,将所述待写入键值对写入键值磁盘的非易失存储器中,包括以下步骤。
6、在所述键值磁盘的易失内存的记录中查找所述标识键。
7、在查找到所述标识键的情况下,确定所述标识键对应的值为目标值,以所述第一逻辑地址键和所述目标值形成所述待写入键值对,将所述待写入键值对写入键值磁盘的非易失存储器中。
8、在未查找到所述标识键的情况下,获取存储控制器写入数据块的物理地址块为所述目标值,以所述标识键和所述目标值形成第一键值对,以所述第一逻辑地址键和所述目标值形成第二键值对,确定第一键值对和第二键值对均为所述待写入键值对,将所述待写入键值对写入键值磁盘的非易失存储器中。
9、根据本专利技术提供的一种基于在线重删功能的元数据管理方法,在所述元数据i/o请求为读请求的情况下,所述元数据i/o请求包括元数据中的第二逻辑地址键,所述方法还包括以下步骤。
10、在所述键值磁盘的易失内存的记录中查找所述第二逻辑地址键对应的地址索引。
11、基于所述第二逻辑地址键对应的地址索引获取待读取键值对的目标存储地址。
12、基于所述目标存储地址读取非易失存储器中第二逻辑地址键对应的物理地址块,并将所述物理地址块返回至所述存储控制器。
13、根据本专利技术提供的一种基于在线重删功能的元数据管理方法,在所述元数据i/o请求为删除请求的情况下,所述元数据i/o请求包括元数据中的第三逻辑地址键,所述方法还包括以下步骤。
14、在所述键值磁盘的易失内存的记录中查找所述第三逻辑地址键对应的地址索引。
15、基于所述第三逻辑地址键对应的地址索引获取待删除键值对的目标存储地址。
16、基于所述目标存储地址从非易失存储器中删除所述待删除键值对。
17、在所述键值磁盘的易失内存的记录中删除所述第三逻辑地址键及对应的地址索引。
18、根据本专利技术提供的一种基于在线重删功能的元数据管理方法,所述非易失存储器包括:非易失内存和非易失闪存;将所述待写入键值对写入键值磁盘的非易失存储器中,包括:将所述待写入键值对写入非易失内存中,在所述非易失内存中的键值对的数据量大小达到所述非易失闪存的存储块大小时,将非易失内存中存储块大小对应的所有键值对转存至所述非易失闪存中,并在所述易失内存的记录中修改各转存的键值对的地址索引。
19、根据本专利技术提供的一种基于在线重删功能的元数据管理方法,在所述元数据i/o请求为读请求的情况下,所述元数据i/o请求包括元数据中的第二逻辑地址键,所述方法还包括以下步骤。
20、在所述键值磁盘的易失内存的记录中查找所述第二逻辑地址键对应的地址索引。
21、基于所述第二逻辑地址键对应的地址索引获取待读取键值对的目标存储地址。
22、在所述目标存储地址为所述非易失内存的地址的情况下,基于所述目标存储地址读取非易失内存中第二逻辑地址键对应的物理地址块,并将所述物理地址块返回至所述存储控制器。
23、在所述目标存储地址为所述非易失闪存的地址的情况下,从所述非易失闪存中读取所述目标存储地址所在的目标存储块,再从所述目标存储块中读取第二逻辑地址键对应的物理地址块,并将所述物理地址块返回至所述存储控制器。
24、根据本专利技术提供的一种基于在线重删功能的元数据管理方法,在所述元数据i/o请求为删除请求的情况下,所述元数据i/o请求包括元数据中的第三逻辑地址键,所述方法还包括以下步骤。
25、在所述键值磁盘的易失内存的记录中查找所述第三逻辑地址键对应的地址索引。
26、基于所述第三逻辑地址键对应的地址索引获取待删除键值对的目标存储地址。
27、在所述目标存储地址为所述非易失内存的地址的情况下,删除非易失内存中所述目标存储地址对应的待删除键值对,并在所述键值磁盘的易失内存的记录中删除所述第三逻辑地址键及对应的地址索引。
28、在所述目标存储地址为所述非易失闪存的地址的情况下,从所述非易失闪存中读取所述目标存储地址所在的目标存储块至所述非易失内存中,释放非易失闪存中目标存储块对应的存储空间,删除所述待删除键值对,并在所述键值磁盘的易失内存的记录中删除所述第三逻辑地址键及对应的地址索引;若所述非易失内存中当前的键值对的数据量大小达到所述非易失闪存的存储块大小时,将非易失内存中存储块大小对应的所有键值对转存至所述非易失闪存中,并在所述易失内存的记录中修改各转存的键值对的地址索引。
29、根据本专利技术提供的一种基于在线重删功能的元数据管理方法,还包括:在所述键值磁盘掉电后启动时,遍历所述非易失存储器中的所有键本文档来自技高网...
【技术保护点】
1.一种基于在线重删功能的元数据管理方法,其特征在于,包括:
2.根据权利要求1所述的基于在线重删功能的元数据管理方法,其特征在于,基于所述标识键和第一逻辑地址键,确定待写入键值对,将所述待写入键值对写入键值磁盘的非易失存储器中,包括:
3.根据权利要求1所述的基于在线重删功能的元数据管理方法,其特征在于,在所述元数据I/O请求为读请求的情况下,所述元数据I/O请求包括元数据中的第二逻辑地址键,所述方法还包括:
4.根据权利要求1所述的基于在线重删功能的元数据管理方法,其特征在于,在所述元数据I/O请求为删除请求的情况下,所述元数据I/O请求包括元数据中的第三逻辑地址键,所述方法还包括:
5.根据权利要求1所述的基于在线重删功能的元数据管理方法,其特征在于,所述非易失存储器包括:非易失内存和非易失闪存;将所述待写入键值对写入键值磁盘的非易失存储器中,包括:
6.根据权利要求5所述的基于在线重删功能的元数据管理方法,其特征在于,在所述元数据I/O请求为读请求的情况下,所述元数据I/O请求包括元数据中的第二逻辑地址键,所述方
7.根据权利要求5所述的基于在线重删功能的元数据管理方法,其特征在于,在所述元数据I/O请求为删除请求的情况下,所述元数据I/O请求包括元数据中的第三逻辑地址键,所述方法还包括:
8.根据权利要求1至7中任一项所述的基于在线重删功能的元数据管理方法,其特征在于,还包括:在所述键值磁盘掉电后启动时,遍历所述非易失存储器中的所有键值对,重建所有键值对的地址索引,并将重建的地址索引和对应的键存储至所述易失内存中。
9.一种基于在线重删功能的元数据管理装置,其特征在于,包括:
10.一种键值磁盘,其特征在于,包括:盘内处理器、易失内存和非易失存储器,所述盘内处理器连接所述易失内存和非易失存储器;
11.一种存储设备,其特征在于,包括:存储控制器和权利要求10所述的键值磁盘,所述存储控制器连接所述盘内处理器,用于发送元数据I/O请求至所述盘内处理器。
12.一种电子设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至8中任一项所述的基于在线重删功能的元数据管理方法。
13.一种非暂态计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至8中任一项所述的基于在线重删功能的元数据管理方法。
...【技术特征摘要】
1.一种基于在线重删功能的元数据管理方法,其特征在于,包括:
2.根据权利要求1所述的基于在线重删功能的元数据管理方法,其特征在于,基于所述标识键和第一逻辑地址键,确定待写入键值对,将所述待写入键值对写入键值磁盘的非易失存储器中,包括:
3.根据权利要求1所述的基于在线重删功能的元数据管理方法,其特征在于,在所述元数据i/o请求为读请求的情况下,所述元数据i/o请求包括元数据中的第二逻辑地址键,所述方法还包括:
4.根据权利要求1所述的基于在线重删功能的元数据管理方法,其特征在于,在所述元数据i/o请求为删除请求的情况下,所述元数据i/o请求包括元数据中的第三逻辑地址键,所述方法还包括:
5.根据权利要求1所述的基于在线重删功能的元数据管理方法,其特征在于,所述非易失存储器包括:非易失内存和非易失闪存;将所述待写入键值对写入键值磁盘的非易失存储器中,包括:
6.根据权利要求5所述的基于在线重删功能的元数据管理方法,其特征在于,在所述元数据i/o请求为读请求的情况下,所述元数据i/o请求包括元数据中的第二逻辑地址键,所述方法还包括:
7.根据权利要求5所述的基于在线重删功能的元数据管理方法,其特征在于,在所述元数据i/o请...
【专利技术属性】
技术研发人员:李美欣,孟宪伟,史文举,刚亚州,芮健德,杨文青,
申请(专利权)人:苏州元脑智能科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。