CN113254365A - 存储空间的管理方法、装置、设备、介质和程序产品 - Google Patents
存储空间的管理方法、装置、设备、介质和程序产品 Download PDFInfo
- Publication number
- CN113254365A CN113254365A CN202110641207.7A CN202110641207A CN113254365A CN 113254365 A CN113254365 A CN 113254365A CN 202110641207 A CN202110641207 A CN 202110641207A CN 113254365 A CN113254365 A CN 113254365A
- Authority
- CN
- China
- Prior art keywords
- storage
- mapping table
- storage space
- memory
- address identifier
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 64
- 238000013507 mapping Methods 0.000 claims abstract description 157
- 238000011084 recovery Methods 0.000 claims description 27
- 230000004044 response Effects 0.000 claims description 27
- 238000012545 processing Methods 0.000 claims description 17
- 238000004590 computer program Methods 0.000 claims description 13
- 230000001960 triggered effect Effects 0.000 claims description 6
- 238000013500 data storage Methods 0.000 abstract description 9
- 238000007726 management method Methods 0.000 description 38
- 230000008569 process Effects 0.000 description 11
- 238000010586 diagram Methods 0.000 description 10
- 230000002159 abnormal effect Effects 0.000 description 5
- 230000009471 action Effects 0.000 description 3
- 238000012217 deletion Methods 0.000 description 3
- 230000037430 deletion Effects 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 238000004064 recycling Methods 0.000 description 3
- 230000000694 effects Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000005012 migration Effects 0.000 description 2
- 238000013508 migration Methods 0.000 description 2
- 238000011176 pooling Methods 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 230000014759 maintenance of location Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
Images
Classifications
-
- 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/0284—Multiple user address space allocation, e.g. using different base addresses
-
- 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/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/10—Address translation
-
- 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/062—Securing storage systems
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明涉及一种存储空间的管理方法、装置、设备、介质和程序产品。本提供的技术方案中,通过在存储空间缓存中记录多个候选存储单元对应的候选物理地址标识,候选存储单元为干净存储单元,从而确定对第一逻辑地址标识分配存储空间,从存储空间缓存中获取第一物理地址标识,建立第一逻辑地址标识和第一物理地址标识的第一对应关系,将第一对应关系写入内存中的地址映射表,并将第一对应关系写入存储池中的地址映射表。从而使得分配的第一物理地址对应的存储单元均为干净存储单元,提高了数据存储的安全性。
Description
技术领域
本公开涉及数据存储技术领域,尤其涉及一种存储空间的管理方法、装置、设备、介质和程序产品。
背景技术
全球存储的数据规模成指数级增长,数据的存储需求也随之增长迅速。
为提高数据中心物理磁盘的利用率,数据中心将存储空间池化,按照用户规划和请求的容量分配逻辑存储空间,并按照用户实际使用量分配物理存储空间。
然而,现有的分配物理空间的方式,可能导致分配出去的物理存储空间包含了前置用户的遗留数据,使得数据存储的安全性不高。
发明内容
本发明实施例提供了一种存储空间的管理方法、装置、设备、介质和程序产品,能够解决现有的存储空间分配方法中数据存储的安全性不高的问题。
第一方面,本公开提供一种存储空间的管理方法,包括:
确定对第一逻辑地址标识分配存储空间;
从存储空间缓存中获取第一物理地址标识,其中,存储空间缓存记录有多个候选存储单元对应的候选物理地址标识,候选存储单元均为干净存储单元;
建立第一逻辑地址标识和第一物理地址标识的第一对应关系,将第一对应关系写入内存中的地址映射表,并将第一对应关系写入存储池中的地址映射表。
可选的,从存储空间缓存中获取第一物理地址标识之前,还包括:
根据分配位图,从未被分配的存储单元的物理地址标识中获取候选物理地址标识,其中,分配位图的每一位对应一个存储单元,每一位的值用于指示所对应的存储单元已被分配或者未被分配;
对候选物理地址标识对应的候选存储单元进行擦除处理,以使候选存储单元为干净存储单元;
将候选物理地址标识添加至存储空间缓存中。
可选的,该方法还包括:更新分配位图。
可选的,确定对第一逻辑地址标识分配存储空间,包括:
接收写入请求,写入请求中包含目标数据和逻辑地址标识;
查找内存中的地址映射表;
在内存中的地址映射表中没有逻辑地址标识对应的物理地址标识的情况下,则确定对第一逻辑地址标识分配存储空间;
将第一对应关系写入存储池中的地址映射表,包括:
同时将目标数据写入第一物理地址标识对应的目标存储单元和将第一对应关系写入存储池中的地址映射表。
可选的,该方法还包括:
若目标数据写入目标存储单元成功,且第一对应关系写入存储池中的地址映射表成功,则返回写请求成功响应;
若目标数据写入目标存储单元成功,且第一对应关系写入存储池中的地址映射表失败,则返回写请求失败响应,并将第一对应关系从内存中的地址映射表中删除;
若目标数据写入目标存储单元失败,且第一对应关系写入存储池中的地址映射表成功,则返回写请求失败响应;
若目标数据写入目标存储单元失败,且第一对应关系写入存储池中的地址映射表失败,则返回写请求失败响应,并将第一对应关系从内存中的地址映射表中删除。
可选的,该方法还包括:
在内存中的地址映射表中有第一逻辑地址标识对应的第一物理地址标识的情况下,将目标数据写入第一物理地址标识对应的目标存储单元。
可选的,该方法还包括:
接收回收请求,回收请求中包括:第二逻辑地址标识,回收请求是在用户删除第二逻辑地址标识对应的存储单元中的数据后触发的;
获取第二逻辑地址标识对应的第二物理地址标识,擦除第二物理地址标识对应的存储单元的数据;
删除存储池中的地址映射表中的第二逻辑地址标识和第二物理地址标识的第二对应关系;
删除内存中的地址映射表中的第二对应关系。
可选的,该方法还包括:当检测到分配的总逻辑地址对应的存储空间大于存储池的总存储空间,输出超分配告警。
可选的,该方法还包括:若分配位图丢失,扫描存储池中的地址映射表,生成分配位图。
第二方面,本公开提供一种存储空间的管理装置,包括:
处理模块,用于确定对第一逻辑地址标识分配存储空间;
瘦分配模块,用于从存储空间缓存中获取第一物理地址标识,其中,存储空间缓存记录有多个候选存储单元对应的候选物理地址标识,候选存储单元均为干净存储单元;
元数据存储模块,用于建立第一逻辑地址标识和第一物理地址标识的第一对应关系,将第一对应关系写入内存中的地址映射表,并将第一对应关系写入存储池中的地址映射表。
可选的,瘦分配模块还用于:根据分配位图,从未被分配的存储单元的物理地址标识中获取候选物理地址标识,其中,分配位图的每一位对应一个存储单元,每一位的值用于指示所对应的存储单元已被分配或者未被分配;对候选物理地址标识对应的候选存储单元进行擦除处理,以使候选存储单元为干净存储单元;将候选物理地址标识添加至存储空间缓存中。
可选的,元数据存储模块还用于:更新分配位图。
可选的,处理模块具体用于:
接收写入请求,写入请求中包含目标数据和逻辑地址标识;
查找内存中的地址映射表;
在内存中的地址映射表中没有逻辑地址标识对应的物理地址标识的情况下,则确定对第一逻辑地址标识分配存储空间;
元数据存储模块具体用于:
同时将目标数据写入第一物理地址标识对应的目标存储单元和将第一对应关系写入存储池中的地址映射表。
可选的,元数据存储模块还用于:
若目标数据写入目标存储单元成功,且第一对应关系写入存储池中的地址映射表成功,则返回写请求成功响应;
若目标数据写入目标存储单元成功,且第一对应关系写入存储池中的地址映射表失败,则返回写请求失败响应,并将第一对应关系从内存中的地址映射表中删除;
若目标数据写入目标存储单元失败,且第一对应关系写入存储池中的地址映射表成功,则返回写请求失败响应;
若目标数据写入目标存储单元失败,且第一对应关系写入存储池中的地址映射表失败,则返回写请求失败响应,并将第一对应关系从内存中的地址映射表中删除。
可选的,写入模块还用于:在内存中的地址映射表中有第一逻辑地址标识对应的第一物理地址标识的情况下,将目标数据写入第一物理地址标识对应的目标存储单元。
可选的,该装置还用包括:
接收模块,用于接收回收请求,回收请求中包括:第二逻辑地址标识,回收请求是在用户删除第二逻辑地址标识对应的存储单元中的数据后触发的;
瘦分配簇回收模块,用于获取第二逻辑地址标识对应的第二物理地址标识,擦除第二物理地址标识对应的存储单元的数据;
元数据存储模块还用于:删除存储池中的地址映射表中的第二逻辑地址标识和第二物理地址标识的第二对应关系;删除内存中的地址映射表中的第二对应关系。
可选的,该装置还包括:
空间管理模块,用于当检测到分配的总逻辑地址对应的存储空间大于存储池的总存储空间时,输出超分配告警。
可选的,元数据存储模块还用于:若分配位图丢失,扫描存储池中的地址映射表,生成分配位图。
第三方面,本公开提供一种电子设备,包括:处理器,处理器用于执行存储于存储器的计算机程序,处理器执行计算机程序时实现如上述第一方面的存储空间的管理方法。
第四方面,本公开提供一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现如上述第一方面的存储空间的管理方法。
第五方面,本公开提供一种计算机程序产品,当计算机程序产品在计算机上运行时,使得计算机执行如上述第一方面的存储空间的管理方法。
本发明实施例提供的技术方案中,通过在存储空间缓存中记录多个候选存储单元对应的候选物理地址标识,候选存储单元为干净存储单元,从而在确定对第一逻辑地址标识分配存储空间,从存储空间缓存中获取第一物理地址标识,建立第一逻辑地址标识和第一物理地址标识的第一对应关系,将第一对应关系写入内存中的地址映射表,并将第一对应关系写入存储池中的地址映射表。从而使得分配的第一物理地址对应的存储单元均为干净存储单元,提高了数据存储的安全性。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。
为了更清楚地说明本公开实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本公开提供的一种存储空间的管理***的架构示意图;
图2为本公开提供的一种存储空间的管理方法的流程示意图;
图3为本公开提供的一种逻辑地址到物理地址的映射关系示意图;
图4为本公开提供的另一种存储空间的管理方法的流程示意图;
图5为本公开提供的一种分配位图的示意图;
图6为本公开提供的另一种存储空间的管理方法的流程示意图;
图7为本公开提供的另一种存储空间的管理方法的流程示意图;
图8为本公开提供一种存储空间的管理装置的结构示意图;
图9为本公开提供的另一种存储空间的管理***的结构示意图。
具体实施方式
为了能够更清楚地理解本公开的上述目的、特征和优点,下面将对本公开的方案进行进一步描述。需要说明的是,在不冲突的情况下,本公开的实施例及实施例中的特征可以相互组合。
在下面的描述中阐述了很多具体细节以便于充分理解本公开,但本公开还可以采用其他不同于在此描述的方式来实施;显然,说明书中的实施例只是本公开的一部分实施例,而不是全部的实施例。
为提高数据中心的物理存储空间,即物理磁盘,的利用率,在数据中心中,可以将物理存储空间进行池化,从而在存储空间分配的过程中,先按照用户规划和请求的容量预先分配逻辑存储空间,在用户实际使用的过程中,按照用户实际使用量分配相应的物理存储空间,这种方式也可以称为瘦分配。
然而,在物理存储空间分配的过程中,对于分配出去的物理存储空间进行回收时,未能进行安全擦除处理,即回收的物理存储空间可能包含了前置用户的遗留数据,也即物理存储空间中存储了脏数据。例如,在数据中心的物理存储空间中,A用户使用了一部分物理存储空间后不再使用,对该部分物理存储空间进行回收,回收时未能完全擦除其上A用户的数据,则将该部分物理存储空间再分配时,假设分配给了B用户,则B用户可以读取到未完全擦除的A用户的数据,从而将带来数据安全的问题,使得数据存储的安全性不高。
为解决上述技术问题,本公开提供了一种存储空间的管理方法,应用于存储空间的管理***中。
请参见图1,图1为本公开提供的一种存储空间的管理***的架构示意图,存储空间的管理***可以包括:读写设备11、存储空间的管理设备12和存储池13。
读写设备11可以为块设备或者文件管理***等。
存储空间的管理设备12用于实现对存储池13的管理,存储空间的管理设备12可以为服务器或者计算机等设备,本公开不做限定。
存储池13为数据存储的物理存储空间。存储池13可以包含一个或多个物理磁盘,是将物理磁盘进行池化得到的,存储池13也可以称为存储资源池、资源池、物理存储空间或者物理磁盘等。
将存储池13按照簇进行划分,得到多个存储单元。其中,簇为存储空间分配的最小单位,即每个簇只允许一个文件使用,不允许一个或一个以上的文件使用同一个簇。可以预先设置簇的大小,例如,可以为512KB,划分得到的每个存储单元的大小为簇的大小。
存储池13中存储的数据包含元数据和用户数据。其中,元数据用于记录存储空间的分配情况,用户数据为用户存储的数据,例如,可以为***文件数据或者其他的数据等。
其中,元数据可以包括存储池元数据和用户元数据。
存储池元数据包括但不限于存储空间的配置信息和元数据空间分配信息等。其中,存储空间的配置信息可以包括簇大小,是否开启瘦分配,存储池唯一标识符等信息。
用户元数据用于记录用户申请空间的分配情况,其中可以包括但不限于地址映射表。地址映射表用于存储逻辑地址与物理地址的映射关系。已知逻辑地址,根据地址映射表可以确定其对应的物理地址,从而实现数据的写入或者读取等操作。
其中,存储池13中存储地址映射表,可以在存储空间的管理设备12的***开启时,将存储池13中的地址映射表缓存在内存中,则内存中也存储有地址映射表。在对存储空间进行管理时,基于内存中的地址映射表进行相应的操作,这样能够保证地址转换和空间分配的高效性。同时,在更新了内存中的地址映射表以后,需要相应更新存储池13中的地址映射表,做到实时更新存储池13中的地址映射表,其中,更新存储池13中的地址映射表的操作也可以称为落盘。这样,在***掉电或宕机等异常情况下,内存中的地址映射表可能会丢失,但是存储池13中的地址映射表保存了映射关系。
示例性的,上述存储空间的存储数据的分配使得元数据占存储空间的比例小,即元数据的空间消耗比率低。下面以物理地址需要8B来记录,存储单元的大小是512KB为例进行说明。主要的元数据占比约为8B/512KB≈0.015/1000。假设元数据是按照4KB的元数据页为分配单位进行存储,在极端的情况,即一个元数据页只包含一个存储单元的情况下,元数据的空间占比为4KB/512KB≈0.0078,即约千分之八的空间用作元数据,元数据空间消耗比率非常小,远小于现有的文件***,例如,ext4等posix文件***(大约4%)的元数据空间消耗比率。
下面结合图1介绍本公开的一种应用场景。当读写设备11需要请求分配存储池13中的存储空间时,读写设备11向存储空间的管理设备12发送存储空间分配请求,存储空间的管理设备12根据存储空间分配请求中包含的所需存储空间的大小,从存储池13中分配相应大小的干净存储单元,读写设备11可以使用该干净存储单元进行数据的写入或者读出等操作。从而完成了存储空间的分配。使得从存储池13分配出去的存储单元均为干净的存储单元,从而提高了数据存储的安全性。
下面以具体的实施例说明本公开的技术方案。
请参见图2,图2为本公开提供的一种存储空间的管理方法的流程示意图,本实施例由上述图1所示的存储空间的管理设备执行。本实施例提供的方法如下:
S201、确定对第一逻辑地址标识分配存储空间。
读写设备可以向存储空间的管理设备发送存储空间分配请求,请求分配第一逻辑地址标识对应的物理存储空间,即物理地址。其中,存储空间分配请求中包含第一逻辑地址标识。存储空间分配请求用于请求根据第一逻辑地址标识分配物理地址。
读写设备也可以向存储空间的管理设备发送包含第一逻辑地址标识的写入请求,从而在存储空间的管理设备确定当前对于第一逻辑地址标识并未分配物理存储空间时,需要对第一逻辑地址标识分配存储空间。该读写设备可以为上述图1所示的读写设备11。
其中,第一逻辑地址标识中可以包含第一逻辑地址和逻辑地址长度,例如,逻辑地址空间可以按照簇进行划分,第一逻辑地址表示可以为一个二维的逻辑地址空间(lba,len),lba表示第lba个逻辑单元,len表示获取的逻辑地址的长度。
S202、从存储空间缓存中获取第一物理地址标识。
根据第一逻辑地址标识,确定所需的存储空间的大小,即确定所需的存储单元的数量,根据确定的存储单元的数量,从存储空间缓存中获取多个候选存储单元对应的候选物理地址标识。
其中,存储空间缓存记录有多个候选存储单元对应的候选物理地址标识,候选存储单元均为干净存储单元。干净存储单元也可以称为空白存储单元,为没有存储数据的存储单元,例如,在读取干净存储单元时,读取出的数据为“0”。多个候选存储单元对应的候选物理地址标识可以以表格的形式存储,可以称为零缓存表。
S203、建立第一逻辑地址标识和第一物理地址标识的第一对应关系。
S204、将第一对应关系写入内存中的地址映射表。
S205、将第一对应关系写入存储池中的地址映射表。
内存中的地址映射表和存储池中的地址映射表的结构和存储的内容相同,由于内存中的地址映射表存储在内存中,在更新、查找逻辑地址与物理地址的对应关系时,直接使用内存中的地址映射表即可,当在内存中对内存中的地址映射表进行更改以后,需要相应更改存储在存储池中的地址映射表。建立第一逻辑地址标识和分配的第一物理地址标识的第一对应关系,将第一对应关系写入内存中的地址映射表,并将第一对应关系写入存储池中的地址映射表中。
请参见图3,图3为本公开提供的一种逻辑地址到物理地址的映射关系示意图。地址映射表301示例性示出了逻辑地址到物理地址的映射关系,其中,地址映射表301可以为上述内存中的地址映射表或存储池中的地址映射表,用户数据存放的逻辑地址302可以通过对应的地址映射表301找到其物理地址,从而获取到物理地址对应的存储空间存放的数据。例如,图3中,0逻辑地址映射到了2物理地址,1逻辑地址没有存储数据,存储的数据为“0”,2逻辑地址没有存储数据,存储的数据为“0”,3逻辑地址映射到了4物理地址。
需要说明的是,图3示例性示出在地址映射表301中“0”表示该地址存储的数据为空,实际读取该地址的数据时,返回“0”即可。在另外一些实施例中,在地址映射表301中,“0”也可以表示0物理地址。
本实施例,通过在存储空间缓存中记录多个候选存储单元对应的候选物理地址标识,候选存储单元为干净存储单元,从而在确定对第一逻辑地址标识分配存储空间,从存储空间缓存中获取第一物理地址标识,建立第一逻辑地址标识和第一物理地址标识的第一对应关系,将第一对应关系写入内存中的地址映射表,并将第一对应关系写入存储池中的地址映射表。从而使得分配的第一物理地址对应的存储单元均为干净存储单元,提高了数据存储的安全性。
在上述实施例的基础上,进一步地,内存中还可以存储分配位图,分配位图用于记录当前存储空间中包含的所有存储单元的分配情况,即每个存储单元是否已经被分配。则可以从分配位图中获取未被分配的存储单元,进行擦除处理以后,将其物理地址标识存储在存储空间缓存中,这样就保证了存储空间缓存中存储的候选物理地址标识对应的候选存储单元均为干净存储单元。下面以图3所示的具体的实施例进行说明。
请参见图4,图4为本公开提供的另一种存储空间的管理方法的流程示意图,图4是在图2所示实施例的基础上,进一步地,执行S202之前还可以执行如下步骤S401-S403:
S401、根据分配位图,从未被分配的存储单元的物理地址标识中获取候选物理地址标识。
从分配位图中获取目标数量的未被分配的存储单元,即为候选存储单元,获取该目标数量的存储单元对应的物理地址标识即为候选物理地址标识。
其中,分配位图的每一位对应一个存储单元,每一位的值用于指示所对应的存储单元已被分配或者未被分配。示例性的,可以按照存储单元的物理地址顺序依次对存储单元的分配情况进行记录,得到分配位图。其中,每一位的值可以用预设的值表示存储单元已被分配或者未被分配。
请参见图5,图5为本公开提供的一种分配位图的示意图,可以用“1”表示该存储单元已被分配,用“0”表示该存储单元未被分配,读取用“0”表示的存储单元时,可以返回“0”。
S402、对候选物理地址标识对应的候选存储单元进行擦除处理,以使候选存储单元为干净存储单元。
对候选物理地址标识对应的候选存储单元进行擦除处理,以使候选存储单元为干净存储单元。
其中,擦除处理可以为硬件提供的擦除(discard)功能,也可以为清零(writezero)操作。
使用硬件提供的擦除功能,可以使得存储单元的擦除速度更快,提高擦除效率。
S403、将候选物理地址标识添加至存储空间缓存中。
可选的,可以设置第一阈值,实时检测存储空间缓存中存储的候选存储单元的数量,当存储空间缓存中存储的候选存储单元的数量小于第一阈值时,即执行上述S401-S403的步骤,以使存储空间缓存中的候选存储单元的数量大于或等于第一阈值。
本实施例,根据分配位图,从未被分配的存储单元的物理地址标识中获取候选物理地址标识,对候选物理地址标识对应的候选存储单元进行擦除处理,以使候选存储单元为干净存储单元,将候选物理地址标识添加至存储空间缓存中,保证了存储空间缓存中存储的候选物理地址标识对应的候选存储单元均为干净存储单元,从而在分配存储空间时,从存储空间缓存获取候选存储单元进行分配,保证了分配的存储空间均为干净的,从而提高了数据存储的安全性。
在图4所示实施例的基础上,进一步地,在执行S205之后还可以执行如下步骤:
更新分配位图。
在每次完成了存储空间的分配以后,将分配位图中本次分配出去的存储单元的相应位更新为已分配。
本实施例,通过在完成了存储空间的分配以后,更新分配位图,使得分配位图中准确记录存储单元的分配情况。从而避免了从分配位图中获取未分配的存储单元进行擦除处理时,将已经分配的存储单元获取到并将其中存储的数据误擦除。
在上述实施例的基础上,进一步地,对存储空间进行管理还涉及到数据的写入、读取和/或回收等操作。
在写入目标数据的场景中,若如上述实施例的方法,已经分配了对应的存储单元,则直接在存储空间写入数据即可。
若未分配对应的存储单元,则需要分配对应的存储单元,将元数据(即逻辑地址和物理地址的对应关系)写入存储池中的地址映射表,向对应的存储单元写入数据。
现有技术中,在分配数据时,可以直接从分配位图中获取未被分配的存储单元,需要先向存储池写入相应的元数据,在元数据写入成功以后,再向物理磁盘中的存储单元中写入目标数据。这样将避免元数据写入失败而目标数据写入成功所带来的脏数据的问题,然而,这样使得用户数据的写入效率不高。
本公开提供的存储空间的管理方法,元数据和用户数据同时写入存储池。下面以图6所示的实施例说明。
请参见图6,图6为本公开提供的另一种存储空间的管理方法的流程示意图,图6是在图2或图4所示实施例的基础上,进一步地,S201可以包括如下步骤S2011-S2014,相应的,S205可以包括S2051:
S2011、接收写入请求。
存储空间的管理设备接收读写设备发送的写入请求,读写设备可以为上述图1所示的读写设备11。其中,写入请求中包含目标数据和第一逻辑地址标识。写入请求用于请求将目标数据写入第一逻辑地址标识对应的存储单元中。
S2012、查找内存中的地址映射表。
S2013、判断内存中的地址映射表中是否存储第一逻辑地址标识对应的第一物理地址标识。
存储空间的管理设备查找内存中存储的内存中的地址映射表,并判断内存中的地址映射表中是否存储了第一逻辑地址标识对应的第一物理地址标识。
在内存中的地址映射表中没有第一逻辑地址标识对应的第一物理地址标识的情况下,说明之前没有为第一逻辑地址分配第一物理地址标识,继续执行S2014。
可选的,在内存中的地址映射表中有第一逻辑地址标识对应的第一物理地址标识的情况下,说明之前已经为第一逻辑地址分配了第一物理地址标识,则继续执行S2015。
S2014、确定对第一逻辑地址标识分配存储空间。
进一步地,将分配位图中的第一物理地址标识对应的存储单元的分配情况更新为已分配。
S2051、同时将目标数据写入第一物理地址标识对应的存储单元和将第一对应关系写入存储池中的地址映射表。
同时将第一对应关系和目标数据写入物理磁盘,实现数据落盘。例如,可以通过一个批次同时写入物理磁盘。
S2015、将目标数据写入第一物理地址标识对应的存储单元。
本实施例,对于物理磁盘的存储单元即使存储了脏数据,由于在存储空间缓存中存储了干净的存储单元,分配存储单元时从存储空间缓存中获取干净存储单元,保证每次分配出去的存储单元均为干净存储单元,因此,在目标数据写入物理磁盘时,可以同时完成第一对应关系和目标数据的写入操作,与分别进行两次写入的流程相比,减少了一半的磁盘写入时延,提高了写入效率。
在图6所示实施例的基础上,进一步地,S2051同时将第一对应关系和目标数据写入存储池的操作,得到的操作结果(写入是否成功)涉及到如下四种情况,本实施例示例性的给出了四种情况下的后续处理步骤:
情况一:目标数据写入目标存储单元成功,且第一对应关系写入存储池中的地址映射表成功。
第一对应关系和目标数据均写入存储池成功的情况下,可以返回写请求成功响应,其中,写请求成功响应用于指示目标数据写入存储池成功。
情况二:目标数据写入目标存储单元成功,且第一对应关系写入存储池中的地址映射表失败。
在目标数据写入存储池成功,而第一对应关系写入存储池失败的情况下,由于目标数据写入存储池失败,则可以返回写请求失败响应。其中,写请求失败响应用于指示目标数据写入存储池失败。由于即使目标数据写入存储池成功,但是第一对应关系写入存储池中的地址映射表失败,则在之后寻址时,由于没有存储第一对应关系,则依然无法读取到目标数据。且存储池中的地址映射表需要和内存中的地址映射表保持一致,落盘失败则需要将第一对应关系从内存中的地址映射表中删除。
需要说明的是,情况二中,无需将写入成功的目标数据从目标存储单元中删除。由于第一对应关系未写入,而目标数据写入目标存储单元成功,则写入目标数据的目标存储单元成为了脏数据,此时并不会带来数据安全问题,因为本公开在存储空间缓存获取存储单元时,对存储单元进行了擦除处理,在分配存储单元时,从存储空间缓存中获取干净的存储单元进行分配,因此,分配出去的存储单元均为干净存储单元。
进一步地,也要回退分配位图中的目标存储单元对应位的值为未分配,即将分配位图中的目标存储单元的分配情况更新为未分配。
情况三:目标数据写入目标存储单元失败,且第一对应关系写入存储池中的地址映射表成功。
第一对应关系写入成功,而目标数据写入失败,则返回写请求失败响应。
需要说明的是,情况三中,无需将第一对应关系从存储池中的地址映射表和内存中的地址映射表中删除。由于第一对应关系在内存和存储池中均写入成功,则说明存储单元分配成功,而目标数据未写入成功,在这时候,一种可能的情况中,由于返回了写请求失败响应,用户可以尝试再重新写入目标数据,此时写入时,在S603步骤中,确定已经分配了对应的存储单元,则继续执行S607即可。返回了写请求失败响应以后,用户并未重新写入目标数据,而之后如果想读取该目标数据时,由于并未写入目标数据,读出的数据为“0”。
情况四:目标数据写入目标存储单元失败,且第一对应关系写入存储池中的地址映射表失败。
第一对应关系和目标数据均写入失败,则可以返回写请求失败响应,并将第一对应关系从内存中的地址映射表中删除。
进一步地,同时也要回退分配位图中的目标存储单元对应位的值为未分配,即将分配位图中的目标存储单元的分配情况更新为未分配。
本实施例,在四种写入操作结果中,给出了相应的处理方式,对于同时对目标数据和第一对应关系落盘,可能造成的存储单元存储了脏数据的情况,通过在每次分配存储单元时从存储空间缓存中获取干净存储单元,避免了数据安全的问题。在写入失败时无需特殊的错误处理流程,提高了处理效率,且在元数据写入失败时,只需要在内存中回退内存中的地址映射表,进一步提高了处理效率。
在另外一些实施例中,在数据回收的场景中,现有技术中并不进行存储单元的回收,或者,存储单元的回收操作没有进行完全的擦除处理,从而使得存储池的空间无法再分配。本实施例提供的存储空间的管理方法,可以在用户删除文件***的文件数据时,及时对存储单元进行擦除操作,并更新相应的元数据。下面以图7所示的具体的实施例进行说明。
请参见图7,图7为本公开提供的另一种存储空间的管理方法的流程示意图,图7是在图2、图4或图6所示实施例的基础上,进一步地,本实施例提供的方法还包括如下步骤:
S701、接收回收请求。
存储空间的管理设备接收读写设备发送的回收请求。其中,读写设备可以为上述图1所示的读写设备11。
其中,回收请求中包括:第二逻辑地址标识,回收请求是在用户删除第二逻辑地址标识对应的存储单元中的数据后触发的。
S702、获取第二逻辑地址标识对应的第二物理地址标识,擦除第二物理地址标识对应的存储单元的数据。
可以从内存中的地址映射表中快速查找到第二逻辑地址标识对应的第二物理地址标识,对第二物理地址标识对应的存储单元的数据进行擦除处理。
其中,擦除处理可以为硬件提供的擦除(discard)功能,也可以为清零(writezero)操作。其中,利用硬件提供的discard的支持,擦除速度更快,保证了批量回收(例如,用户删除卷的操作)的实时高效性。
进一步地,擦除处理可以是批量提交的,任何存储单元擦除失败,返回空间回收失败响应。
S703、删除存储池中的地址映射表中的第二逻辑地址标识和第二物理地址标识的第二对应关系。
S704、删除内存中的地址映射表中的第二对应关系。
存储单元中的数据删除以后,要删除存储池中的地址映射表中存储的对应关系,在第一对应关系删除成功以后,在更新内存中的地址映射表。
进一步地,更新分配位图中的第二物理地址标识对应位的值为未分配,即将分配位图中的第二物理地址标识对应的存储单元的分配情况更新为未分配。
需要说明的是,S701-S704、S201-S205的执行没有先后顺序,例如,可以先执行S701-S704,再执行S201-S205,也可以先执行S201-S205,再执行S701-S704,还可以同时执行S701-S704与S201-S205,本公开对此不做限定。
本实施例,通过在接收到用户触发的回收请求以后,获取第二逻辑地址标识对应的第二物理地址标识,擦除第二物理地址标识对应的存储单元的数据,删除存储池中的地址映射表中的第二逻辑地址标识和第二物理地址标识的第二对应关系,删除内存中的地址映射表中的第二对应关系。从而在用户触发回收存储单元时,及时对存储单元进行回收,使得释放的存储单元可以用于存储其他数据,提高了存储空间的利用率。
在图7所示实施例的基础上,进一步地,在步骤S703中,如果删除存储池中的地址映射表中的第二对应关系失败,则可以直接返回空间回收失败响应。需要说明的是,因为用户下发的回收请求中第二逻辑地址标识对应的存储单元中存储的是废弃的数据,则存储空间成功进行了擦除,元数据并未删除,也是符合语义的,则无需对删除了的第二逻辑地址标识对应的存储单元中存储的进行恢复,即无需回退处理。
在步骤S703中,如果删除存储池中的地址映射表中的第二对应关系成功,则可以安全地更新缓存中的分配位图和内存中的地址映射表,可以返回回收成功响应。
需要说明的是,假设8B的存储空间可以标识一个逻辑地址到物理地址的映射关系,更新一个元数据页(假设为4KB),就可以完成512个存储单元(假设一个存储单元的大小为512KB)的地址映射条目的更新,对应于256MB的存储空间的回收。计算可知,回收1GB的空间只需要向存储池中写入16KB的数据。回收1TB的空间也只需要向存储池中写入16MB的数据。由上述计算可知,数据回收效率更高。
在另外一些实施例中,进一步地,在数据读取的场景中,本实施例提供的方法还包括如下步骤:
步骤1、接收读取请求,其中,读取请求中包含第四逻辑地址标识,读取请求用于指示获取第四逻辑地址标识对应的存储单元中的数据。
步骤2、查找内存中的地址映射表。
步骤3、判断内存中的地址映射表中是否存储了第四逻辑地址标识对应的第四物理地址标识。
存储空间的管理设备查找内存中存储的内存中的地址映射表,并判断内存中的地址映射表中是否存储了第四逻辑地址标识对应的第四物理地址标识。
在内存中的地址映射表中没有第四逻辑地址标识对应的第四物理地址标识的情况下,说明之前没有为第四逻辑地址分配第四物理地址标识,则直接返回0数据。
在内存中的地址映射表中有第四逻辑地址标识对应的第四物理地址标识的情况下,说明之前已经为第四逻辑地址分配了第四物理地址标识,继续执行步骤4。
步骤4、根据查询到的第四物理地址标识,从第四物理地址标识对应的存储单元中获取数据,并返回获取到的数据。
需要说明的是,上述步骤1-步骤4、S701-S704与S201-S204的执行没有先后顺序,例如,可以先执行步骤1-步骤4,再执行S201-S205,也可以先执行S201-S205,再执行步骤1-步骤4,还可以同时执行步骤1-步骤4与S201-S205,本公开对此不做限定。
本实施例,通过在接收到读取请求时,根据第四逻辑地址标识读取到对应的数据,从而使得存储空间的管理方案更完整。
在上述实施例的基础上,进一步地,在超分配场景下,即分配的总逻辑地址对应的存储空间大于存储池的总存储空间,例如,实际的存储池的存储空间的大小为1T,若此时分配的逻辑地址对应的存储空间为2T,此时用户均对分配的存储空间进行写入操作,则此时将造成存储池的存储空间不够的情况,即出现了超分配。为解决超分配可能带来的上述技术问题,本实施例提供的方法还包括如下步骤:
当检测到分配的总逻辑地址对应的存储空间大于存储池的总存储空间,输出超分配告警。
可以实时检测分配的总逻辑地址对应的存储空间的大小,当间检测到分配的总逻辑地址对应的存储空间大于存储池的总存储空间时,即为超分配情况,可以输出超分配告警。
本实施例,通过检测到分配的总逻辑地址对应的存储空间大于存储池的总存储空间,输出超分配告警,在超分配情况下及时提醒进行处理。
进一步地,输出超分配告警之后,可以对存储池中存储的数据进行迁移操作。
示例性的,针对同一个用户存储的数据存储在第一存储节点的情况,可以将其不同数据页存储在不同的存储节点,其中,不同的目标节点的故障率小于预设阈值,从而使得在某个存储节点宕机等异常情况造成了数据丢失的情况下,用户其他存储节点的数据并未丢失,从而使得在异常情况下,不会影响用户的所有数据。
在上述实施例中,进一步地,本实施的方法还可以包括如下步骤:
若分配位图丢失,扫描存储池中的地址映射表,生成分配位图。
分配位图缓存在内存中,只在正常关闭存储池时,会更新到存储池中,使得分配和回收的处理速度更快。若由于***宕机等原因造成的分配位图丢失,可以通过扫描存储于存储池中的地址映射表,生成分配位图。
本实施例的方法,若分配位图丢失,扫描存储池中的地址映射表,可以快速生成分配位图,从而使得无需将分配位图实时更新到存储池中,减少IO关键路径上的时延,且避免了频繁更新存储池中的分配位图造成的处理资源消耗。
请参见图8,图8为本公开提供一种存储空间的管理装置的结构示意图,本实施例提供的装置包括:
处理模块801,用于确定对第一逻辑地址标识分配存储空间;
瘦分配模块802,用于从存储空间缓存中获取第一物理地址标识,其中,存储空间缓存记录有多个候选存储单元对应的候选物理地址标识,候选存储单元均为干净存储单元;
元数据存储模块803,用于建立第一逻辑地址标识和第一物理地址标识的第一对应关系,将第一对应关系写入内存中的地址映射表,并将第一对应关系写入存储池中的地址映射表。
可选的,瘦分配模块802还用于:根据分配位图,从未被分配的存储单元的物理地址标识中获取候选物理地址标识,其中,分配位图的每一位对应一个存储单元,每一位的值用于指示所对应的存储单元已被分配或者未被分配;对候选物理地址标识对应的候选存储单元进行擦除处理,以使候选存储单元为干净存储单元;将候选物理地址标识添加至存储空间缓存中。
可选的,元数据存储模块803还用于:更新分配位图。
可选的,处理模块801具体用于:
接收写入请求,写入请求中包含目标数据和逻辑地址标识;
查找内存中的地址映射表;
在内存中的地址映射表中没有逻辑地址标识对应的物理地址标识的情况下,则确定对第一逻辑地址标识分配存储空间;
元数据存储模块803具体用于:
同时将目标数据写入第一物理地址标识对应的目标存储单元和将第一对应关系写入存储池中的地址映射表。
可选的,元数据存储模块803还用于:
若目标数据写入目标存储单元成功,且第一对应关系写入存储池中的地址映射表成功,则返回写请求成功响应;
若目标数据写入目标存储单元成功,且第一对应关系写入存储池中的地址映射表失败,则返回写请求失败响应,并将第一对应关系从内存中的地址映射表中删除;
若目标数据写入目标存储单元失败,且第一对应关系写入存储池中的地址映射表成功,则返回写请求失败响应;
若目标数据写入目标存储单元失败,且第一对应关系写入第二地址映射失败,则返回写请求失败响应,并将第一对应关系从内存中的地址映射表中删除。
可选的,写入模块还用于:在内存中的地址映射表中有第一逻辑地址标识对应的第一物理地址标识的情况下,将目标数据写入第一物理地址标识对应的目标存储单元。
可选的,处理模块801还用于:接收回收请求,回收请求中包括:第二逻辑地址标识,回收请求是在用户删除第二逻辑地址标识对应的存储单元中的数据后触发的;
该装置还包括:
瘦分配簇回收模块,用于获取第二逻辑地址标识对应的第二物理地址标识,擦除第二物理地址标识对应的存储单元的数据;
元数据存储模块803还用于:删除存储池中的地址映射表中的第二逻辑地址标识和第二物理地址标识的第二对应关系;删除内存中的地址映射表中的第二对应关系。
可选的,该装置还包括:
空间管理模块,用于当检测到分配的总逻辑地址对应的存储空间大于存储池的总存储空间时,输出超分配告警。
可选的,元数据存储模块803还用于:若分配位图丢失,扫描存储池中的地址映射表,生成分配位图。
上述实施例的装置,可以用于执行上述方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。
下面以图9所示的存储空间的管理的***为例进行说明。请参见图9,图9为本公开提供的另一种存储空间的管理***的结构示意图。图9是在图1所示***的基础上,进一步地,存储空间的管理设备12包括:元数据存储模块121、瘦分配模块122、瘦分配簇回收模块123和空间管理模块124。
读写设备11,用于向存储空间的管理装置发送用户的读写以及空间释放请求,读写设备11可以为一个块设备或其上层的文件***。
元数据存储模块121,用于对存储池化***管理的元数据进行管理,这些元数据缓存在内存中,作用于在用户IO的关键路径上,用于缓存用户逻辑块到物理块的地址映射表。元数据存储模块121可以包括:内存中的地址映射表和分配位图。元数据存储模块121在更改内存中的地址映射表以后,相应更改存储池13中的存储池中的地址映射表。
其中,内存中的地址映射表用于从逻辑地址到物理地址的转换。分配位图用于记录存储池的存储单元的分配情况。
元数据存储模块121可以为图8所示实施例中的元数据存储模块803。
瘦分配模块122用于分配存储单元(簇)。瘦分配模块122可以包括:存储空间缓存分配器和存储空间缓存。
其中,存储空间缓存分配器用于通过与元数据存储模块121中的分配位图交互,从而完成对存储单元的分配。存储空间缓存中缓存了一定数量的干净存储单元,存储空间缓存分配器在瘦分配簇回收模块123中的擦除子模块异常的情况下,能确保分配出去的存储单元是无任何脏数据的存储单元。
瘦分配簇回收模块123用于回收存储单元,在读写设备11发送文件***做删除操作(trim)或者块设备删除操作(discard)请求时,瘦分配簇回收模块123能利用磁盘硬件技术快速的抹除回收空间的数据,起到安全擦除的目的。极端情况下(服务器异常掉电等),回收的存储单元没有完成数据擦除,瘦分配模块122中的存储空间缓存的安全分配机制,可以保证再次分配出去的存储单元,无前置用户的数据保留。
空间管理模块124用于存储池的空间告警和处理,在空间占比较高时输出告警,并在超过设置的预设阈值时,做自动的数据页迁移,配合客户端将部分用户的已分配空间和数据迁移到其它节点上。
本公开提供一种电子设备,包括:处理器,处理器用于执行存储于存储器的计算机程序,处理器执行计算机程序时实现如上述方法实施例的存储空间的管理方法。
上述实施例的设备,可以用于执行上述方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。
本公开提供一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现如上述方法实施例的存储空间的管理方法。
本公开提供一种计算机程序产品,当计算机程序产品在计算机上运行时,使得计算机执行如上述方法实施例的存储空间的管理方法。
需要说明的是,在本文中,诸如“第一”和“第二”等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上仅是本公开的具体实施方式,使本领域技术人员能够理解或实现本公开。对这些实施例的多种修改对本领域的技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本公开的精神或范围的情况下,在其它实施例中实现。因此,本公开将不会被限制于本文的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
Claims (13)
1.一种存储空间的管理方法,其特征在于,包括:
确定对第一逻辑地址标识分配存储空间;
从存储空间缓存中获取第一物理地址标识,其中,所述存储空间缓存记录有多个候选存储单元对应的候选物理地址标识,所述候选存储单元均为干净存储单元;
建立所述第一逻辑地址标识和所述第一物理地址标识的第一对应关系,将所述第一对应关系写入内存中的地址映射表,并将所述第一对应关系写入存储池中的地址映射表。
2.根据权利要求1所述的方法,其特征在于,所述从存储空间缓存中获取第一物理地址标识之前,还包括:
根据分配位图,从未被分配的存储单元的物理地址标识中获取候选物理地址标识,其中,所述分配位图的每一位对应一个存储单元,所述每一位的值用于指示所对应的存储单元已被分配或者未被分配;
对所述候选物理地址标识对应的候选存储单元进行擦除处理,以使所述候选存储单元为干净存储单元;
将所述候选物理地址标识添加至所述存储空间缓存中。
3.根据权利要求2所述的方法,其特征在于,所述方法还包括:
更新所述分配位图。
4.根据权利要求1-3任一项所述的方法,其特征在于,所述确定对第一逻辑地址标识分配存储空间,包括:
接收写入请求,所述写入请求中包含目标数据和逻辑地址标识;
查找所述内存中的地址映射表;
在所述内存中的地址映射表中没有所述逻辑地址标识对应的物理地址标识的情况下,则确定对第一逻辑地址标识分配存储空间;
所述将所述第一对应关系写入存储池中的地址映射表,包括:
同时将所述目标数据写入所述第一物理地址标识对应的目标存储单元和将所述第一对应关系写入所述存储池中的地址映射表。
5.根据权利要求4所述的方法,其特征在于,所述方法还包括:
若所述目标数据写入所述目标存储单元成功,且所述第一对应关系写入所述存储池中的地址映射表成功,则返回写请求成功响应;
若所述目标数据写入所述目标存储单元成功,且所述第一对应关系写入所述存储池中的地址映射表失败,则返回写请求失败响应,并将所述第一对应关系从所述内存中的地址映射表中删除;
若所述目标数据写入所述目标存储单元失败,且所述第一对应关系写入所述存储池中的地址映射表成功,则返回写请求失败响应;
若所述目标数据写入所述目标存储单元失败,且所述第一对应关系写入所述存储池中的地址映射表失败,则返回写请求失败响应,并将所述第一对应关系从所述内存中的地址映射表中删除。
6.根据权利要求4所述的方法,其特征在于,所述方法还包括:
在所述内存中的地址映射表中有所述第一逻辑地址标识对应的第一物理地址标识的情况下,将所述目标数据写入所述第一物理地址标识对应的目标存储单元。
7.根据权利要求1-3任一项所述的方法,其特征在于,还包括:
接收回收请求,所述回收请求中包括:第二逻辑地址标识,所述回收请求是在用户删除所述第二逻辑地址标识对应的存储单元中的数据后触发的;
获取所述第二逻辑地址标识对应的第二物理地址标识,擦除所述第二物理地址标识对应的存储单元的数据;
删除所述存储池中的地址映射表中的所述第二逻辑地址标识和所述第二物理地址标识的第二对应关系;
删除所述内存中的地址映射表中的所述第二对应关系。
8.根据权利要求1-3任一项所述的方法,其特征在于,所述方法还包括:
当检测到分配的总逻辑地址对应的存储空间大于存储池的总存储空间,输出超分配告警。
9.根据权利要求2或3所述的方法,其特征在于,所述方法还包括:
若所述分配位图丢失,扫描所述存储池中的地址映射表,生成所述分配位图。
10.一种存储空间的管理装置,其特征在于,包括:
处理模块,用于确定对第一逻辑地址标识分配存储空间;
瘦分配模块,用于从存储空间缓存中获取第一物理地址标识,其中,所述存储空间缓存记录有多个候选存储单元对应的候选物理地址标识,所述候选存储单元均为干净存储单元;
元数据存储模块,用于建立所述第一逻辑地址标识和所述第一物理地址标识的第一对应关系,将所述第一对应关系写入内存中的地址映射表,并将所述第一对应关系写入存储池中的地址映射表。
11.一种电子设备,其特征在于,包括:处理器,所述处理器用于执行存储于存储器的计算机程序,所述处理器执行所述计算机程序时实现权利要求1-9任一项所述的存储空间的管理的方法。
12.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1-9任一项所述的存储空间的管理的方法。
13.一种计算机程序产品,其特征在于,当所述计算机程序产品在计算机上运行时,使得所述计算机执行权利要求1-9任一项所述的存储空间的管理的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110641207.7A CN113254365A (zh) | 2021-06-09 | 2021-06-09 | 存储空间的管理方法、装置、设备、介质和程序产品 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110641207.7A CN113254365A (zh) | 2021-06-09 | 2021-06-09 | 存储空间的管理方法、装置、设备、介质和程序产品 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113254365A true CN113254365A (zh) | 2021-08-13 |
Family
ID=77187333
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110641207.7A Pending CN113254365A (zh) | 2021-06-09 | 2021-06-09 | 存储空间的管理方法、装置、设备、介质和程序产品 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113254365A (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113835645A (zh) * | 2021-11-26 | 2021-12-24 | 深圳市华澜微电子有限公司 | 数据处理方法、装置、设备及存储介质 |
CN114153399A (zh) * | 2021-12-07 | 2022-03-08 | 四川云从天府人工智能科技有限公司 | 存储***的数据存储方法、装置、控制装置和介质 |
CN115599556A (zh) * | 2022-12-07 | 2023-01-13 | 摩尔线程智能科技(北京)有限责任公司(Cn) | 用于管理存储空间的装置及方法、计算设备、芯片 |
CN117687933A (zh) * | 2023-12-20 | 2024-03-12 | 摩尔线程智能科技(北京)有限责任公司 | 存储空间分配方法、装置、设备、存储介质及程序产品 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20180004656A1 (en) * | 2016-06-29 | 2018-01-04 | HGST Netherlands B.V. | Efficient Management of Paged Translation Maps In Memory and Flash |
CN107786599A (zh) * | 2016-08-26 | 2018-03-09 | 北京计算机技术及应用研究所 | 内存云*** |
CN110018998A (zh) * | 2019-04-12 | 2019-07-16 | 深信服科技股份有限公司 | 一种文件管理方法、***及电子设备和存储介质 |
CN110175001A (zh) * | 2019-05-27 | 2019-08-27 | 牧星机器人(江苏)有限公司 | 一种nor-flash数据存储方法、计算机设备及存储介质 |
CN112612418A (zh) * | 2020-12-25 | 2021-04-06 | 航天信息股份有限公司 | 一种用于大容量NandFlash坏块管理的方法及*** |
-
2021
- 2021-06-09 CN CN202110641207.7A patent/CN113254365A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20180004656A1 (en) * | 2016-06-29 | 2018-01-04 | HGST Netherlands B.V. | Efficient Management of Paged Translation Maps In Memory and Flash |
CN107786599A (zh) * | 2016-08-26 | 2018-03-09 | 北京计算机技术及应用研究所 | 内存云*** |
CN110018998A (zh) * | 2019-04-12 | 2019-07-16 | 深信服科技股份有限公司 | 一种文件管理方法、***及电子设备和存储介质 |
CN110175001A (zh) * | 2019-05-27 | 2019-08-27 | 牧星机器人(江苏)有限公司 | 一种nor-flash数据存储方法、计算机设备及存储介质 |
CN112612418A (zh) * | 2020-12-25 | 2021-04-06 | 航天信息股份有限公司 | 一种用于大容量NandFlash坏块管理的方法及*** |
Non-Patent Citations (1)
Title |
---|
袁芳;刘伟;宋贺伦;张耀辉;: "基于时间戳的FTL实现的连续数据恢复方法", 计算机工程与设计, no. 01, 16 January 2015 (2015-01-16), pages 150 - 155 * |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113835645A (zh) * | 2021-11-26 | 2021-12-24 | 深圳市华澜微电子有限公司 | 数据处理方法、装置、设备及存储介质 |
CN114153399A (zh) * | 2021-12-07 | 2022-03-08 | 四川云从天府人工智能科技有限公司 | 存储***的数据存储方法、装置、控制装置和介质 |
CN114153399B (zh) * | 2021-12-07 | 2023-10-20 | 四川云从天府人工智能科技有限公司 | 存储***的数据存储方法、装置、控制装置和介质 |
CN115599556A (zh) * | 2022-12-07 | 2023-01-13 | 摩尔线程智能科技(北京)有限责任公司(Cn) | 用于管理存储空间的装置及方法、计算设备、芯片 |
CN117687933A (zh) * | 2023-12-20 | 2024-03-12 | 摩尔线程智能科技(北京)有限责任公司 | 存储空间分配方法、装置、设备、存储介质及程序产品 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113254365A (zh) | 存储空间的管理方法、装置、设备、介质和程序产品 | |
CN109117084B (zh) | 将逻辑储存块动态地重新调整尺寸 | |
US9081702B2 (en) | Working set swapping using a sequentially ordered swap file | |
US10761731B2 (en) | Array controller, solid state disk, and method for controlling solid state disk to write data | |
US8161240B2 (en) | Cache management | |
US11782632B2 (en) | Selective erasure of data in a SSD | |
CN106502587B (zh) | 硬盘数据管理方法和硬盘控制装置 | |
KR20070060070A (ko) | 최적화된 순차적인 클러스터 관리용 에프에이티 분석 | |
KR20120090965A (ko) | 고체-상태 저장 디바이스 상에서 데이터를 캐싱하는 장치, 시스템, 및 방법 | |
CN110399310A (zh) | 一种存储空间的回收方法及装置 | |
KR20170038853A (ko) | 호스트-관리 비휘발성 메모리 | |
CN108604165A (zh) | 存储装置 | |
CN110968269A (zh) | 基于scm与ssd的键值存储***及读写请求处理方法 | |
EP4372540A1 (en) | Techniques for zoned namespace (zns) storage using multiple zones | |
US20230333779A1 (en) | Memory system with controller to write data to memory based on lifetime information in write command | |
CN111309262B (zh) | 一种分布式存储缓存读取和写入方法 | |
CN110955488A (zh) | 一种持久性内存的虚拟化方法及*** | |
CN108664217B (zh) | 一种降低固态盘存储***写性能抖动的缓存方法及*** | |
CN106294189B (zh) | 内存碎片整理方法及装置 | |
KR101026634B1 (ko) | 하이브리드 플래시 메모리의 데이터 저장 방법 | |
CN109508140B (zh) | 存储资源管理方法、装置、电子设备及电子设备、*** | |
CN115964350A (zh) | 一种文件***管理模型及*** | |
US11429519B2 (en) | System and method for facilitating reduction of latency and mitigation of write amplification in a multi-tenancy storage drive | |
CN109002265A (zh) | 一种数据处理的方法以及相关装置 | |
CN112052217B (zh) | 快照实现方法及装置 |
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 | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20220701 Address after: 100190 1309, 13th floor, building 4, Zijin Digital Park, Haidian District, Beijing Applicant after: Beijing volcano Engine Technology Co.,Ltd. Address before: 100041 B-0035, 2 floor, 3 building, 30 Shixing street, Shijingshan District, Beijing. Applicant before: BEIJING BYTEDANCE NETWORK TECHNOLOGY Co.,Ltd. |
|
TA01 | Transfer of patent application right |