CN116088770A - 数据管理方法及装置、系统、电子设备、存储介质 - Google Patents
数据管理方法及装置、系统、电子设备、存储介质 Download PDFInfo
- Publication number
- CN116088770A CN116088770A CN202310271411.3A CN202310271411A CN116088770A CN 116088770 A CN116088770 A CN 116088770A CN 202310271411 A CN202310271411 A CN 202310271411A CN 116088770 A CN116088770 A CN 116088770A
- Authority
- CN
- China
- Prior art keywords
- volume
- storage space
- target
- deleted
- linked list
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 100
- 238000013523 data management Methods 0.000 title claims abstract description 42
- 238000011084 recovery Methods 0.000 claims abstract description 242
- 238000007726 management method Methods 0.000 claims abstract description 48
- 238000012217 deletion Methods 0.000 claims description 96
- 230000037430 deletion Effects 0.000 claims description 96
- 238000013507 mapping Methods 0.000 claims description 46
- 238000004064 recycling Methods 0.000 claims description 22
- 230000003993 interaction Effects 0.000 claims description 19
- 238000004590 computer program Methods 0.000 claims description 15
- 238000012545 processing Methods 0.000 claims description 15
- 230000004044 response Effects 0.000 claims description 8
- 238000004804 winding Methods 0.000 claims description 2
- 238000010586 diagram Methods 0.000 description 21
- 230000008569 process Effects 0.000 description 12
- 230000006870 function Effects 0.000 description 10
- 238000003491 array Methods 0.000 description 5
- 230000009471 action Effects 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 230000001960 triggered effect Effects 0.000 description 3
- 238000013461 design Methods 0.000 description 2
- 108010001267 Protein Subunits Proteins 0.000 description 1
- 230000002159 abnormal effect Effects 0.000 description 1
- 230000004075 alteration Effects 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 238000013475 authorization Methods 0.000 description 1
- 230000003111 delayed effect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0646—Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
- G06F3/0652—Erasing, e.g. deleting, data cleaning, moving of data to a wastebasket
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/0223—User address space allocation, e.g. contiguous or non contiguous base addressing
- G06F12/023—Free address space management
- G06F12/0253—Garbage collection, i.e. reclamation of unreferenced memory
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0614—Improving the reliability of storage systems
- G06F3/0619—Improving the reliability of storage systems in relation to data integrity, e.g. data losses, bit errors
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0662—Virtualisation aspects
- G06F3/0665—Virtualisation aspects at area level, e.g. provisioning of virtual or logical volumes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0683—Plurality of storage devices
- G06F3/0689—Disk arrays, e.g. RAID, JBOD
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02W—CLIMATE CHANGE MITIGATION TECHNOLOGIES RELATED TO WASTEWATER TREATMENT OR WASTE MANAGEMENT
- Y02W90/00—Enabling technologies or technologies with a potential or indirect contribution to greenhouse gas [GHG] emissions mitigation
Abstract
本申请提供了一种数据管理方法及装置、系统、电子设备、存储介质,涉及存储技术领域,其中,方法包括:响应于卷删除操作,确定卷删除操作对应的目标卷;将目标卷的卷信息从卷删除操作作用的页面中删除,并保留目标卷的元数据;根据目标卷的优先级和删除时间,将目标卷的卷信息添加到回收链表的相应位置,以对目标卷进行回收管理;实现了对用户层执行的删除操作对应的目标卷进行回收管理,以避免用户误删除操作导致数据丢失而引起不可估量的损失,并且,通过包含优先级和删除时间维度的回收链表来记录用户层删除操作对应的卷,可以提高回收管理合理性和便捷性,进一步保证数据的可靠性。
Description
技术领域
本申请涉及存储技术领域,特别是涉及一种数据管理方法及装置、系统、电子设备、存储介质。
背景技术
在存储领域,用户需要针对不同的业务创建不同大小的卷,同时根据业务需求删除不再需要的卷。而用户执行的操作不可避免的会带有一定概率的误操作,比如,对卷的误删除导致重要的数据不可恢复,进而会导致严重的数据安全问题。
发明内容
鉴于上述问题,提出了本申请以便提供克服上述问题或者至少部分地解决上述问题的数据管理方法及装置、系统、电子设备、存储介质,包括:
一种数据管理方法,所述方法包括:
响应于卷删除操作,确定所述卷删除操作对应的目标卷;
将所述目标卷的卷信息从所述卷删除操作作用的页面中删除,并保留所述目标卷的元数据;
根据所述目标卷的优先级和删除时间,将所述目标卷的卷信息添加到回收链表的相应位置,以对所述目标卷进行回收管理。
在本申请的一些可选实施例中,所述方法还包括:
当存储空间达到预设条件时,确定所述回收链表中的待删除卷信息;
将所述待删除卷信息对应的元数据从所述存储空间中删除。
在本申请的一些可选实施例中,所述根据所述目标卷的优先级和删除时间,将所述目标卷的卷信息添加到回收链表的相应位置,包括:
根据所述目标卷的优先级确定所述目标卷的卷信息在所述回收链表中的目标列位置;
根据所述目标卷的删除时间确定所述目标卷的卷信息在所述目标列位置中的目标行位置;
将所述目标卷的卷信息添加到所述回收链表的目标列的目标行中。
在本申请的一些可选实施例中,所述将所述目标卷的卷信息从所述卷删除操作作用的页面中删除,并保留所述目标卷的元数据,还包括:
确定所述目标卷的元数据对应目标存储块,并将所述目标存储块标记为无用状态;
通过标记为无用状态的存储块和标记为空闲状态的存储块确定所述存储空间的可用存储空间;所述标记为空闲状态的存储块对应的存储空间为实际可用存储空间;
显示所述可用存储空间。
在本申请的一些可选实施例中,所述将所述待删除卷信息对应的元数据从所述存储空间中删除,包括:
将存储所述待删除卷信息对应的元数据的存储块标记为空闲状态。
在本申请的一些可选实施例中,所述当存储空间达到预设条件时,确定所述回收链表中的待删除卷信息,包括:
当所述存储空间达到预设条件时,从所述回收链表的低优先级开始,按照删除时间从先到后的顺序确定待删除卷信息。
在本申请的一些可选实施例中,所述当存储空间达到预设条件时,确定所述回收链表中的待删除卷信息,包括:
当所述存储空间达到预设条件时,根据各个优先级对应的保护时长,确定在所述回收链表中存储时间达到对应保护时长的候选卷信息;
从所述候选卷信息中,按照优先级从低到高的顺序,确定待删除卷信息。
在本申请的一些可选实施例中,所述当存储空间达到预设条件时,确定所述回收链表中的待删除卷信息,包括:
当所述存储空间的实际可用存储空间小于第一预设存储空间阈值时,确定所述回收链表中的待删除卷信息。
在本申请的一些可选实施例中,所述当所述存储空间的实际可用存储空间小于第一预设存储空间阈值时,确定所述回收链表中的待删除卷信息,包括:
当所述存储空间的实际可用存储空间小于第一预设存储空间阈值时,根据所述实际可用存储空间与所述第一预设存储空间阈值确定第一存储空间差值;
根据所述第一存储空间差值,确定所述回收链表中的待删除卷信息,其中,所述待删除卷信息对应的总存储空间大于或等于所述第一存储空间差值。
在本申请的一些可选实施例中,所述当存储空间达到预设条件时,确定所述回收链表中的待删除卷信息,包括:
当所述回收链表中的卷信息对应的元数据所占的无用存储空间大于第二预设存储空间阈值时,确定所述回收链表中的待删除卷信息。
在本申请的一些可选实施例中,所述当所述回收链表中的卷信息对应的元数据所占的无用存储空间大于第二预设存储空间阈值时,确定所述回收链表中的待删除卷信息,包括:
当所述回收链表中的卷信息对应的元数据所占的无用存储空间大于第二预设存储空间阈值时,根据所述第二预设存储空间阈值与所述无用存储空间确定第二存储空间差值;
根据所述第二存储空间差值,确定所述回收链表中的待删除卷信息,其中,所述待删除卷信息对应的总存储空间大于或等于所述第二存储空间差值。
在本申请的一些可选实施例中,所述当存储空间达到预设条件时,确定所述回收链表中的待删除卷信息,包括:
响应于卷新建操作,确定所述卷新建操作对应的新建卷所需的目标存储空间;
当所述存储空间中的实际可用存储空间小于所述目标存储空间时,确定所述回收链表中的待删除卷信息。
在本申请的一些可选实施例中,所述当所述存储空间中的实际可用存储空间小于所述目标存储空间时,确定所述回收链表中的待删除卷信息,包括:
当所述存储空间中的实际可用存储空间小于所述目标存储空间时,根据所述实际可用存储空间与所述目标存储空间确定第三存储空间差值,
根据所述第三存储空间差值,确定所述回收链表中的待删除卷信息,其中,所述待删除卷信息对应的总存储空间大于或等于所述第三存储空间差值。
在本申请的一些可选实施例中,在所述响应于卷删除操作,确定所述卷删除操作对应的目标卷之前,还包括:
接收数据回收开启指令,启动数据回收模式。
在本申请的一些可选实施例中,所述方法还包括:
在目标页面显示所述回收链表,其中,所述目标页面基于管理员权限打开的。
在本申请的一些可选实施例中,所述方法还包括:
响应作用于所述回收链表的恢复操作,确定所述恢复操作对应的待恢复卷;
将待恢复卷的卷信息恢复显示在相应的原页面中。
在本申请的一些可选实施例中,所述将待恢复卷的卷信息恢复显示在相应的原页面中,还包括:
将所述待恢复卷的卷信息从所述回收链表中删除,并将存储所述待恢复卷信息对应的元数据的存储块标记为不可用状态。
在本申请的一些可选实施例中,所述方法还包括:
响应作用于所述回收链表的删除操作,确定所述删除操作对应的目标待删除卷;
将所述目标待删除卷的卷信息从所述回收链表中删除,并将存储所述目标待删除卷的卷信息对应的元数据的存储块标记为可用状态。
在本申请的一些可选实施例中,所述方法还包括:
当检测到断电时,将所述回收链表保存到非易失性存储介质中。
在本申请的一些可选实施例中,所述方法还包括:
响应于重启操作,从所述非易失性存储介质中获取回收链表。
一种数据管理装置,所述装置包括:
目标卷确定模块,用于响应于卷删除操作,确定所述卷删除操作对应的目标卷;
目标卷处理模块,用于将所述目标卷的卷信息从所述卷删除操作作用的页面中删除,并保留所述目标卷的元数据;
目标卷回收模块,用于根据所述目标卷的优先级和删除时间,将所述目标卷的卷信息添加到回收链表的相应位置,以对所述目标卷进行回收管理。
在本申请的一些可选实施例中,所述装置还包括:
待删卷确定模块,用于当存储空间达到预设条件时,确定所述回收链表中的待删除卷信息;
待删卷删除模块,用于将所述待删除卷信息对应的元数据从所述存储空间中删除。
在本申请的一些可选实施例中,所述目标卷回收模块,包括:
目标列确定模块,用于根据所述目标卷的优先级确定所述目标卷的卷信息在所述回收链表中的目标列位置;
目标行确定模块,用于根据所述目标卷的删除时间确定所述目标卷的卷信息在所述目标列位置中的目标行位置;
目标卷添加模块,用于将所述目标卷的卷信息添加到所述回收链表的目标列的目标行中。
在本申请的一些可选实施例中,所述目标卷处理模块,还包括:
第一标记模块,用于确定所述目标卷的元数据对应目标存储块,并将所述目标存储块标记为无用状态;
存储空间确定模块,用于通过标记为无用状态的存储块和标记为空闲状态的存储块确定所述存储空间的可用存储空间;所述标记为空闲状态的存储块对应的存储空间为实际可用存储空间;
存储空间显示模块,用于显示所述可用存储空间。
在本申请的一些可选实施例中,所述待删卷删除模块,包括:
标记更新模块,用于将存储所述待删除卷信息对应的元数据的存储块标记为空闲状态。
在本申请的一些可选实施例中,所述待删卷确定模块,包括:
第一待删卷确定模块,用于当所述存储空间达到预设条件时,从所述回收链表的低优先级开始,按照删除时间从先到后的顺序确定待删除卷信息。
在本申请的一些可选实施例中,所述待删卷确定模块,包括:
候选卷确定模块,用于当所述存储空间达到预设条件时,根据各个优先级对应的保护时长,确定在所述回收链表中存储时间达到对应保护时长的候选卷信息;
第二待删卷确定模块,用于从所述候选卷信息中,按照优先级从低到高的顺序,确定待删除卷信息。
在本申请的一些可选实施例中,所述待删卷确定模块,用于当所述存储空间的实际可用存储空间小于第一预设存储空间阈值时,确定所述回收链表中的待删除卷信息。
在本申请的一些可选实施例中,所述待删卷确定模块,包括:
第一差值确定模块,用于当所述存储空间的实际可用存储空间小于第一预设存储空间阈值时,根据所述实际可用存储空间与所述第一预设存储空间阈值确定第一存储空间差值;
基于第一差值确定模块,用于根据所述第一存储空间差值,确定所述回收链表中的待删除卷信息,其中,所述待删除卷信息对应的总存储空间大于或等于所述第一存储空间差值。
在本申请的一些可选实施例中,所述待删卷确定模块,用于当所述回收链表中的卷信息对应的元数据所占的无用存储空间大于第二预设存储空间阈值时,确定所述回收链表中的待删除卷信息。
在本申请的一些可选实施例中,所述待删卷确定模块,包括:
第二差值确定模块,用于当所述回收链表中的卷信息对应的元数据所占的无用存储空间大于第二预设存储空间阈值时,根据所述第二预设存储空间阈值与所述无用存储空间确定第二存储空间差值;
基于第二差值确定模块,用于根据所述第二存储空间差值,确定所述回收链表中的待删除卷信息,其中,所述待删除卷信息对应的总存储空间大于或等于所述第二存储空间差值。
在本申请的一些可选实施例中,所述待删卷确定模块,包括:
卷新建模块,用于响应于卷新建操作,确定所述卷新建操作对应的新建卷所需的目标存储空间;
基于新建卷确定模块,用于当所述存储空间中的实际可用存储空间小于所述目标存储空间时,确定所述回收链表中的待删除卷信息。
在本申请的一些可选实施例中,所述基于新建卷确定模块,包括:
第三差值确定模块,用于当所述存储空间中的实际可用存储空间小于所述目标存储空间时,根据所述实际可用存储空间与所述目标存储空间确定第三存储空间差值,
基于第三差值确定模块,用于根据所述第三存储空间差值,确定所述回收链表中的待删除卷信息,其中,所述待删除卷信息对应的总存储空间大于或等于所述第三存储空间差值。
在本申请的一些可选实施例中,所述装置还包括:
回收模式启动模块,用于接收数据回收开启指令,启动数据回收模式。
在本申请的一些可选实施例中,所述装置还包括:
回收链表显示模块,用于在目标页面显示所述回收链表,其中,所述目标页面基于管理员权限打开的。
在本申请的一些可选实施例中,所述装置还包括:
恢复卷确定模块,用于响应作用于所述回收链表的恢复操作,确定所述恢复操作对应的待恢复卷;
恢复卷恢复模块,用于将待恢复卷的卷信息恢复显示在相应的原页面中。
在本申请的一些可选实施例中,所述恢复卷恢复模块,还包括:
链表更新模块,用于将所述待恢复卷的卷信息从所述回收链表中删除,并将存储所述待恢复卷信息对应的元数据的存储块标记为不可用状态。
在本申请的一些可选实施例中,所述装置还包括:
删除操作接收模块,用于响应作用于所述回收链表的删除操作,确定所述删除操作对应的目标待删除卷;
删除操作处理模块,用于将所述目标待删除卷的卷信息从所述回收链表中删除,并将存储所述目标待删除卷的卷信息对应的元数据的存储块标记为可用状态。
在本申请的一些可选实施例中,所述装置还包括:
断电硬盘组,用于当检测到断电时,将所述回收链表保存到非易失性存储介质中。
在本申请的一些可选实施例中,所述装置还包括:
重启获取模块,用于响应于重启操作,从所述非易失性存储介质中获取回收链表。
一种数据管理系统,所述数据管理系统包括交互模块、磁盘阵列以及硬盘组;
所述交互模块用于接收卷删除操作;
所述磁盘阵列包括卷管理模块和卷回收模块;所述卷回收模块包括回收链表;所述磁盘阵列还包括用于存储卷空间映射表的卷空间映射管理模块和用于存储磁盘阵列空间映射关系的磁盘阵列空间映射管理模块;所述磁盘阵列空间映射管理模块中的存储块与所述硬盘组中的硬盘关联;
所述卷管理模块用于确定所述卷删除操作对应的目标卷,将所述目标卷的卷信息从所述卷删除操作作用的页面中删除;
所述卷回收模块用于根据所述目标卷的优先级和删除时间,将所述目标卷的卷信息添加到回收链表的相应位置,以对所述目标卷进行回收管理。
一种电子设备,包括处理器、存储器及存储在所述存储器上并能够在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现如上所述的数据管理方法的步骤。
一种计算机可读存储介质,所述计算机可读存储介质上存储计算机程序,所述计算机程序被处理器执行时实现如上所述的数据管理方法的步骤。
本申请具有以下优点:
在本申请的实施例中,通过响应于卷删除操作,确定卷删除操作对应的目标卷;将目标卷的卷信息从卷删除操作作用的页面中删除,并保留目标卷的元数据;根据目标卷的优先级和删除时间,将目标卷的卷信息添加到回收链表的相应位置,以对目标卷进行回收管理;实现了对用户层执行的删除操作对应的目标卷进行回收管理,以避免用户误删除操作导致数据丢失而引起不可估量的损失,并且,通过包含优先级和删除时间维度的回收链表来记录用户层删除操作对应的卷,可以提高回收管理合理性和便捷性,进一步保证数据的可靠性。
附图说明
为了更清楚地说明本申请的技术方案,下面将对本申请的描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例的一种数据管理方法的步骤流程图;
图2为本申请实施例的另一种数据管理方法的步骤流程图;
图3为本申请一示例中的回收链表的示意图;
图4为图3所示回收链表中的部分卷信息删除后的回收链表示意图;
图5为本申请另一示例中的回收链表的示意图;
图6为本申请一示例的数据管理方法在磁盘阵列业务处理中的应用场景示意图;
图7为本申请一示例的卷回收流程示意图;
图8为本申请一示例的释放存储空间流程示意图;
图9为本申请实施例的一种数据管理装置的结构框图;
图10为本申请实施例的一种数据管理系统的结构框图;
图11为本申请实施例的电子设备的结构框图;
图12为本申请实施例的计算机可读存储介质的示意图。
具体实施方式
为使本申请的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本申请作进一步详细的说明。显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
随着大数据和人工智能技术的蓬勃发展,各平台产生的数据越来越多。以无人驾驶为例,有数据显示,每辆车每天产生的数据就高达几十TB(太字节),这甚至超过了十年前一个企业一天产生的信息量。再以多媒体举例,各种短视频平台所生产的媒体数据更是海量的。
相关技术普遍采用RAID(Redundant Arrays of Independent Disks,磁盘阵列)技术来实现数据的存储和读写。RAID是独立磁盘组成的具有冗余性的阵列。利用成员磁盘组成的冗余阵列可以有效提高数据可靠性和I/O(Input/Output,输入输出,或称“读写”)性能。利用这项技术,将数据切割成许多区段,分别存放在各个磁盘上。因此,RAID技术通过条带化和冗余存储可以保障数据的IO性能和可靠性。其中RAID5和RAID6阵列在实际应用中使用的最多,并能通过给RAID阵列添加热备盘进一步提高数据的可靠性。具体地,RAID5能够提供一份奇偶校验冗余数据,当RAID阵列中有一块盘损坏时,可以进行数据恢复。RAID6能够提供两份冗余校验数据,最多支持同时坏掉两块盘,相比RAID5,具有更高的安全级别。但是目前的一些RAID技术考虑的往往是物理设备异常情况下的恢复手段,不能解决用户层操作可能带来的数据安全隐患。因此,当用户误操作删除一些有用数据时,使得这些被误删除的数据丢失且不可恢复,从而造成无法挽回的重大损失。
本申请实施例提供的一种数据管理方法的核心构思之一在于,在用户层删除卷时,不直接进行实际的数据删除,而是将用户层删除的卷按照优先级和删除时间添加到回收链表的相应位置,以对用户层删除的卷进行合理、便捷地回收管理,进而提高数据的可靠性。
参照图1,示出了本申请一实施例提供的一种数据管理方法,该方法可以由数据管理装置来执行,该数据管理装置可以采用软件和/或硬件的方式实现,该数据管理装置可以集成于电子设备上,用于对电子设备存储的数据进行管理。该方法可以包括如下步骤:
步骤101,响应于卷删除操作,确定所述卷删除操作对应的目标卷。
当用户想要删除某个卷时,可以通过其使用的终端设备选择其想要删除的卷,然后对其选择的卷执行卷删除操作。当接收到用户执行的卷删除操作时,可以确定卷删除操作对应的目标卷。
步骤102,将所述目标卷的卷信息从所述卷删除操作作用的页面中删除,并保留所述目标卷的元数据。
在确定用户执行的卷删除操作对应的目标卷后,将目标卷在用户执行卷删除操作作用的页面中删除,但继续保留目标卷的元数据,以便于后续在有需要时,基于保留的目标卷的元数据来恢复目标卷。
步骤103,根据所述目标卷的优先级和删除时间,将所述目标卷的卷信息添加到回收链表的相应位置,以对所述目标卷进行回收管理。
回收链表用于记录用户层删除的卷信息。在本实施例中,用户在创建卷时,或者在删除卷时,需要设定对应卷的优先级,一般地,卷的优先级越高,对应的数据越重要,优先级越低,对应的数据越不重要。对于用户层删除的目标卷,可以根据目标卷的优先级和删除时间,确定目标卷的卷信息在回收链表的具体位置,并将目标卷的卷信息添加到回收链表的对应位置,以对目标卷进行回收管理。
本申请的实施例通过响应于卷删除操作,确定卷删除操作对应的目标卷;将目标卷的卷信息从卷删除操作作用的页面中删除,并保留目标卷的元数据;根据目标卷的优先级和删除时间,将目标卷的卷信息添加到回收链表的相应位置,以对目标卷进行回收管理;实现了对用户层执行的删除操作对应的目标卷进行回收管理,以避免用户误删除操作导致数据丢失而引起不可估量的损失,并且,通过包含优先级和删除时间维度的回收链表来记录用户层删除操作对应的卷,可以提高回收管理合理性和便捷性,进一步保证数据的可靠性。
参照图2,示出了本申请另一实施例提供的一种数据管理方法,该方法可以包括如下步骤:
步骤201,响应于卷删除操作,确定所述卷删除操作对应的目标卷。
卷是主机I/O访问数据的逻辑单元,由逻辑单元块组成,在RAID阵列的基础上创建。当用户想要删除某个卷时,可以通过其使用的终端设备选择其想要删除的卷,然后对其选择的卷执行卷删除操作。当接收到用户执行的卷删除操作时,可以确定卷删除操作对应的目标卷。
在本申请的一些可选实施例中,在步骤201之前,还可以包括:
接收数据回收开启指令,启动数据回收模式。
数据回收开启指令可以由用户通过其使用的终端设备触发产生,或者是系统设计完成时进行设定等。在本实施例中,是否对用户层删除的卷进行回收,由数据回收模式的状态决定。可以理解,在数据回收模式启动后,可以对用户层删除的卷进行回收,即在用户层删除卷时,可以执行步骤201及后续的步骤。在数据回收模式未启动时,不可以对用户层删除的卷进行回收,即在数据回收模式未启动时,当用户层删除卷时,直接对卷进行格式化,以彻底删除卷的数据。
步骤202,将所述目标卷的卷信息从所述卷删除操作作用的页面中删除,并保留所述目标卷的元数据。
在确定用户执行的卷删除操作对应的目标卷后,将目标卷在用户执行卷删除操作作用的页面中删除,但继续保留目标卷的元数据,以便于后续在有需要时,基于保留的目标卷的元数据来恢复目标卷。
其中,元数据可以指管理条带的数据结构,可以是位图也可以是哈希表等。
以RAID卡为例,当检测到用户执行删除页面中的目标卷的卷删除操作时,将目标卷从该页面中删除,并在RAID卡中保留该目标卷的卷空间映射表以及磁盘阵列空间映射关系,其中,卷空间映射表用于存储卷与存放卷的地址之间的映射关系,磁盘阵列空间映射关系是指存放卷的地址与硬盘之间的映射关系。可以理解,该目标卷的卷空间映射表和目标卷的磁盘阵列空间映射关系对应的数据均为该目标卷的元数据。也就是说,在本示例中,在用户执行目标卷的卷删除操作时,并没有真正删除RAID卡中的该目标卷的卷空间映射表和该目标卷的磁盘阵列空间映射关系。
步骤203,根据所述目标卷的优先级和删除时间,将所述目标卷的卷信息添加到回收链表的相应位置,以对所述目标卷进行回收管理。
回收链表用于记录用户层删除的卷信息。为了避免回收链表因系统断电造成信息丢失,在本申请的一些实施例中,当检测到断电时,如掉电、系统关闭等情况,将回收链表保存到非易失性存储介质中,以实现及时将信息保存下来,以便后续系统上电后可以继续使用。适应性地,当检测到重启操作时,如系统初始化、上电重启等,可以从非易失性存储介质中获取回收链表,以实现对回收链表进行断电保护。
在本实施例中,用户在创建卷时,或者在删除卷时,需要设定对应卷的优先级,一般地,卷的优先级越高,对应的数据越重要,优先级越低,对应的数据越不重要。对于用户层删除的目标卷,可以根据目标卷的优先级和删除时间,确定目标卷的卷信息在回收链表的具体位置,并将目标卷的卷信息添加到回收链表的对应位置,以对目标卷进行回收管理。
其中,添加到回收链表中的卷信息可以包含卷的标识、卷的大小以及卷的删除时间、卷的存储范围等。例如:卷信息可以包含卷的LBA(逻辑块)范围、卷ID(标识)、卷所属RAID等信息。其中,构成LBA范围的LBA地址是指在进行硬盘或者存储系统访问时,用来定位到具体存储位置的地址。
参照图3,示出了本申请一示例中的回收链表的示意图,回收链表可以是二维链表结构,第一层为一个单向链表,优先级依次升高。当有新的优先级的卷被添加到回收链表时,需要在回收链表对应位置插入对应优先级的描述。每个优先级下的卷信息按照删除时间的先后顺序从上往下排列,如图3中,优先级1中的卷10删除时间最早,接着是卷7、卷3、卷6,即卷6的删除时间最晚。当有新的卷信息需要添加到回收链表时,在确定其对应的优先级后,可以直接将该卷信息添加到对应的优先级所在列的最末端,或者,将该卷信息添加到对应优先级所在列的最末端且位于该卷信息的删除时间指示的时间线上。
在本申请的一些可选实施例中,上述根据所述目标卷的优先级和删除时间,将所述目标卷的卷信息添加到回收链表的相应位置,可以包括:
根据所述目标卷的优先级确定所述目标卷的卷信息在所述回收链表中的目标列位置;
根据所述目标卷的删除时间确定所述目标卷的卷信息在所述目标列位置中的目标行位置;
将所述目标卷的卷信息添加到所述回收链表的目标列的目标行中。
回收链表中同一列的卷信息对应的优先级相同,并且同一列的卷信息按照删除时间的先后顺序从上到下排列。在将目标卷的卷信息添加到回收链表的过程中,可以先根据目标卷的优先级确定对应的目标列位置,若回收链表中没有该优先级,则可以在回收链表的相应位置插入该优先级列,然后根据目标卷的删除时间确定对应的目标行位置,以将目标卷的卷信息添加到回收链表的目标列位置的目标行位置中。
进一步地,在本申请的一些可选实施例中,该方法还可以包括:
在目标页面显示所述回收链表,其中,所述目标页面基于管理员权限打开的。
本实施例中,只有最高权限的管理员用户才能具有打开关闭目标页面功能,以便于在后续其他用户误删时进行卷恢复操作。管理员可以认为是具有特殊权限的用户,除了具有与常规用户相同的权限外,还具有常规用户不具有的权限,也就是,本文中卷删除操作、卷新建操作可以由常规用户执行,也可以由管理员执行。此外,管理员用户也可以通过目标页面来决定当前需要彻底删除的卷,并将需要彻底删除的卷执行彻底删除操作。
进一步地,在本申请的一些可选实施例中,上述将所述目标卷的卷信息从所述卷删除操作作用的页面中删除,并保留所述目标卷的元数据,还可以包括:
确定所述目标卷的元数据对应目标存储块,并将所述目标存储块标记为无用状态;
通过标记为无用状态的存储块和标记为空闲状态的存储块确定所述存储空间的可用存储空间;所述标记为空闲状态的存储块对应的存储空间为实际可用存储空间;
显示所述可用存储空间。
本实施例中,对目标卷进行回收的方式可以是通过标记目标卷对应的目标存储块来实现。具体地,在确定用户层删除的目标卷后,可以进一步确定目标卷的元数据对应的目标存储块,即存储该目标卷的元数据的磁盘阵列空间映射关系的存储块,然后将目标存储块标记为无用状态。在具体实现中,存储块的状态包括无用状态、空闲状态和忙碌状态,其中,标记为无用状态的存储块存储的数据为回收数据,即用户层已对该数据执行过删除操作;标记为空闲状态的存储块没有存储数据,可以用于存储新数据,即标记为空闲状态的存储块对应的存储空间为实际可用存储空间;标记为忙碌状态的存储块存储的是正常数据,即用户层没有执行过删除操作的数据。通过将目标卷对应的目标存储块从原来的忙碌状态切换为无用状态,以将目标存储块与忙碌状态的存储块进行区分。
并且,本实施例还可以在相应的存储空间显示界面显示可用存储空间,该可用存储空间是通过标记为无用状态的存储块和标记为空闲状态的存储块确定的到的,也就是说,本实施例显示的可用存储空间包括实际可用存储空间和回收数据所占用的存储空间。
可选地,在其他实施例中,可用存储空间也可以用于表示实际可用存储空间。
步骤204,当存储空间达到预设条件时,确定所述回收链表中的待删除卷信息。
考虑到系统的存储空间有限,且回收的数据也会占据一定的存储空间,因此,在本申请实施例中,为了避免回收的数据占用的存储空间影响到系统的正常运行,可以在系统的存储空间达到预设条件时,确定回收链表中的待删除卷信息,进而将待删除卷信息对应的元数据从存储空间中彻底删除,以重复使用该待删除卷信息对应的元数据所占据的存储空间,此时彻底删除的卷无法再进行恢复。其中,预设条件可以根据实际需求进行设置,例如,预设条件可以是存储空间的实际可用存储空间小于第一预设存储空间阈值;或者,预设条件可以是回收链表中的卷信息对应的元数据所占的无用存储空间大于第二预设存储空间阈值;或者,预设条件可以是用户新建卷且新建卷所需的目标存储空间大于实际可用存储空间等。
进一步地,在本申请的一些可选实施例中,上述当存储空间达到预设条件时,确定所述回收链表中的待删除卷信息,可以包括:
当所述存储空间达到预设条件时,从所述回收链表的低优先级开始,按照删除时间从先到后的顺序确定待删除卷信息。
在本实施例中,当需要彻底删除回收链表中的一些卷信息对应的元数据,以使得系统的实际可用存储空间可以满足实际需求时,可以从回收链表的低优先级开始,按照删除时间从先到后的顺序确定待删除卷信息;可以进一步提高重要数据在回收系统中的驻留时间,为卷恢复提供更长的时间保障。
以图3所是的回收链表为例,最低的优先级为优先级1,在确定待删除卷信息时,从优先级1下的卷信息开始,对于同属于优先级1的卷信息,则按照删除时间从先到后的顺序进行,即确定的第一个待删除卷信息为卷10,第二个待删除卷信息为卷7,第三个待删除卷信息为卷3,依此类推,删除部分卷信息后可以的到如图4所示的回收链表示意图。按照优先级从低到高的顺序确定待删除卷信息,可以确保优先级高的重要数据可以保留更久。
在本申请的另一些可选实施例中,上述当存储空间达到预设条件时,确定所述回收链表中的待删除卷信息,可以包括:
当所述存储空间达到预设条件时,根据各个优先级对应的保护时长,确定在所述回收链表中存储时间达到对应保护时长的候选卷信息;
从所述候选卷信息中,按照优先级从低到高的顺序,确定待删除卷信息。
在本实施例中,可以为每个优先级下的卷信息设置相应的保护时长,一般地,优先级越高,对应的保护时长越长。当需要彻底删除回收链表中的一些卷信息对应的元数据,以使得系统的实际可用存储空间可以满足实际需求时,可以先确定达到对应保护时长的卷信息,即确定当前时间与删除时间之间的时间间隔达到对应保护时长的卷信息,为了便于区分,将达到对应保护时长的卷信息记为候选卷信息,然后从候选卷信息中,按照优先级从低到高的顺序确定待删除卷信息。
示例性地,参照图5,优先级1对应的保护时长为12小时,优先级2对应的保护时长为24小时,优先级3对应的保护时长为36小时,优先级4对应的保护时长为10天,优先级5对应的保护时长为30天。假设,卷10距离删除时间的时间间隔为30小时,卷7距离删除时间的时间间隔为15小时,卷3距离删除时间的时间间隔为10小时,卷1距离删除时间的时间间隔为25小时,卷11距离删除时间的时间间隔为20小时,卷8距离删除时间的时间间隔为32小时,卷2距离删除时间的时间间隔为5天,卷18距离删除时间的时间间隔为31天,此时,可以确定候选卷信息为卷10、卷7、卷1、卷18。由于卷10和卷7对应优先级1,卷1对应优先级2,卷18对应优先级18,因此,确定第一个待删除卷信息为卷10,第二个待删除卷信息为卷7,第三个待删除卷信息为卷1,第四个待删除卷信息为卷18。
若当前需要确定的待删除卷信息的数量大于候选卷信息数量,则可以在将候选卷信息确定为待删除卷信息后,再从回收链表的低优先级开始,按照删除时间从先到后的顺序继续确定下一个待删除卷信息。
需要说明的是,若当前需要确定的待删除卷信息的数量大于候选卷信息数量,还可以在将候选卷信息确定为待删除卷信息后,再根据回收链表中各个卷信息距离删除时间的时间间隔与对应的保护时长之间的差值或比值,按照差值或比值从小到大的顺序确定待删除卷信息,其中,差值等于保护时长减去卷信息距离删除时间的时间间隔,比值等于保护时长除以卷信息距离删除时间的时间间隔。当存在相同大小的差值或比值时,则从低优先级开始确定待删除卷信息。
可选地,可以在回收链表中标记出候选卷信息,例如,对候选卷信息进行置灰显示,或者在候选卷信息中添加相应的候选标识等,以便管理员可视化了解候选卷信息。
进一步地,在本申请的一些可选实施例中,上述当存储空间达到预设条件时,确定所述回收链表中的待删除卷信息,具体可以是当所述存储空间的实际可用存储空间小于第一预设存储空间阈值时,确定所述回收链表中的待删除卷信息。其中,确定所述回收链表中的待删除卷信息,可以包括:
当所述存储空间的实际可用存储空间小于第一预设存储空间阈值时,根据所述实际可用存储空间与所述第一预设存储空间阈值确定第一存储空间差值;
根据所述第一存储空间差值,确定所述回收链表中的待删除卷信息,其中,所述待删除卷信息对应的总存储空间大于或等于所述第一存储空间差值。
本实施例中,触发回收链表中的一些卷信息彻底删除的条件为实际可用存储空间小于第一预设存储空间阈值,其中,第一预设存储空间阈值可以根据实际需要进行设置。在确定待删除卷信息的过程中,可以按照前文所述的方式来依次确定待删除卷信息,并且结合第一存储空间差值,在每增加一个确定出的待删除卷信息时,将已经确定出的待删除卷信息的元数据所占的总存储空间与第一存储空间差值进行比较,若总存储空间大于或等于第一存储空间差值时,则结束;反之,若总存储空间小于第一存储空间差值,则继续确定下一个待删除卷信息。
在本申请的另一些可选实施例中,上述当存储空间达到预设条件时,确定所述回收链表中的待删除卷信息,具体可以是当所述回收链表中的卷信息对应的元数据所占的无用存储空间大于第二预设存储空间阈值时,确定所述回收链表中的待删除卷信息。其中,确定所述回收链表中的待删除卷信息,可以包括:
当所述回收链表中的卷信息对应的元数据所占的无用存储空间大于第二预设存储空间阈值时,根据所述第二预设存储空间阈值与所述无用存储空间确定第二存储空间差值;
根据所述第二存储空间差值,确定所述回收链表中的待删除卷信息,其中,所述待删除卷信息对应的总存储空间大于或等于所述第二存储空间差值。
本实施例中,触发回收链表中的一些卷信息彻底删除的条件为回收数据所占用的无用存储空间大于第二预设存储空间阈值,其中,第二预设存储空间阈值可以根据实际需要进行设置。在确定待删除卷信息的过程中,可以按照前文所述的方式来依次确定待删除卷信息,并且结合第二存储空间差值,在每增加一个确定出的待删除卷信息时,将已经确定出的待删除卷信息的元数据所占的总存储空间与第二存储空间差值进行比较,若总存储空间大于或等于第二存储空间差值时,则结束;反之,若总存储空间小于第二存储空间差值,则继续确定下一个待删除卷信息。
在本申请的又一些可选实施例中,上述当存储空间达到预设条件时,确定所述回收链表中的待删除卷信息,具体可以是响应于卷新建操作,确定所述卷新建操作对应的新建卷所需的目标存储空间;当所述存储空间中的实际可用存储空间小于所述目标存储空间时,确定所述回收链表中的待删除卷信息。
在本实施例中,用户可以通过其使用的终端设备执行卷新建操作,以创建新卷。在接收到用户执行的卷新建操作时,可以确定该卷新建操作对应的新建卷所需的目标存储空间。由于用户可以依据可用存储空间来创建新卷,因此可能存在实际可用存储空间小于新建卷所需的目标存储空间的问题,此时,则需要彻底删除回收链表中的一些卷信息,以使得实际可用存储空间可以满足用户创建新建卷的需求。
其中,确定所述回收链表中的待删除卷信息,可以包括:
当所述存储空间中的实际可用存储空间小于所述目标存储空间时,根据所述实际可用存储空间与所述目标存储空间确定第三存储空间差值,
根据所述第三存储空间差值,确定所述回收链表中的待删除卷信息,其中,所述待删除卷信息对应的总存储空间大于或等于所述第三存储空间差值。
在本实施例在确定待删除卷信息的过程中,可以按照前文所述的方式来依次确定待删除卷信息,并且结合第三存储空间差值,在每增加一个确定出的待删除卷信息时,将已经确定出的待删除卷信息的元数据所占的总存储空间与第三存储空间差值进行比较,若总存储空间大于或等于第三存储空间差值时,则结束;反之,若总存储空间小于第三存储空间差值,则继续确定下一个待删除卷信息。
步骤205,将所述待删除卷信息对应的元数据从所述存储空间中删除。
在确定出待删除卷信息后,将待删除卷信息对应的元数据从存储空间中彻底删除,以重复利用存储该待删除卷信息部分的存储空间。
示例性地,以RAID卡为例,在确定出待删除卷信息后,将该待删除卷信息对应的元数据从存储空间彻底删除,可以包括将RAID卡中的该待删除卷信息的磁盘阵列空间映射关系彻底删除,即清空原存储该待删除卷信息的磁盘阵列空间映射关系的存储块;同时还可以包括将RAID卡中的该待删除卷信息的卷空间映射表彻底删除。
在本申请的一些可选实施例中,实际可用存储空间是根据标记为空闲状态的存储块对应的存储空间的到的,因此,上述将所述待删除卷信息对应的元数据从所述存储空间中删除,可以包括:将存储所述待删除卷信息对应的元数据的存储块标记为空闲状态,以便于即使更新可用存储空间。
进一地,在本申请的一些可选实施例中,管理员可以打开回收系统,并选择需要彻底删除的回收数据,以释放该回收数据所占据的存储空间。其中,回收系统包括显示回收链表的目标页面。也就是说,该方法还可以包括:
响应作用于所述回收链表的删除操作,确定所述删除操作对应的目标待删除卷;
将所述目标待删除卷的卷信息从所述回收链表中删除,并将存储所述目标待删除卷的卷信息对应的元数据的存储块标记为可用状态。
管理员可以选择回收链表中的部分或全部卷信息,并执行删除操作,以彻底删除该部分或全部卷信息。当接收到管理员作用于回收链表的删除操作时,可以确定删除操作对应的目标待删除卷;然后将目标待删除卷的卷信息从回收链表中删除,并将存储该目标待删除卷的卷信息对应的元数据的存储块标记为可用状态,即,将该目标待删除卷的卷信息对应的元数据从存储空间中彻底删除,以便释放相应的存储空间。
进一步地,在本申请的一些可选实施例中,该方法还可以包括:
响应作用于所述回收链表的恢复操作,确定所述恢复操作对应的待恢复卷;
将待恢复卷的卷信息恢复显示在相应的原页面中。
在本申请的一些可选实施例中,管理员可以打开回收系统,选择需要恢复的卷信息,并对需要恢复的卷执行恢复操作。当接收到管理员作用于回收链表的恢复操作时,可以确定恢复操作对应的待恢复卷,进而将待恢复卷的卷信息恢复显示在相应的原页面中。
进一步地,在将待恢复卷的卷信息恢复显示在相应的原页面中,还可以包括:
将所述待恢复卷的卷信息从所述回收链表中删除,并将存储所述待恢复卷信息对应的元数据的存储块标记为不可用状态。
对于已经恢复的卷信息,还需要将该已经恢复的卷信息从回收链表中删除,同时将存储该已经恢复的卷信息对应的元数据的存储块标记为不可用状态,以便更新实际可用存储空间。
本申请实施例结合存储领域中遇到的棘手的数据丢失难以恢复的问题,提出了一种数据管理方法,再用户执行卷删除操作时,不进行实际的卷删除,而是将卷删除操作对应的卷添加到回收系统中,当系统剩余空间不足时再进行实际的空间释放,从而延后卷实际的删除操作,当出现卷误删操作时,可以有一定的可能性将误删的卷进行恢复,从而达到保障用户数据安全的目的。并且,本申请实施例通过包含优先级和删除时间维度的回收链表来记录用户层删除操作对应的卷,可以提高回收管理合理性和便捷性,进一步保证数据的可靠性。在需要释放存储空间时,结合卷的优先级来确定释放顺序,可以进一步提高重要数据的安全性。
为了方便本领域技术人员理解本方案,下面将结合图6至图8对本申请实施例提供的一种数据管理方法进行示例性说明。
图6示出了本申请一示例的数据管理方法在RAID业务处理中的应用场景示意图,需要说明的是,由于RAID卡功能较多,图6仅列出了RAID中和回收系统设计相关的功能模块和流程。
如图6所示,首先,用户端删除卷6,具体地,用户端可以使用host(查询)命令或者UEFI(Unified Extensible Firmware Interface,统一可扩展固件接口)等前端方式执行卷6的删除操作。然后,卷管理模块按照流程将管理的卷6的信息数据提交给卷回收模块,并将卷6的相关信息从自身模块中删除。卷回收模块接收到卷6的信息后按照卷6的优先级将卷6的信息挂载到对应的优先级链表下进行管理,本示例中卷6的的优先级为1。接着,当系统存储空间不足时,即RAID阵列空间映射管理模块(也称磁盘阵列空间映射管理模块)中实际可用存储块对应的存储空间不足时,需要对部分卷进行回收,此时卷6的优先级最低会被优先回收。卷6的回收操作需要查询空间映射表进行,此时通过卷空间映射管理模块获取到卷6的空间映射表,其中,卷空间映射管理模块用于存储卷与存放卷的地址之间的映射关系表,存放卷的地址即RAID阵列空间映射管理模块中的存储块,其中,RAID阵列空间映射管理模块用于管理RAID空间映射,RAID阵列空间映射管理模块包括多个存储单元,一个存储单元对应一个存储块。最后,通过卷6的空间映射表查找到阵列空间映射管理模块中对应的存储块,并将这些存储块的使用状态更改为空闲状态,同时将该存储块中存储的映射关系删除,此时存储空间实际可用存储容量增加。
可以理解,本申请实施例提供的一种数据管理方法可以包括卷加入回收系统的流程(即卷回收流程)和从回收系统中删除卷的流程(即释放存储空间流程)。
图7示出了本申请一示例的卷回收流程示意图,该卷回收流程可以包括如下步骤:
步骤701,用户删除卷。
用户在实际使用RAID卡过程中可以通过命令或者UEFI操作删除卷。
步骤702,判断是否开启回收功能。
系统判断是否开启了回收功能,如果没有开启则执行步骤704;如果开启了回收功能,继续执行步骤703。
步骤703,卷信息被添加到回收系统中。
具体地,在二维回收链表中找到当前卷对应的优先级,然后插入卷信息到对应优先级链表的尾部。
步骤704,删除卷并释放卷所占用的RAID空间;
步骤705,从管理元数据中删除对应卷的元数据信息。
步骤706,结束。
删除操作结束,直接返回,回收功能对一般用户(非管理员用户)是透明的,用户执行删除后无法得知卷是否被真实删除,管理员用户则具有特殊的权限,可以打开回收系统,以查看回收系统中回收的数据信息。
图8示出了本申请一示例的释放存储空间流程示意图,该释放存储空间流程可以包括:
步骤801,检测是否有足够剩余空间。
回收系统循环检测当前系统留有的实际可存储空间是否足够,若不足够,则执行步骤802。
步骤802,遍历二维回收链表,释放低优先级的卷进行空间回收。
当剩余空间不够时,回收系统查找到最低优先级的最早被添加的卷进行释放。
步骤803,判断空间释放是否满足要求。
每释放一个卷,就判断一次剩余空间是否满足要求,若满足要求,则结束;若不满足要求,则继续从回收链表剩余的卷中选择最低优先级的最早被添加的卷进行释放,直到剩余空间满足要求为止。
在本示例中,当用户在使用RAID卡过程中因为误操作删除卷时,通过数据回收技术在RAID卡内部增加数据回收系统,实现用户对卷的删除操作不直接进行实际的数据删除和卷的元数据清除,而是将其放置到回收系统中并对用户不可见。只有当剩余可直接使用空间不足时才会从回收系统中获取空间,这样不仅能够在一定程度上实现误删数据的恢复,也不会影响到新卷的创建,能够极大地提高RAID卡数据的可靠性。
RAID卡通过将多块硬盘组成对应级别的RAID阵列,然后在RAID阵列上将空间划分为卷提供给外部使用。在一个已有的RAID阵列上创建卷时,就会占用一部分RAID阵列存储空间,删除卷时同样会释放一部分存储空间。相关技术中的卷删除操作会将卷对应的元数据删除,并将所占用的RAID阵列的空间标记为空闲状态释放掉。这样的流程会导致用户一旦误删除卷,数据就会被彻底清除且无法恢复。而本申请提供的数据管理方法,通过将此部分元数据和数据区间标记为无用状态后记录到回收系统,并不直接清除数据,由回收系统来决定何时擦除数据并释放空间。
回收系统负责登记删除卷的信息,并将标记为无用状态的卷按照删除时间和优先级进行管理。具体地,回收系统中使用包含优先级和删除时间的二维回收链表来保存用户删除卷的信息。回收系统通过判断当前RAID阵列可用空间是否低于某个阈值来进行无用状态卷的删除,通过及时回收卷空间,保障实际可直接使用的RAID整列的存储空间足够,满足创建卷的需求。
当用户创建卷时,可选取的容量空间仍然为RAID阵列的整个剩余空间(即标记为空闲状态和标记为无用状态的空间),当实际设置的空间小于标记为空闲状态的空间时,直接使用标记为空闲状态的空间创建卷。当设置的空间大于标记为空闲状态的空间时,则会触发回收系统的实际释放流程,回收系统选择优先级最低,删除时间最早的卷进行释放,并将实际释放掉的无用状态空间标记为空闲状态,直到标记为空闲状态的空间满足创建卷的需求时,停止卷的释放操作。
回收系统中记录了已被用户删除的卷的编号信息、卷的删除时间、卷的优先级、卷的LBA起始结束地址、卷的大小等信息、卷所属RAID存储空间等信息。回收系统通过以上信息来决定对回收的卷进行实际删除的顺序。二维回收链表、优先级是用来组织卷信息的全局变量,可以由C语音或者C++实现,这部分信息需要在断电时存储到非易失性介质中。
当RAID卡启动后,回收系统会被初始化,需要加载存储在非易失性介质中的状态数据,当系统关闭或突然掉电时也需要将数据信息下刷到非易失性介质中进行保存。当对RAID阵列进行格式化的时候,回收系统中对应RAID阵列的所有卷信息也需要被清除。对用户删除卷的格式化操作并不会立即执行,而是记录到回收系统的对应卷待操作信息中,只有将此卷真正进行释放的时候才会执行格式化操作。
需要说明的是,对于方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本申请实施例并不受所描述的动作顺序的限制,因为依据本申请实施例,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作并不一定是本申请实施例所必须的。
参照图9,示出了本申请的一种数据管理装置实施例的结构框图,与上述数据管理方法实施例相对应,该装置可以包括如下模块:
目标卷确定模块901,用于响应于卷删除操作,确定所述卷删除操作对应的目标卷;
目标卷处理模块902,用于将所述目标卷的卷信息从所述卷删除操作作用的页面中删除,并保留所述目标卷的元数据;
目标卷回收模块903,用于根据所述目标卷的优先级和删除时间,将所述目标卷的卷信息添加到回收链表的相应位置,以对所述目标卷进行回收管理。
在本申请的一些可选实施例中,所述装置还包括:
待删卷确定模块,用于当存储空间达到预设条件时,确定所述回收链表中的待删除卷信息;
待删卷删除模块,用于将所述待删除卷信息对应的元数据从所述存储空间中删除。
在本申请的一些可选实施例中,所述目标卷回收模块903,包括:
目标列确定模块,用于根据所述目标卷的优先级确定所述目标卷的卷信息在所述回收链表中的目标列位置;
目标行确定模块,用于根据所述目标卷的删除时间确定所述目标卷的卷信息在所述目标列位置中的目标行位置;
目标卷添加模块,用于将所述目标卷的卷信息添加到所述回收链表的目标列的目标行中。
在本申请的一些可选实施例中,所述目标卷处理模块902,还包括:
第一标记模块,用于确定所述目标卷的元数据对应目标存储块,并将所述目标存储块标记为无用状态;
存储空间确定模块,用于通过标记为无用状态的存储块和标记为空闲状态的存储块确定所述存储空间的可用存储空间;所述标记为空闲状态的存储块对应的存储空间为实际可用存储空间;
存储空间显示模块,用于显示所述可用存储空间。
在本申请的一些可选实施例中,所述待删卷删除模块,包括:
标记更新模块,用于将存储所述待删除卷信息对应的元数据的存储块标记为空闲状态。
在本申请的一些可选实施例中,所述待删卷确定模块,包括:
第一待删卷确定模块,用于当所述存储空间达到预设条件时,从所述回收链表的低优先级开始,按照删除时间从先到后的顺序确定待删除卷信息。
在本申请的一些可选实施例中,所述待删卷确定模块,包括:
候选卷确定模块,用于当所述存储空间达到预设条件时,根据各个优先级对应的保护时长,确定在所述回收链表中存储时间达到对应保护时长的候选卷信息;
第二待删卷确定模块,用于从所述候选卷信息中,按照优先级从低到高的顺序,确定待删除卷信息。
在本申请的一些可选实施例中,所述待删卷确定模块,用于当所述存储空间的实际可用存储空间小于第一预设存储空间阈值时,确定所述回收链表中的待删除卷信息。
在本申请的一些可选实施例中,所述待删卷确定模块,包括:
第一差值确定模块,用于当所述存储空间的实际可用存储空间小于第一预设存储空间阈值时,根据所述实际可用存储空间与所述第一预设存储空间阈值确定第一存储空间差值;
基于第一差值确定模块,用于根据所述第一存储空间差值,确定所述回收链表中的待删除卷信息,其中,所述待删除卷信息对应的总存储空间大于或等于所述第一存储空间差值。
在本申请的一些可选实施例中,所述待删卷确定模块,用于当所述回收链表中的卷信息对应的元数据所占的无用存储空间大于第二预设存储空间阈值时,确定所述回收链表中的待删除卷信息。
在本申请的一些可选实施例中,所述待删卷确定模块,包括:
第二差值确定模块,用于当所述回收链表中的卷信息对应的元数据所占的无用存储空间大于第二预设存储空间阈值时,根据所述第二预设存储空间阈值与所述无用存储空间确定第二存储空间差值;
基于第二差值确定模块,用于根据所述第二存储空间差值,确定所述回收链表中的待删除卷信息,其中,所述待删除卷信息对应的总存储空间大于或等于所述第二存储空间差值。
在本申请的一些可选实施例中,所述待删卷确定模块,包括:
卷新建模块,用于响应于卷新建操作,确定所述卷新建操作对应的新建卷所需的目标存储空间;
基于新建卷确定模块,用于当所述存储空间中的实际可用存储空间小于所述目标存储空间时,确定所述回收链表中的待删除卷信息。
在本申请的一些可选实施例中,所述基于新建卷确定模块,包括:
第三差值确定模块,用于当所述存储空间中的实际可用存储空间小于所述目标存储空间时,根据所述实际可用存储空间与所述目标存储空间确定第三存储空间差值,
基于第三差值确定模块,用于根据所述第三存储空间差值,确定所述回收链表中的待删除卷信息,其中,所述待删除卷信息对应的总存储空间大于或等于所述第三存储空间差值。
在本申请的一些可选实施例中,所述装置还包括:
回收模式启动模块,用于接收数据回收开启指令,启动数据回收模式。
在本申请的一些可选实施例中,所述装置还包括:
回收链表显示模块,用于在目标页面显示所述回收链表,其中,所述目标页面基于管理员权限打开的。
在本申请的一些可选实施例中,所述装置还包括:
恢复卷确定模块,用于响应作用于所述回收链表的恢复操作,确定所述恢复操作对应的待恢复卷;
恢复卷恢复模块,用于将待恢复卷的卷信息恢复显示在相应的原页面中。
在本申请的一些可选实施例中,所述恢复卷恢复模块,还包括:
链表更新模块,用于将所述待恢复卷的卷信息从所述回收链表中删除,并将存储所述待恢复卷信息对应的元数据的存储块标记为不可用状态。
在本申请的一些可选实施例中,所述装置还包括:
删除操作接收模块,用于响应作用于所述回收链表的删除操作,确定所述删除操作对应的目标待删除卷;
删除操作处理模块,用于将所述目标待删除卷的卷信息从所述回收链表中删除,并将存储所述目标待删除卷的卷信息对应的元数据的存储块标记为可用状态。
在本申请的一些可选实施例中,所述装置还包括:
断电存储模块,用于当检测到断电时,将所述回收链表保存到非易失性存储介质中。
在本申请的一些可选实施例中,所述装置还包括:
重启获取模块,用于响应于重启操作,从所述非易失性存储介质中获取回收链表。
对于装置实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
参照图10,本申请实施例还公开了一种数据管理系统10,与上述数据管理方法相对应,该数据管理系统10包括交互模块1001、磁盘阵列1002以及硬盘组1003;所述磁盘阵列1002包括卷管理模块和卷回收模块;所述卷回收模块包括回收链表;所述磁盘阵列1002还包括用于存储卷空间映射表的卷空间映射管理模块和用于存储磁盘阵列空间映射关系的磁盘阵列空间映射管理模块;所述磁盘阵列空间映射管理模块中的存储块与所述硬盘组中的硬盘关联;
所述交互模块1001用于接收卷删除操作,以将接收的卷删除操作对应的指令发送至卷管理模块;
所述卷管理模块用于确定所述卷删除操作对应的目标卷,将所述目标卷的卷信息从所述卷删除操作作用的页面中删除;
所述卷删除模块用于根据所述目标卷的优先级和删除时间,将所述目标卷的卷信息添加到回收链表的相应位置,以对所述目标卷进行回收管理。
可以理解,交互模块1001用于实现用户交互,包括接收用户的交互信息和向用户展示交互信息;具体地,交互模块1001用于将接收交互信息转换成对应的指令发送至磁盘阵列1002,以及接收并展示磁盘阵列1002发送的指令。
硬盘组1003包括多个硬盘,硬盘提供硬盘存储空间,且硬盘存储空间中存储的数据由与其关联的存储块中存储的信息决定。
在本申请的一些可选实施例中,所述卷回收模块,包括:
待删卷确定单元,用于当存储空间达到预设条件时,确定所述回收链表中的待删除卷信息;
待删卷删除单元,用于将所述待删除卷信息对应的元数据从所述存储空间中删除。可以理解,将磁盘阵列空间映射管理模块中存储的待删除卷信息的磁盘阵列空间映射关系删除,也就是将磁盘阵列空间映射管理模块中与待删除卷信息对应的存储块中存储的元数据删除。
在本申请的一些可选实施例中,所述卷回收模块,包括:
目标列确定单元,用于根据所述目标卷的优先级确定所述目标卷的卷信息在所述回收链表中的目标列位置;
目标行确定单元,用于根据所述目标卷的删除时间确定所述目标卷的卷信息在所述目标列位置中的目标行位置;
目标卷添加单元,用于将所述目标卷的卷信息添加到所述回收链表的目标列的目标行中。
在本申请的一些可选实施例中,所述卷回收模块,还包括:
第一标记单元,用于确定所述目标卷的元数据对应目标存储块,并将所述目标存储块标记为无用状态;
存储空间确定单元,用于通过标记为无用状态的存储块和标记为空闲状态的存储块确定所述存储空间的可用存储空间;所述标记为空闲状态的存储块对应的存储空间为实际可用存储空间;
所述交互模块1001,用于显示所述可用存储空间。
在本申请的一些可选实施例中,所述待删卷删除单元,包括:
标记更新子单元,用于将存储所述待删除卷信息对应的元数据的存储块标记为空闲状态。
在本申请的一些可选实施例中,所述待删卷确定单元,包括:
第一待删卷确定子单元,用于当所述存储空间达到预设条件时,从所述回收链表的低优先级开始,按照删除时间从先到后的顺序确定待删除卷信息。
在本申请的一些可选实施例中,所述待删卷确定单元,包括:
候选卷确定子单元,用于当所述存储空间达到预设条件时,根据各个优先级对应的保护时长,确定在所述回收链表中存储时间达到对应保护时长的候选卷信息;
第二待删卷确定子单元,用于从所述候选卷信息中,按照优先级从低到高的顺序,确定待删除卷信息。
在本申请的一些可选实施例中,所述待删卷确定单元,用于当所述存储空间的实际可用存储空间小于第一预设存储空间阈值时,确定所述回收链表中的待删除卷信息。
在本申请的一些可选实施例中,所述待删卷确定单元,包括:
第一差值确定子单元,用于当所述存储空间的实际可用存储空间小于第一预设存储空间阈值时,根据所述实际可用存储空间与所述第一预设存储空间阈值确定第一存储空间差值;
基于第一差值确定子单元,用于根据所述第一存储空间差值,确定所述回收链表中的待删除卷信息,其中,所述待删除卷信息对应的总存储空间大于或等于所述第一存储空间差值。
在本申请的一些可选实施例中,所述待删卷确定单元,用于当所述回收链表中的卷信息对应的元数据所占的无用存储空间大于第二预设存储空间阈值时,确定所述回收链表中的待删除卷信息。
在本申请的一些可选实施例中,所述待删卷确定单元,包括:
第二差值确定子单元,用于当所述回收链表中的卷信息对应的元数据所占的无用存储空间大于第二预设存储空间阈值时,根据所述第二预设存储空间阈值与所述无用存储空间确定第二存储空间差值;
基于第二差值确定子单元,用于根据所述第二存储空间差值,确定所述回收链表中的待删除卷信息,其中,所述待删除卷信息对应的总存储空间大于或等于所述第二存储空间差值。
在本申请的一些可选实施例中,所述交互模块1001用于接收卷新建操作,所述待删卷确定单元,包括:
卷新建子单元,用于确定所述卷新建操作对应的新建卷所需的目标存储空间;
基于新建卷确定子单元,用于当所述存储空间中的实际可用存储空间小于所述目标存储空间时,确定所述回收链表中的待删除卷信息。
在本申请的一些可选实施例中,所述基于新建卷确定子单元,包括:
第三差值确定子单元,用于当所述存储空间中的实际可用存储空间小于所述目标存储空间时,根据所述实际可用存储空间与所述目标存储空间确定第三存储空间差值,
基于第三差值确定子单元,用于根据所述第三存储空间差值,确定所述回收链表中的待删除卷信息,其中,所述待删除卷信息对应的总存储空间大于或等于所述第三存储空间差值。
在本申请的一些可选实施例中,所述交互模块1003还用于接收数据回收开启操作,生成数据回收开启指令;
所述卷回收模块,还包括:
回收模式启动单元,用于接收数据回收开启指令,启动数据回收模式。
在本申请的一些可选实施例中,所述交互模块1003还用于在目标页面显示所述回收链表,其中,所述目标页面基于管理员权限打开的。
在本申请的一些可选实施例中,所述交互模块1003还用于接收作用于回收链表的恢复操作;
所述卷回收模块,还包括:
恢复卷确定单元,用于确定所述恢复操作对应的待恢复卷;
所述交互模块1003还用于将待恢复卷的卷信息恢复显示在相应的原页面中。
在本申请的一些可选实施例中,所述卷回收模块,还包括:
链表更新单元,用于将所述待恢复卷的卷信息从所述回收链表中删除,并将存储所述待恢复卷信息对应的元数据的存储块标记为不可用状态。
在本申请的一些可选实施例中,所述交互模块1003还用于接收作用于回收链表的删除操作;
所述卷回收模块,还包括:
目标待删除卷确定单元,用于确定所述删除操作对应的目标待删除卷;
删除操作处理单元,用于将所述目标待删除卷的卷信息从所述回收链表中删除,并将存储所述目标待删除卷的卷信息对应的元数据的存储块标记为可用状态。
在本申请的一些可选实施例中,所述卷回收模块还包括:
断电存储单元,用于当检测到断电时,将所述回收链表保存到非易失性存储介质中。
在本申请的一些可选实施例中,所述卷回收模块还包括:
重启获取单元,用于响应于重启操作,从所述非易失性存储介质中获取回收链表。
参照图11,本申请实施例还公开了电子设备11,包括处理器1101、存储器1102及存储在所述存储器1102上并能够在所述处理器1101上运行的计算机程序1103,所述计算机程序1103被所述处理器1101执行时实现如上所述的数据管理方法的步骤。
参照图12,本申请实施例还公开了计算机可读存储介质12,所述计算机可读存储介质上12存储计算机程序1103,所述计算机程序1103被处理器执行时实现如上所述的数据管理方法的步骤。
本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。
本领域内的技术人员应明白,本申请实施例的实施例可提供为方法、装置、或计算机程序产品。因此,本申请实施例可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请实施例是参照根据本申请实施例的方法、终端设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理终端设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理终端设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理终端设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理终端设备上,使得在计算机或其他可编程终端设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程终端设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
本申请实施例中提出的所有获取信息的动作都是在遵照所在地国家相应的数据保护法规政策的前提下,并获得由相应装置所有者给予授权的情况下进行的。
尽管已描述了本申请实施例的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本申请实施例范围的所有变更和修改。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者终端设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者终端设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者终端设备中还存在另外的相同要素。
以上对本申请所提供的一种数据管理方法及装置、系统、电子设备、存储介质,进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。
Claims (24)
1.一种数据管理方法,其特征在于,所述方法包括:
响应于卷删除操作,确定所述卷删除操作对应的目标卷;
将所述目标卷的卷信息从所述卷删除操作作用的页面中删除,并保留所述目标卷的元数据;
根据所述目标卷的优先级和删除时间,将所述目标卷的卷信息添加到回收链表的相应位置,以对所述目标卷进行回收管理。
2.根据权利要求1所述的方法,其特征在于,所述根据所述目标卷的优先级和删除时间,将所述目标卷的卷信息添加到回收链表的相应位置,包括:
根据所述目标卷的优先级确定所述目标卷的卷信息在所述回收链表中的目标列位置;
根据所述目标卷的删除时间确定所述目标卷的卷信息在所述目标列位置中的目标行位置;
将所述目标卷的卷信息添加到所述回收链表的目标列的目标行中。
3.根据权利要求1所述的方法,其特征在于,所述方法还包括:
当存储空间达到预设条件时,确定所述回收链表中的待删除卷信息;
将所述待删除卷信息对应的元数据从所述存储空间中删除。
4.根据权利要求3所述的方法,其特征在于,所述将所述目标卷的卷信息从所述卷删除操作作用的页面中删除,并保留所述目标卷的元数据,还包括:
确定所述目标卷的元数据对应目标存储块,并将所述目标存储块标记为无用状态;
通过标记为无用状态的存储块和标记为空闲状态的存储块确定所述存储空间的可用存储空间;所述标记为空闲状态的存储块对应的存储空间为实际可用存储空间;
显示所述可用存储空间。
5.根据权利要求4所述的方法,其特征在于,所述将所述待删除卷信息对应的元数据从所述存储空间中删除,包括:
将存储所述待删除卷信息对应的元数据的存储块标记为空闲状态。
6.根据权利要求3所述的方法,其特征在于,所述当存储空间达到预设条件时,确定所述回收链表中的待删除卷信息,包括:
当所述存储空间达到预设条件时,从所述回收链表的低优先级开始,按照删除时间从先到后的顺序确定待删除卷信息。
7.根据权利要求3所述的方法,其特征在于,所述当存储空间达到预设条件时,确定所述回收链表中的待删除卷信息,包括:
当所述存储空间达到预设条件时,根据各个优先级对应的保护时长,确定在所述回收链表中存储时间达到对应保护时长的候选卷信息;
从所述候选卷信息中,按照优先级从低到高的顺序,确定待删除卷信息。
8.根据权利要求3-7任一项所述的方法,其特征在于,所述当存储空间达到预设条件时,确定所述回收链表中的待删除卷信息,包括:
当所述存储空间的实际可用存储空间小于第一预设存储空间阈值时,确定所述回收链表中的待删除卷信息。
9.根据权利要求8所述的方法,其特征在于,所述当所述存储空间的实际可用存储空间小于第一预设存储空间阈值时,确定所述回收链表中的待删除卷信息,包括:
当所述存储空间的实际可用存储空间小于第一预设存储空间阈值时,根据所述实际可用存储空间与所述第一预设存储空间阈值确定第一存储空间差值;
根据所述第一存储空间差值,确定所述回收链表中的待删除卷信息,其中,所述待删除卷信息对应的总存储空间大于或等于所述第一存储空间差值。
10.根据权利要求3-7任一项所述的方法,其特征在于,所述当存储空间达到预设条件时,确定所述回收链表中的待删除卷信息,包括:
当所述回收链表中的卷信息对应的元数据所占的无用存储空间大于第二预设存储空间阈值时,确定所述回收链表中的待删除卷信息。
11.根据权利要求10所述的方法,其特征在于,所述当所述回收链表中的卷信息对应的元数据所占的无用存储空间大于第二预设存储空间阈值时,确定所述回收链表中的待删除卷信息,包括:
当所述回收链表中的卷信息对应的元数据所占的无用存储空间大于第二预设存储空间阈值时,根据所述第二预设存储空间阈值与所述无用存储空间确定第二存储空间差值;
根据所述第二存储空间差值,确定所述回收链表中的待删除卷信息,其中,所述待删除卷信息对应的总存储空间大于或等于所述第二存储空间差值。
12.根据权利要求3-7任一项所述的方法,其特征在于,所述当存储空间达到预设条件时,确定所述回收链表中的待删除卷信息,包括:
响应于卷新建操作,确定所述卷新建操作对应的新建卷所需的目标存储空间;
当所述存储空间中的实际可用存储空间小于所述目标存储空间时,确定所述回收链表中的待删除卷信息。
13.根据权利要求12所述的方法,其特征在于,所述当所述存储空间中的实际可用存储空间小于所述目标存储空间时,确定所述回收链表中的待删除卷信息,包括:
当所述存储空间中的实际可用存储空间小于所述目标存储空间时,根据所述实际可用存储空间与所述目标存储空间确定第三存储空间差值,
根据所述第三存储空间差值,确定所述回收链表中的待删除卷信息,其中,所述待删除卷信息对应的总存储空间大于或等于所述第三存储空间差值。
14.根据权利要求1所述的方法,其特征在于,在所述响应于卷删除操作,确定所述卷删除操作对应的目标卷之前,还包括:
接收数据回收开启指令,启动数据回收模式。
15.根据权利要求4所述的方法,其特征在于,所述方法还包括:
在目标页面显示所述回收链表,其中,所述目标页面基于管理员权限打开。
16.根据权利要求15所述的方法,其特征在于,所述方法还包括:
响应作用于所述回收链表的恢复操作,确定所述恢复操作对应的待恢复卷;
将待恢复卷的卷信息恢复显示在相应的原页面中。
17.根据权利要求16所述的方法,其特征在于,所述将待恢复卷的卷信息恢复显示在相应的原页面中,还包括:
将所述待恢复卷的卷信息从所述回收链表中删除,并将存储所述待恢复卷信息对应的元数据的存储块标记为不可用状态。
18.根据权利要求15所述的方法,其特征在于,所述方法还包括:
响应作用于所述回收链表的删除操作,确定所述删除操作对应的目标待删除卷;
将所述目标待删除卷的卷信息从所述回收链表中删除,并将存储所述目标待删除卷的卷信息对应的元数据的存储块标记为可用状态。
19.根据权利要求1所述的方法,其特征在于,所述方法还包括:
当检测到断电时,将所述回收链表保存到非易失性存储介质中。
20.根据权利要求19所述的方法,其特征在于,所述方法还包括:
响应于重启操作,从所述非易失性存储介质中获取回收链表。
21.一种数据管理装置,其特征在于,所述装置包括:
目标卷确定模块,用于响应于卷删除操作,确定所述卷删除操作对应的目标卷;
目标卷处理模块,用于将所述目标卷的卷信息从所述卷删除操作作用的页面中删除,并保留所述目标卷的元数据;
目标卷回收模块,用于根据所述目标卷的优先级和删除时间,将所述目标卷的卷信息添加到回收链表的相应位置,以对所述目标卷进行回收管理。
22.一种数据管理系统,所述系统包括交互模块、磁盘阵列以及硬盘组;
所述交互模块用于接收卷删除操作;
所述磁盘阵列包括卷管理模块和卷回收模块;所述卷回收模块包括回收链表;所述磁盘阵列还包括用于存储卷空间映射表的卷空间映射管理模块和用于存储磁盘阵列空间映射关系的磁盘阵列空间映射管理模块;所述磁盘阵列空间映射管理模块中的存储块与所述硬盘组中的硬盘关联;
所述卷管理模块用于确定所述卷删除操作对应的目标卷,将所述目标卷的卷信息从所述卷删除操作作用的页面中删除;
所述卷回收模块用于根据所述目标卷的优先级和删除时间,将所述目标卷的卷信息添加到回收链表的相应位置,以对所述目标卷进行回收管理。
23.一种电子设备,其特征在于,包括处理器、存储器及存储在所述存储器上并能够在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现如权利要求1-20中任一项所述的数据管理方法。
24.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储计算机程序,所述计算机程序被处理器执行时实现如权利要求1-20中任一项所述的数据管理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310271411.3A CN116088770B (zh) | 2023-03-20 | 2023-03-20 | 数据管理方法及装置、系统、电子设备、存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310271411.3A CN116088770B (zh) | 2023-03-20 | 2023-03-20 | 数据管理方法及装置、系统、电子设备、存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116088770A true CN116088770A (zh) | 2023-05-09 |
CN116088770B CN116088770B (zh) | 2023-07-14 |
Family
ID=86208529
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310271411.3A Active CN116088770B (zh) | 2023-03-20 | 2023-03-20 | 数据管理方法及装置、系统、电子设备、存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116088770B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116841686A (zh) * | 2023-08-29 | 2023-10-03 | 荣耀终端有限公司 | 一种应用页面的展示方法 |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101542483A (zh) * | 2006-11-22 | 2009-09-23 | 国际商业机器公司 | 用于数据存储系统中的资源回收的装置和方法 |
CN103415842A (zh) * | 2010-11-16 | 2013-11-27 | 阿克蒂菲奥股份有限公司 | 用于数据管理虚拟化的系统和方法 |
CN109491598A (zh) * | 2018-10-19 | 2019-03-19 | 浪潮电子信息产业股份有限公司 | 一种逻辑卷的删除方法和装置 |
CN110764711A (zh) * | 2019-10-29 | 2020-02-07 | 北京浪潮数据技术有限公司 | 一种io数据分类删除方法、装置和计算机可读存储介质 |
US20200065198A1 (en) * | 2018-08-27 | 2020-02-27 | International Business Machines Corporation | Deleted data set preservation and recovery |
CN113900586A (zh) * | 2020-06-22 | 2022-01-07 | 爱思开海力士有限公司 | 存储器系统及其操作方法 |
CN113918388A (zh) * | 2021-12-15 | 2022-01-11 | 苏州浪潮智能科技有限公司 | 一种数据恢复方法、装置、设备及存储介质 |
US20220147272A1 (en) * | 2020-11-12 | 2022-05-12 | International Business Machines Corporation | Prioritization of stored data during a delete process in a virtualized storage system |
CN115114086A (zh) * | 2022-06-24 | 2022-09-27 | 苏州浪潮智能科技有限公司 | 基于磁盘阵列的阵列卷恢复方法、系统、设备及存储介质 |
-
2023
- 2023-03-20 CN CN202310271411.3A patent/CN116088770B/zh active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101542483A (zh) * | 2006-11-22 | 2009-09-23 | 国际商业机器公司 | 用于数据存储系统中的资源回收的装置和方法 |
CN103415842A (zh) * | 2010-11-16 | 2013-11-27 | 阿克蒂菲奥股份有限公司 | 用于数据管理虚拟化的系统和方法 |
US20200065198A1 (en) * | 2018-08-27 | 2020-02-27 | International Business Machines Corporation | Deleted data set preservation and recovery |
CN109491598A (zh) * | 2018-10-19 | 2019-03-19 | 浪潮电子信息产业股份有限公司 | 一种逻辑卷的删除方法和装置 |
CN110764711A (zh) * | 2019-10-29 | 2020-02-07 | 北京浪潮数据技术有限公司 | 一种io数据分类删除方法、装置和计算机可读存储介质 |
CN113900586A (zh) * | 2020-06-22 | 2022-01-07 | 爱思开海力士有限公司 | 存储器系统及其操作方法 |
US20220147272A1 (en) * | 2020-11-12 | 2022-05-12 | International Business Machines Corporation | Prioritization of stored data during a delete process in a virtualized storage system |
CN113918388A (zh) * | 2021-12-15 | 2022-01-11 | 苏州浪潮智能科技有限公司 | 一种数据恢复方法、装置、设备及存储介质 |
CN115114086A (zh) * | 2022-06-24 | 2022-09-27 | 苏州浪潮智能科技有限公司 | 基于磁盘阵列的阵列卷恢复方法、系统、设备及存储介质 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116841686A (zh) * | 2023-08-29 | 2023-10-03 | 荣耀终端有限公司 | 一种应用页面的展示方法 |
Also Published As
Publication number | Publication date |
---|---|
CN116088770B (zh) | 2023-07-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103577121B (zh) | 一种基于Nand Flash的高可靠线性文件存取方法 | |
US20220413706A1 (en) | Data Storage Method, Apparatus and Storage System | |
EP2545435B1 (en) | Systems and methods for garbage collection in deduplicated data systems | |
EP1739535B1 (en) | File system storing transaction records in flash-like media | |
US7873683B2 (en) | File system having transaction record coalescing | |
US7363540B2 (en) | Transaction-safe FAT file system improvements | |
CA2818472C (en) | Optimized startup verification of file system integrity | |
CN108319602B (zh) | 数据库管理方法及数据库系统 | |
US20140236911A1 (en) | Low Level Object Version Tracking Using Non-Volatile Memory Write Generations | |
KR101447188B1 (ko) | 플래시 메모리에 최적화된 입출력 제어 방법 및 장치 | |
CN103049349B (zh) | 基于分层存储的快照方法及系统 | |
US20030196036A1 (en) | System and method to guarantee overwrite of expired data in a virtual tape server | |
KR20120090965A (ko) | 고체-상태 저장 디바이스 상에서 데이터를 캐싱하는 장치, 시스템, 및 방법 | |
KR20080037283A (ko) | 플래시 메모리 장치를 포함하는 시스템 및 그것의 데이터복구 방법 | |
CN103577574A (zh) | 一种基于nand flash的高可靠线性文件系统 | |
CN107656875A (zh) | 作为系统盘的固态硬盘缩短上电时间的方法及系统 | |
US20070061540A1 (en) | Data storage system using segmentable virtual volumes | |
CA2549694A1 (en) | File system having deferred verification of data integrity | |
CN106294007B (zh) | 一种数据恢复方法及装置 | |
CN116088770B (zh) | 数据管理方法及装置、系统、电子设备、存储介质 | |
CN104899114A (zh) | 一种固态硬盘上的连续时间数据保护方法 | |
CN103176920A (zh) | Nor flash掉电保护方法及装置 | |
KR101077901B1 (ko) | 로그 블록 단위 매핑 기법을 이용한 플래시 메모리 관리 장치 및 방법 | |
CN107545022B (zh) | 磁盘管理方法及装置 | |
WO2010145967A1 (en) | Memory device for managing the recovery of a non volatile memory |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |