CN110019031A - 一种文件创建方法及文件管理装置 - Google Patents

一种文件创建方法及文件管理装置 Download PDF

Info

Publication number
CN110019031A
CN110019031A CN201710774157.3A CN201710774157A CN110019031A CN 110019031 A CN110019031 A CN 110019031A CN 201710774157 A CN201710774157 A CN 201710774157A CN 110019031 A CN110019031 A CN 110019031A
Authority
CN
China
Prior art keywords
object number
file
maximum
server
distribution
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
Application number
CN201710774157.3A
Other languages
English (en)
Other versions
CN110019031B (zh
Inventor
翁宇佳
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CN201710774157.3A priority Critical patent/CN110019031B/zh
Publication of CN110019031A publication Critical patent/CN110019031A/zh
Application granted granted Critical
Publication of CN110019031B publication Critical patent/CN110019031B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/16File or folder operations, e.g. details of user interfaces specifically adapted to file systems
    • G06F16/162Delete operations
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/16File or folder operations, e.g. details of user interfaces specifically adapted to file systems
    • G06F16/164File meta data generation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/17Details of further file system functions
    • G06F16/172Caching, prefetching or hoarding of files

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (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

一种文件创建方法及文件管理装置
技术领域
本发明实施例涉及计算机存储领域,尤其涉及一种文件创建方法及文件管理装置。
背景技术
在文件系统中,通常通过对象号来标识文件,同时,对象号可以标识文件的元数据的存储区域。因此,文件系统能够通过对象号查找到文件的元数据,进而可以根据文件的元数据查找到文件的真实数据。当创建文件时,需要为文件分配一个对象号,再将文件的元数据的存储在该对象号标识的存储区域中。当删除文件时,需要释放文件的对象号,并删除文件对象号标识的存储区域中所存储的元数据。
现有技术在硬盘中存储一个位图来记录对象号的是否被使用,在创建文件时需要下盘将位图中该对象号的使用情况修改为已使用。可见,创建文件时需要花费时间下盘修改位图中对象号的使用情况,也就意味着需要等待很长时间才能完成文件的创建。因此,就会大大降低文件系统创建文件的速度。
发明内容
本申请提供一种文件创建方法及文件管理装置,能够在创建文件时快速完成对对象号的分配,提高了文件系统创建文件的速度。
为达到上述目的,本申请采用如下技术方案:
第一方面,公开了一种文件创建方法,包括:服务器接收文件创建指令,该指令用于指示服务器创建目标文件;随后从服务器的内存中获取待分配对象号,以及最大可分配对象号;当待分配对象号小于最大可分配对象号时,为目标文件分配目标对象号,目标对象号等于从内存中获取的待分配对象号。另外,目标对象号用于标识目标文件的元数据的存储区域,进一步还可以将目标文件的元数据写入目标对象号所标识的存储区域中。
本发明实施例提供的文件创建方法中,服务器在内存中维护一个待分配对象号、一个最大可分配对象号,在接收到文件创建指令时,可以在内存中获取一个待分配对象号分配给待创建的目标文件,可以快速地实现对象号的分配。相比现有技术需要花费时间去下盘(即访问硬盘)修改位图中记录的对象号的适用情况,大大提高了文件系统创建文件的速度。
结合第一方面,在第一方面的第一种可能的实现方式中,上述方法还包括:当待分配对象号与最大可分配对象号之间的差值小于预设阈值时,则更新最大可分配对象号,更新后的最大可分配对象号与待分配对象号之间的差值大于或等于预设阈值。
实际应用中,如果在确定待分配对象号为目标对象号后不及时地更新最大可分配对象号,假设内存中当前的待分配对象号已经逼近最大可分配对象号,当并发多个文件创建指令等待服务器处理时,有可能就只能处理一部分文件创建指令,然后需要去硬盘增加最大可分配对象号,其余未处理的文件创建指令,只能等待更新最大可分配对象号后再去处理,需要等待较长时间。示例的,内存中当前的待分配对象号为90,最大可分配对象号为100,服务器同时接收15个文件创建指令,但是可以供分配的对象号只有90~100这11个对象号,因此,服务器只能处理这15个文件创建指令中的11个,对于其余的4个文件创建指令需要等待下盘更新最大可分配对象号后才能处理。但是如果在每次分配对象号之前都去判断是否需要更新最大可分配对象号,及时对最大可分配对象号进行更新,避免待分配对象号很接近最大可分配对象号,就不会出现上述情况,在并发大量文件创建请求时,可以处理较多、甚至全部的创建请求,无需等待较长时间,提高了文件系统创建文件的速度。
结合第一方面或以上第一方面的任意一种可能的实现方式,在第一方面的第二种可能的实现方式中,在为目标文件分配目标对象号之后,增加待分配对象号,增加后的待分配对象号用于为目标文件的下一个目标文件分配目标对象号。更具体地,每次增加待分配对象号都是给待分配对象号加1作为新的待分配对象号。
也就是说,当前对象号分配后,通过自增进行更新,可以保证给后续待创建的文件分配的对象号当前没有被使用,避免不同的文件使用相同的对象号造成文件系统数据存储的混乱。
结合第一方面或以上第一方面的任意一种可能的实现方式,在第一方面的第三种可能的实现方式中,具体地,最大可分配对象号还保存在服务器的硬盘中,上述方法还包括:当服务器发生故障后又重新上电时,从硬盘中获取最大可分配对象号,将获取到的最大可分配对象号作为当前待分配对象号保存在服务器的内存中;另外,还可以更新最大可分配对象号,更新后的最大可分配对象号与待分配对象号之间的差值大于预设阈值。
当服务器异常重新上电时,内存中的待分配对象号会丢失,但是硬盘中最大可分配对象号不会丢失,在对已分配对象号没有记录的情况下,只能信任硬盘中的最大可分配对象号,将最大可分配对象号作为当前待分配对象号保存在服务器的内存中,下一次接收文件创建指令时,将这个待分配对象号分配给目标文件,可以保证给目标文件分配的对象号之前未被使用过,避免不同的文件使用相同的对象号。另外,将最大可分配对象号作为当前待分配对象号后更新最大可分配对象号,可以使得待分配对象号不会很接近最大可分配对象号,在并发大量文件创建请求时,可以处理较多、甚至全部的创建请求,无需等待较长时间,提高了文件系统创建文件的速度。
结合第一方面或以上第一方面的任意一种可能的实现方式,在第一方面的第四种可能的实现方式中,上述方法还包括:服务器接收文件删除指令,该指令用于指示服务器删除上述目标文件,该指令携带目标文件的目标对象号;目标对象号用于标识目标文件的元数据的存储区域。进一步,在服务器的内存中的对象号回收表中添加目标对象号,另外,删除目标对象号所标识的存储区域中存储的元数据。
现有技术中,服务器在同一时间不能同时下盘在位图中修改两个对象号的使用情况,因此,当文件创建指令与文件删除指令并行触发时,会导致串行等待,即服务器只能执行其中一个指令,去下盘修改位图,处理完其中一个指令后,再处理另外一个。而本发明实施例中,对象号的分配以及对象号的释放均在内存中进行,服务器可以同时处理文件删除指令和文件创建指令,尽可能地避免了串行等待的现象。
结合第一方面或以上第一方面的任意一种可能的实现方式,在第一方面的第五种可能的实现方式中,上述方法还包括:判断最大可分配对象号标识的第一存储区域与待分配对象号的初始值所标识的第二存储区域之间是否存在空闲的存储区域;若存在,则将空闲的存储区域所对应的对象号添加到对象号回收表中。其中,待分配对象号的初始值是最早在内存中保存的待分配对象号,在一些实施例中,待分配对象号的初始值可以是“0”。第一存储区域、第二存储区域均用于存储文件的元数据。
在一些实施例中,由于待分配对象号是写在服务器内存中的。当服务器出现异常,如:关机重启、内存丢失等,服务器的内存会被清除。在异常恢复后,内存中不再记录有待分配对象号,但是硬盘中最大可分配对象号仍存在。所以异常恢复的时候,为了避免对象号的重复分配,可以将待分配对象号设置为最大可分配对象号。由于最大可分配对象号通常大于内存中当前的待分配对象号,因此,发生上述情况会造成一部分对象号的丢失。为了避免发生上述对象号丢失的情况,本发明实施例提供的方法中,可以定期扫描硬盘中的元数据存储空间。第一元数据存储空间与第二元数据存储空间中的这些空闲的元数据存储空间对应的对象号有可能是在异常恢复过程中,由于内存被清除造成丢失的对象号,如此,可以找回丢失的对象号,避免内存空间的浪费。
结合第一方面或以上第一方面的任意一种可能的实现方式,在第一方面的第六种可能的实现方式中,接收文件创建指令时,将对象号回收表中的一个对象号确定目标对象号,另外,还需要在对象号回收表中删除该对象号,避免同一个对象号被不同的文件使用。
也就是说,对象号回收表中的对象号也可以重新参与到对象号的分配中,由于对象号回收表存储在内存中,服务器在接收到文件创建指令时,可以在内存中获取一个对象号分配给待创建的文件,可以实现对象号的快速分配,提高文件创建的速度。
结合第一方面或以上第一方面的任意一种可能的实现方式,在第一方面的第七种可能的实现方式中,当对象号回收表中的对象号的数量大于等于预设的门限值时,则将对象号回收表中的对象号写入硬盘中的对象号存储区域内。
也就是说,当内存中的释放的对象号到达一定数目后,需要将这些对象号写入硬盘,避免过多地占用服务器的内存,增加服务器的负荷。
结合第一方面或以上第一方面的任意一种可能的实现方式,在第一方面的第八种可能的实现方式中,方法还包括:将硬盘中、对象号存储区域内的对象号读出存储在服务器的内存中,当接收文件创建指令时,可以将这部分对象号中的一个对象号确定为目标对象号。当然,服务器需要将内存中再次被分配的对象号删除,避免同一个对象号被重复分配给不同的文件。
也就是说,将对象号回收表中的对象号写入硬盘后,这些对象号还可以重新参与到对象号的分配。服务器可以将这些对象号读出后存储在内存中,将其中的对象号分配给待创建的文件,实现对象号的快速分配。
第二方面,公开了一种文件管理装置,设置于服务器,包括:接收单元,用于接收文件创建指令,文件创建指令用于指示服务器创建目标文件;处理单元,用于从服务器的内存中获取待分配对象号,以及最大可分配对象号;处理单元还用于,当待分配对象号小于最大可分配对象号时,为目标文件分配目标对象号,目标对象号等于待分配对象号,目标对象号用于标识目标文件的元数据的存储区域;处理单元还用于,将目标文件的元数据写入目标对象号所标识的存储区域中。
结合第二方面,在第二方面的第一种可能的实现方式中,处理单元还用于,当待分配对象号与最大可分配对象号之间的差值小于预设阈值时,更新最大可分配对象号,更新后的最大可分配对象号与待分配对象号之间的差值大于或等于预设阈值。
结合第二方面以及以上第二方面的任意一种可能的实现方式中,在第二方面的第二种可能的实现方式中,处理单元还用于,在为目标文件分配目标对象号之后,增加待分配对象号,增加后的待分配对象号用于为目标文件的下一个目标文件分配目标对象号。
结合第二方面以及以上第二方面的任意一种可能的实现方式中,在第二方面的第三种可能的实现方式中,最大可分配对象号还保存在服务器的硬盘中。处理单元还用于,当服务器发生故障后又重新上电时,从硬盘中获取最大可分配对象号,将最大可分配对象号作为当前待分配对象号保存在服务器的内存中;更新最大可分配对象号,更新后的最大可分配对象号与待分配对象号之间的差值大于预设阈值。
结合第二方面以及以上第二方面的任意一种可能的实现方式中,在第二方面的第四种可能的实现方式中,处理单元还用于,接收文件删除指令,文件删除指令用于指示服务器删除目标文件,文件删除指令携带目标文件的目标对象号;目标对象号用于标识目标文件的元数据的存储区域;在服务器的内存中的对象号回收表中添加目标对象号;删除目标对象号所标识的存储区域中存储的元数据。
结合第二方面以及以上第二方面的任意一种可能的实现方式中,在第二方面的第五种可能的实现方式中,处理单元还用于,判断最大可分配对象号标识的第一存储区域与待分配对象号的初始值标识的第二存储区域之间是否存在空闲的存储区域;若存在,则将空闲的存储区域所对应的对象号添加到对象号回收表中。
第三方面,提供一种服务器,该服务器包括上述第二方面及其任意一项可能的实现方式所述的文件管理装置、至少一个处理器以及存储介质,其中,上述文件管理装置、至少一个处理器以及存储介质之间互相连接,存储介质包括计算机的内存块。
第四方面,还提供一种计算机可读存储介质,该计算机可读存储介质中存储有指令;当其在上述第二方面及其任意一项可能的实现方式所述的文件管理装置上运行时,使得该文件管理装置执行如上述第一方面及其各种可能的实现方式所述的文件创建方法。
第五方面,还提供一种包含指令的计算机程序产品,当其在上述第二方面的文件管理装置上运行时,使得该文件管理装置执行如上述第一方面及其任意一项可能的实现方式所述的文件创建方法。
在本申请中,上述文件管理装置的名字对设备或功能模块本身不构成限定,在实际实现中,这些设备或功能模块可以以其他名称出现。只要各个设备或功能模块的功能和本申请类似,属于本申请权利要求及其等同技术的范围之内。
本申请中第二方面、第三方面、第四方面、第五方面及其各种实现方式的具体描述,可以参考第一方面及其各种实现方式中的详细描述;并且,第二方面、第三方面、第四方面、第五方面及其各种实现方式的有益效果,可以参考第一方面及其各种实现方式中的有益效果分析,此处不再赘述。
附图说明
图1为现有的文件删除、创建的流程示意图;
图2为对象号存储区域示意图;
图3为对象号索引元数据存储空间的示意图;
图4为本发明实施例提供的服务器的结构示意图;
图5为本发明实施例提供的文件创建方法的流程示意图;
图6为本发明实施例提供的另一种文件创建方法的流程示意图;
图7为本发明实施例提供的一种文件删除方法的流程示意图;
图8为本发明实施例提供的对象号回收表的示意图;
图9为本发明实施例提供的另一种文件删除方法的流程示意图;
图10为本发明实施例提供的另一种文件创建方法的流程示意图;
图11为本发明实施例提供的另一种文件创建方法的流程示意图;
图12为本发明实施例提供的文件管理装置的结构示意图;
图13为本发明实施例提供的文件管理装置的另一结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行详细地描述。
文件系统是服务器的操作系统中负责管理文件的系统,包括创建文件、删除文件、管理文件信息等。在文件系统中,元数据(Meta Data)是与文件真实数据相关的数据,如:用于描述文件真实数据属性的数据,指示真实数据存储位置的数据等。通常,硬盘中预留了一定的存储区域(可以称为元数据存储空间)来存储文件的元数据,同时,可以通过对象号来标示每个文件,一个对象号可以唯一索引到上述存储区域一个的存储区域。因此,在文件配置过程中,需要考虑文件的对象号。示例的,参考图1,删除文件时,需要根据对象号索引到一个存储区域,进而将该区域的元数据删除,另外释放该文件的对象号。创建文件时,需要为该文件分配一个对象号,根据该对象号索引到一个存储区域,并将文件的元数据存储在该区域。
如图2所示,可以在硬盘中分配出一定的存储区域(可以称为对象号存储区域,也可以认为是位图)来存储记录对象号的分配情况,该存储区域的某个位唯一对应一个对象号,并且一个位记录了一个对象号的分配情况。这里需要说明的是,“位”服务器存储数据的最小单位。在二进制数服务器系统中,一个“位”可以称为一比特,每个0或1就是一个位。需要说明的是,本发明实施例中的对象号可以是长度特定的字符串,“1”“3”等阿拉伯数字可以认为是对象号的标识,对象号“1”可以认为是标识为1的对象号。
示例的:一个位为“0”代表对象号未被使用,一个位为“1”代表对象号已经被使用。参考图2,该存储区域内偏移量为“0”的位用来记录对象号“0”的分配情况,偏移量为“1”的位用来记录对象号“1”的分配情况,以此类推。图2所示中,偏移量为“3”的位是“0”,表示对象号“3”未被使用。文件系统在删除或创建文件时,可以通过对该存储区域的解析知道哪些对象号是空闲可分配的,哪些对象号是被占用的。这里,需要说明的是,所谓偏移量即上述对象号存储区域中的某个位相对于对象号存储区域首地址的偏移量。
另外,硬盘中存在一个区域(可以称为元数据存储空间)专门用于存储文件的元数据,该空间被划分成多个存储区域,一个对象号标识一个存储区域,对象号标识的存储区域就是以该对象号为偏移量的一个存储区域,因此文件系统可以以对象号为索引查找元数据存储空间。示例的,参考图3,以对象号3为索引可以查找到元数据存储空间中偏移量为3的存储区域,若文件的对象号为3,那么该文件的元数据就存储在这个存储区域。
通常情况下,文件系统在创建文件时,首先需要查询对象号存储区域,找到一个未被使用的对象号,并将对象号的分配对应的位由“0”置为“1”。然后再根据对象号在元数据存储空间索引到对应的区域,将文件的元数据写入该区域,从而完成文件的创建。示例的,参考图3,文件系统查询对象号存储区域,偏移量为1的位对应的是“0”,表明对象号1是空闲的,则可以将对象号1分配给即将创建的文件,进一步,还可以将该文件的元数据存储在元数据存储空间内偏移量为1的区域。
在删除文件时,也需要查询对象号存储区域,将待删除文件的对象号标识的位由“1”置为“0”,然后再根据对象号在元数据存储空间索引到对应的区域,将该区域中的元数据删除,从而完成文件的删除。示例的,参考图3,待删除文件的对象号为3,文件系统查询对象号存储区域,将偏移量为3的位由“1”置为“0”,进一步,还需要将元数据存储空间内偏移量为3的区域存储的元数据存删除。
由此可见,无论是创建文件时为文件分配对象号,还是删除文件时释放文件的对象号,对需要访问硬盘中的对象号存储区域修改相应的位,由于修改硬盘需要花费一定的时间,也就意味着需要等待很长时间才能完成文件的创建或删除。如此,就会大大降低文件系统删除文件或创建文件的速度。
本发明实施例提供的技术方案中:删除文件时释放对象号不再下盘修改对象号标识的位,而是将释放的对象号添加到内存中的对象号回收表中,进一步,创建文件时分配对象号时也不需要下盘修改对象号标识的位,可以直接将对象号回收表中空闲的对象号分配给待创建的文件。这样一来,可以实现对象号的快速分配的快速,进而有利于提高文件创建和删除的速度。
本申请实施例提供的文件创建方法可应用于服务器,如图4所示,该服务器包括处理器01、与处理器01连接的存储介质02、文件管理装置03。其中,文件管理装置03还包括对象号管理模块04。其中,文件管理装置03可以是本发明实施例所述的文件系统。
具体地,处理器01是服务器的控制中心,可以是一个中央处理器(centralprocessing unit,CPU),也可以是特定集成电路(Application Specific IntegratedCircuit,ASIC),或者是被配置成实施本发明实施例的一个或多个集成电路,例如:一个或多个微处理器(digital signal processor,DSP),或,一个或者多个现场可编程门阵列(Field Programmable Gate Array,FPGA)。
存储介质02包括服务器的内存,可以存储数据、软件程序以及模块等存储介质02还可以包括硬盘存储介质或者其他磁存储服务器、或者能够用于携带或存储具有指令或数据结构形式的期望的程序代码,如上述文件管理装置03以及上述对象号管理模块04。存储介质02还可以是能够由服务器存取的任何其他介质,但不限于此。
其中,处理器01为CPU时,可以通过运行或执行存储在存储介质02内的软件程序,以及调用存储在存储介质02内的数据,执行上述服务器的各种功能。处理器01也可以为FPGA,当服务器运行时,FPGA执行上述服务器的各种功能。
文件管理装置03,用于管理文件,包括创建文件、删除文件、管理文件信息等。处理器01可以调用存储介质02中的代码及数据实现文件系统03的功能。
对象号管理模块04,用于实现对象号的分配及释放,以及其他与对象号相关的操作。处理器01可以调用存储介质02中的代码及数据实现对象号管理模块的功能。
在一些实施例中,文件管理装置03接收配置文件的指令,将该指令传递给对象号管理模块04以进行对象号的分配或释放。进一步,因此本发明实施例提供的方法中,对象号管理模块04访问存储介质02中的内存即可实现对象号的释放或分配,由于修改内存比修改硬盘的速度快很多,因此相比现有技术每次释放对象号或分配对象号都要下盘花费很长时间修改相应的位,本发明实施例提供的方法可以实现对象号的快速分配或释放,提高创建文件或删除文件的速度。
以下结合附图说明本发明实施例如何分配或释放对象号。参考图5,本发明实施例提供一种文件创建方法,如图5所示,所述方法包括以下步骤:
101、对象号管理模块在内存中维护一个待分配对象号以及一个最大可分配对象号。
其中,上述最大可分配对象号还存储在在硬盘中。示例的,在文件系统创建之后对象号管理模块会将MaxID(即最大可分配对象号)设置为某个值,比如1000,并且将MaxID的值写到服务器硬盘上的某个位置;同时,将curId(即待分配对象号)以及MaxID写入服务器的内存中,在一些实施例中首次设置的curId可以为0。
102、文件系统接收服务器触发的文件创建指令,文件创建指令用于指示服务器创建目标文件,文件系统为目标文件生成元数据。
具体实现中,本实施例中的文件系统可以是上述图4所示的文件系统03,服务器可以是上述图4所示的服务器。服务器接收用户触发的文件删除指令,或服务器上运行的应用程序触发的文件删除指令。随后,服务器将该文件删除指令传递给文件系统进行处理。
另外,服务器接收用户触发的文件创建指令,或服务器上运行的应用程序触发的文件创建指令。随后,服务器将该文件创建指令传递给文件系统进行处理。
103、文件系统向对象号管理模块传递对象号分配请求。
其中,对象号管理模块可以是图4所示服务器中的对象号管理模块04。由于文件的创建主要包括对象号的分配以及文件元数据的存储,而需要依靠对象号进行索引才能将文件的元数据存储在对象号标识的存储区域中,从而完成文件的创建。可见,对象号的分配是文件创建过程中需要首先执行的步骤,因此,文件系统会在接收文件创建指令后向对象号管理模块发送对象号分配请求以请求对象号管理模块为目标文件分配目标对象号。
104、对象号管理模块判断内存中当前的待分配对象号是否小于最大可分配对象号。
若内存中当前的待分配对象号小于最大可分配对象号,则执行步骤105。若内存中当前的待分配对象号不小于最大可分配对象号,则增加最大可分配对象号,增加后的最大可分配对象号与待分配对象号的差值大于预设阈值,在一些实施例中,预设阈值可以是自然数,如:100。
105、对象号管理模块在内存中读取待分配对象号,作为目标文件的目标对象号。
也就是说,对象号管理模块可以在内存中读取待分配对象号,将读取到的待分配对象号作为待创建的目标文件的对象号,实现对象号的快速分配。
106、对象号管理模块向文件系统回复对象号分配响应,该响应携带为目标文件分配的目标对象号。
107、对象号管理模块增加待分配对象号。
具体实现中,对象号管理模块可以将待分配对象号更新为待分配对象号加1所得的对象号。
示例的,若步骤105读取的待分配对象号为X,在此则将内存中的待分配对象号更新为X+1,那么对象号管理模块下一次接收对象号分配请求时,会将X+1分配给待创建的文件作为对象号。
108、文件系统将目标文件的元数据写入硬盘中,目标对象号标识的存储区域。
具体实现中,文件系统获取对象号分配响应中携带的对象号,以该对象号为索引查找元数据存储空间,确定了一个存储区域,将目标文件的元数据存储在该存储区域内。
109、文件系统向服务器回复文件创建响应。
具体实现中,文件创建响应用于指示已经完成了文件创建。
本发明实施例提供的文件创建方法中,服务器在内存中维护一个待分配对象号、一个最大可分配对象号,在接收到文件创建指令时,可以在内存中获取一个待分配对象号分配给待创建的目标文件,可以快速地实现对象号的分配。相比现有技术需要花费时间去下盘(即访问硬盘)修改对象号存储区域中的一个位以修改对象号的使用情况,大大提高了文件系统创建文件的速度。
在一些实施例中,对象号管理模块还可以根据待分配对象号更新最大可分配对象号,如图6所示,在步骤104和步骤105之间,还包括如下步骤:
104a、判断最大可分配对象号(第一数值)与待分配对象号的差值是否小于预设阈值。
104b、若最大可分配对象号与待分配对象号的差值小于预设阈值,则将最大可分配对象号更新为第二数值。
其中,第二数值与待分配对象号的差值大于或等于上述预设阈值。
实际应用中,如果在确定待分配对象号为目标对象号后不及时地更新最大可分配对象号,假设内存中当前的待分配对象号已经逼近最大可分配对象号,当并发多个文件创建指令等待服务器处理时,有可能就只能处理一部分文件创建指令,然后需要去硬盘增加最大可分配对象号,其余未处理的文件创建指令,只能等待更新最大可分配对象号后再去处理,需要等待较长时间。
示例的,内存中当前的待分配对象号为90,最大可分配对象号为100,服务器同时接收15个文件创建指令,但是可以供分配的对象号只有90~100这11个对象号,因此,服务器只能处理这15个文件创建指令种的11个,对于其余的4个需要等待下盘更新最大可分配对象号后才能处理。但是如果在每次分配对象号之前都去判断是否需要更新最大可分配对象号,及时对最大可分配对象号进行更新,避免待分配对象号很接近最大可分配对象号,就不会出现上述情况,在并发大量文件创建请求时,可以处理较多、甚至全部的创建请求,无需等待较长时间,提高了文件系统创建文件的速度。
本发明实施例还提供一种文件删除方法,如图7所示,所述方法包括以下步骤:
201、文件系统接收服务器发送的文件删除指令,文件删除指令携带待删除的目标文件的目标对象号。
具体实现中,本实施例中的文件系统可以是上述图4所示的文件系统03,服务器可以是上述图4所示的服务器。服务器接收用户触发的文件删除指令,或服务器上运行的应用程序触发的文件删除指令。随后,服务器将该文件删除指令传递给文件系统进行处理。
202、文件系统向对象号管理模块发送对象号释放请求,该请求携带目标对象号。
其中,对象号管理模块可以是图4所示服务器中的对象号管理模块04。由于文件的删除主要包括对象号的释放以及文件元数据的删除,而需要依靠对象号进行索引才能查找到文件的元数据,从而删除文件的元数据。可见,对象号的释放是文件删除过程中需要首先执行的步骤,因此,文件系统会在接收文件删除指令后向对象号管理模块发送对象号释放请求,以请求对象号管理模块释放目标对象号。
203、对象号管理模块将目标对象号添加在对象号回收表中,对象号回收表存储在内存中。
具体实现中,对象号管理模块预先在服务器的内存中维护一个对象号回收表,当接收到文件删除指令时,对象号管理模块则会将文件删除指令携带的目标对象号添加至该对象号回收表中。
图8是本发明实施例提供的对象号回收表的一种可能的实现,参考图8,对象号回收表中记录了每一个被删除的对象号,如“1”、“2”、“3”等。
在步骤203中,对象号管理模块将待删除文件的对象号添加在对象号回收表中具体是指:对象号管理模块将待目标对象号写入内存中的对象号回收表中。
204、对象号管理模块向文件系统回复对象号释放响应。
205、文件系统将硬盘中,待删除文件的对象号标识的存储区域存储的元数据删除。
具体实现中,文件系统以对象号为索引查找图3所示的元数据存储空间,查找到一个存储区域,将该区域内的数据(即待删除文件的元数据)删除,至此完成了文件的删除。
206、文件系统向服务器回复文件删除响应。
具体实现中,文件删除响应用于指示已经完成了文件删除。
本发明实施例还提供一种文件删除方法,该方法与图7所示的方法的不同之处在于:还可以对对象号回收表进行监控,根据监控结果决策如何处理对象号回收表。如图9所示,在步骤203与204之间还包括以下步骤:
203a、对象号管理模块判断对象号回收表中的对象号的数量大于等于预设的门限值。
具体地,预设的门限值可以是对象号回收表所占内存大小的上限值,如:对象号回收表所占内存最大为100位,当然,也可以是小于对象号回收表所占内存大小的上限值的一个数值,如:90。
203b、若对象号回收表中的对象号的数量大于等于预设的门限值,对象号管理模块将对象号回收表中的对象号写入硬盘中的对象号存储区。
也就是说,当对象号回收表中的对象号的数量足够多,则可以将对象号回收表中的对象号写入硬盘中。具体实现中,可以在对象号存储区直接写入对象号回收表中的对象号,如:“1”、“2”、“3”等。
基于图7所示的文件删除方法,本发明实施例提供一种文件创建方法,如图10所示,该方法主要包括以下步骤:
301、文件系统接收服务器触发的文件创建指令,为待创建的目标文件生成元数据。
服务器接收用户触发的文件创建指令,或服务器上运行的应用程序触发的文件创建指令。随后,服务器将该文件创建指令传递给文件系统进行处理。
302、文件系统向对象号管理模块传递对象号分配请求,请求为目标文件分配目标对象号。
303、对象号管理模块将对象号回收表中的一个对象号确定为目标文件的目标对象号。
需要说明的是,对象号管理模块将对象号回收表中的一个对象号分配给目标文件后,需要将对象号回收表中的该对象号删除,这样,可以保证后续接收文件创建指令时,在对象号回收表中为待创建的目标文件确定的对象号一定是空闲的。
具体实现中,可以将对象号回收表中某个对象号分配给目标文件。示例的,若对象号回收表中存储有“1”“2”“3”三个对象号,则可以将“1”“2”“3”中的任意一个作为对象号分配给目标文件。
304、对象号管理模块向文件系统回复对象号分配响应,该响应携带为目标文件分配的目标对象号。
305、文件系统将目标文件的元数据写入硬盘中,目标对象号标识的存储区域中。
具体实现中,文件系统获取对象号分配响应中携带的对象号,以该对象号为索引查找元数据存储空间,确定了一个存储区域,将目标文件的元数据存储在该存储区域内。
306、文件系统向服务器回复文件创建响应。
具体实现中,文件创建响应用于指示已经完成了文件创建。
本发明实施例提供的方法中,对象号回收表中的对象号也可以重新参与到对象号的分配中,由于对象号回收表存储在内存中,服务器在接收到文件创建指令时,可以在内存中获取一个对象号分配给待创建的文件,可以实现对象号的快速分配,提高文件创建的速度。
基于图9所示的文件删除方法,本发明实施例提供一种文件创建方法,如图11所示,该方法主要包括以下步骤:
401、文件系统接收服务器触发的文件创建指令,为待创建的目标文件生成元数据。
服务器接收用户触发的文件创建指令,或服务器上运行的应用程序触发的文件创建指令。随后,服务器将该文件创建指令传递给文件系统进行处理。
402、文件系统向对象号管理模块传递对象号分配请求,请求为目标文件分配目标对象号。
403、对象号管理模块将对象号管理模块将对象号存储区中的一个对象号确定为目标文件的对象号。
需要说明的是,对象号管理模块可以将对象号存储区中的对象号全部读出,存储在内存中以供再次参与对象号分配。对象号管理模块将内存中的这部分对象号(即存储区所包含的对象号)中的一个对象号分配给目标文件作为目标对象号后,需要将内存中的该对象号删除,以保证后续接收文件创建指令时,不会把已经分配的对象号再次分配给待创建的目标文件。
404、对象号管理模块向文件系统回复对象号分配响应,该响应携带为目标文件分配的目标对象号。
405、文件系统将目标文件的元数据写入硬盘中,目标文件的对象号标识的存储区域。
具体实现中,文件系统获取对象号分配响应中携带的对象号,以该对象号为索引查找元数据存储空间,确定了一个存储区域,将目标文件的元数据存储在该存储区域内。
406、文件系统向服务器回复文件创建响应。
具体实现中,文件创建响应用于指示已经完成了文件创建。
本发明实施例提供的方法中,将对象号回收表中的对象号写入硬盘后,这些对象号还可以重新参与到对象号的分配。服务器可以将这些对象号读出后存储在内存中,将其中的对象号分配给待创建的文件,实现对象号的快速分配。
在一些实施例中,由于待分配对象号是写在服务器内存中的。当服务器出现异常,如:关机重启、内存丢失等,服务器的内存会被清除。在异常恢复后,内存中不再记录有待分配对象号以及最大可分配对象号,但是硬盘中最大可分配对象号仍存在。所以异常恢复的时候,为了避免对象号的重复分配,对象号管理模块可以将待分配对象号设置为最大可分配对象号。但是这就会造成一部分对象号的丢失。示例的,发生异常时待分配对象号curId为800,最大可分配对象号MaxID为1000,一旦出现异常,内存中curId丢失,异常恢复后,将MaxID1000设置为curId,会导致对象号801~999丢失。
另外,在发生异常服务器重启时,对象号回收表中,没有写到硬盘上的对象号存储区的对象号也会丢失。因此,每次异常恢复后会产生对象号部分丢失,当异常恢复次数达到一定数量时,所产生的空间浪费将是巨大的。
为了避免发生上述对象号丢失的情况,本发明实施例提供的方法中,对象号管理模块可以定期扫描硬盘中的元数据存储空间,以找回丢失的对象号。具体地,对象号管理模块判断硬盘中,最大可分配对象号标识的第一存储区域与对象号初始值对应的第二存储区域之间是否存在空闲的存储区域。如果第一存储区域与第二存储区域之间存在空闲的存储区域,则将空闲的存储区域所对应的对象号添加到所述对象号回收表中。需要说明的是,这些空闲的元数据存储空间对应的对象号有可能是在异常恢复过程中,由于内存被清除造成丢失的对象号,如此,可以找回丢失的对象号,避免内存空间的浪费。
示例的,若对象号初始值为0,当前内存中的maxID为1000,对象号管理模块则对象号“0”标识的存储区域到对象号“1000”标识的存储区域,确定其中空闲的存储区域,并将空闲的存储区域对应的对象号添加至内存中的对象号回收表中。其中,对象号“0”标识的存储区域即元数据存储空间中偏移量为0的存储区域,对象号“1000”标识的存储区域即元数据存储空间中偏移量为1000的存储区域。假设偏移量为“100”的存储区域是空闲的,则将对象号100添加至对象号回收表中。
需要说明的是,图5~图11中的文件系统可以是本发明实施例图4中的文件管理装置03。
在采用对应各个功能划分各个功能模块的情况下,图12示出上述实施例中所涉及的文件管理装置的一种可能的结构示意图。如图12所示,文件管理装置包括接收单元501、处理单元502和发送单元503。
接收单元501,用于支持该文件管理装置执行上述实施例中的步骤102、步骤201、步骤301以及步骤401,和/或用于本文所描述的技术的其它过程;
处理单元502,用于支持该文件管理装置执行上述实施例中的步骤101、步骤104-步骤106、步骤108、步骤203、步骤203a、步骤203b、步骤205、步骤303、步骤305、步骤403、步骤405,和/或用于本文所描述的技术的其它过程;
发送单元72用于支持该文件管理装置执行上述实施例中的步骤109、步骤206、步306、步骤406,和/或用于本文所描述的技术的其它过程;
需要说明的是,上述方法实施例涉及的各步骤的所有相关内容均可以援引到对应功能模块的功能描述,在此不再赘述。另外,上述处理单元502所执行的步骤可以由图4所示服务器中的对象号管理模块执行。
示例性的,在采用集成的单元的情况下,本申请实施例提供的文件管理装置的结构示意图如图13所示。在图13中,该文件管理装置包括:处理模块601和通信模块602。处理模块601用于对文件管理装置的动作进行控制管理,例如,执行上述处理单元502执行的步骤,和/或用于执行本文所描述的技术的其它过程。通信模块601用于支持文件管理装置与其他设备之间的交互,例如,执行上述接收单元501和发送单元503执行的步骤。如图13所示,文件管理装置还可以包括存储模块603,存储模块603用于存储文件管理装置的程序代码和数据。
相应的,本申请实施例还提供一种计算机可读存储介质,计算机可读存储介质中存储有指令,当其在文件管理装置上运行时,使得文件管理装置执行上述方法实施例所示的方法流程中文件管理装置执行的各个步骤。
在上述实施例中,可以全部或部分的通过软件,硬件,固件或者其任意组合来实现。当使用软件程序实现时,可以全部或部分地以计算机程序产品的形式出现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本申请实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。该可用介质可以是磁性介质,(例如,软盘,硬盘、磁带)、光介质(例如,DVD)或者半导体介质(例如固态硬盘Solid State Disk(SSD))等。
通过以上的实施方式的描述,所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个装置,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是一个物理单元或多个物理单元,即可以位于一个地方,或者也可以分布到多个不同地方。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个可读取存储介质中。基于这样的理解,本申请实施例的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该软件产品存储在一个存储介质中,包括若干指令用以使得一个设备(可以是单片机,芯片等)或处理器(processor)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何在本申请揭露的技术范围内的变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。

Claims (12)

1.一种文件创建方法,其特征在于,包括:
服务器接收文件创建指令,所述文件创建指令用于指示所述服务器创建目标文件;
从所述服务器的内存中获取待分配对象号,以及最大可分配对象号;
当所述待分配对象号小于所述最大可分配对象号时,为所述目标文件分配目标对象号,所述目标对象号等于所述待分配对象号,所述目标对象号用于标识所述目标文件的元数据的存储区域;
将所述目标文件的元数据写入所述目标对象号所标识的存储区域中。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
当所述待分配对象号与所述最大可分配对象号之间的差值小于预设阈值时,更新所述最大可分配对象号,更新后的最大可分配对象号与所述待分配对象号之间的差值大于或等于所述预设阈值。
3.根据权利要求1所述的方法,其特征在于,所述方法还包括:
在所述为所述目标文件分配目标对象号之后,增加所述待分配对象号,增加后的待分配对象号用于为所述目标文件的下一个目标文件分配目标对象号。
4.根据权利要求1所述的方法,其特征在于,所述最大可分配对象号还保存在所述服务器的硬盘中,所述方法还包括:
当所述服务器发生故障后又重新上电时,从所述硬盘中获取所述最大可分配对象号,将所述最大可分配对象号作为当前待分配对象号保存在所述服务器的内存中;
更新所述最大可分配对象号,更新后的最大可分配对象号与所述待分配对象号之间的差值大于预设阈值。
5.根据权利要求1所述的方法,其特征在于,所述方法还包括:
服务器接收文件删除指令,所述文件删除指令用于指示所述服务器删除目标文件,所述文件删除指令携带所述目标文件的目标对象号;
在所述服务器的内存中的对象号回收表中添加所述目标对象号;
删除所述目标对象号所标识的存储区域中存储的元数据。
6.根据权利要求5所述的方法,其特征在于,所述方法还包括:
判断所述最大可分配对象号标识的第一存储区域与所述待分配对象号的初始值标识的第二存储区域之间是否存在空闲的存储区域;
若存在,则将所述空闲的存储区域所对应的对象号添加到所述对象号回收表中。
7.一种文件管理装置,其特征在于,服务器中包括所述文件管理装置,所述文件管理装置包括:
接收单元,用于接收文件创建指令,所述文件创建指令用于指示所述服务器创建目标文件;
处理单元,用于从所述服务器的内存中获取待分配对象号,以及最大可分配对象号;
所述处理单元还用于,当所述待分配对象号小于所述最大可分配对象号时,为所述目标文件分配目标对象号,所述目标对象号等于所述待分配对象号,所述目标对象号用于标识所述目标文件的元数据的存储区域;
所述处理单元还用于,将所述目标文件的元数据写入所述目标对象号所标识的存储区域中。
8.根据权利要求7所述的文件管理装置,其特征在于,
所述处理单元还用于,当所述待分配对象号与所述最大可分配对象号之间的差值小于预设阈值时,更新所述最大可分配对象号,更新后的最大可分配对象号与所述待分配对象号之间的差值大于或等于所述预设阈值。
9.根据权利要求7所述的文件管理装置,其特征在于,
所述处理单元还用于,在所述为所述目标文件分配目标对象号之后,增加所述待分配对象号,增加后的待分配对象号用于为所述目标文件的下一个目标文件分配目标对象号。
10.根据权利要求7所述的文件管理装置,其特征在于,所述最大可分配对象号还保存在所述服务器的硬盘中,
所述处理单元还用于,当所述服务器发生故障后又重新上电时,从所述硬盘中获取所述最大可分配对象号,将所述最大可分配对象号作为当前待分配对象号保存在所述服务器的内存中;更新所述最大可分配对象号,更新后的最大可分配对象号与所述待分配对象号之间的差值大于预设阈值。
11.根据权利要求7所述的文件管理装置,其特征在于,
所述处理单元还用于,接收文件删除指令,所述文件删除指令用于指示所述服务器删除目标文件,所述文件删除指令携带所述目标文件的目标对象号;
在所述服务器的内存中的对象号回收表中添加所述目标对象号;
删除所述目标对象号所标识的存储区域中存储的元数据。
12.根据权利要求11所述的文件管理装置,其特征在于,
所述处理单元还用于,判断所述最大可分配对象号标识的第一存储区域与所述待分配对象号的初始值标识的第二存储区域之间是否存在空闲的存储区域;
若存在,则将所述空闲的存储区域所对应的对象号添加到所述对象号回收表中。
CN201710774157.3A 2017-08-31 2017-08-31 一种文件创建方法及文件管理装置 Active CN110019031B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710774157.3A CN110019031B (zh) 2017-08-31 2017-08-31 一种文件创建方法及文件管理装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710774157.3A CN110019031B (zh) 2017-08-31 2017-08-31 一种文件创建方法及文件管理装置

Publications (2)

Publication Number Publication Date
CN110019031A true CN110019031A (zh) 2019-07-16
CN110019031B CN110019031B (zh) 2022-05-13

Family

ID=67186172

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710774157.3A Active CN110019031B (zh) 2017-08-31 2017-08-31 一种文件创建方法及文件管理装置

Country Status (1)

Country Link
CN (1) CN110019031B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114428765A (zh) * 2021-12-31 2022-05-03 北京云宽志业网络技术有限公司 随机文件创建方法、装置、计算机设备及存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101833559A (zh) * 2009-11-05 2010-09-15 北京炬力北方微电子有限公司 一种读取fat磁盘文件的方法和装置
US8086578B2 (en) * 2005-08-09 2011-12-27 Nexsan Technologies Canada Inc. Data archiving system
CN103778120A (zh) * 2012-10-17 2014-05-07 腾讯科技(深圳)有限公司 全局文件标识生成方法、生成装置及相应的分布式文件系统
WO2016106757A1 (zh) * 2014-12-31 2016-07-07 华为技术有限公司 一种存储数据的管理方法、存储管理器及存储系统
CN107016100A (zh) * 2017-04-10 2017-08-04 重庆大学 一种基于非易失性内存文件系统的元数据管理方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8086578B2 (en) * 2005-08-09 2011-12-27 Nexsan Technologies Canada Inc. Data archiving system
CN101833559A (zh) * 2009-11-05 2010-09-15 北京炬力北方微电子有限公司 一种读取fat磁盘文件的方法和装置
CN103778120A (zh) * 2012-10-17 2014-05-07 腾讯科技(深圳)有限公司 全局文件标识生成方法、生成装置及相应的分布式文件系统
WO2016106757A1 (zh) * 2014-12-31 2016-07-07 华为技术有限公司 一种存储数据的管理方法、存储管理器及存储系统
CN107016100A (zh) * 2017-04-10 2017-08-04 重庆大学 一种基于非易失性内存文件系统的元数据管理方法

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114428765A (zh) * 2021-12-31 2022-05-03 北京云宽志业网络技术有限公司 随机文件创建方法、装置、计算机设备及存储介质

Also Published As

Publication number Publication date
CN110019031B (zh) 2022-05-13

Similar Documents

Publication Publication Date Title
JP5510556B2 (ja) 仮想マシンのストレージスペースおよび物理ホストを管理するための方法およびシステム
CN102681789B (zh) 在一储存系统架构下产生一虚拟卷的数据存取方法
US7966470B2 (en) Apparatus and method for managing logical volume in distributed storage systems
EP3171277B1 (en) Method for managing files, distributed storage system and management node
CN110321301B (zh) 一种数据处理的方法及装置
US20080184000A1 (en) Storage module and capacity pool free capacity adjustment method
CN105095094A (zh) 内存管理方法和设备
CN103064797B (zh) 数据处理方法和虚拟机管理平台
CN104636181A (zh) 用于迁移虚拟机的方法和系统
US8386707B2 (en) Virtual disk management program, storage device management program, multinode storage system, and virtual disk managing method
JP2008090741A (ja) 計算機システム、データ移行監視方法及びデータ移行監視プログラム
JP7467593B2 (ja) リソース割振り方法、記憶デバイス、および記憶システム
CN110858162B (zh) 内存管理方法及装置、服务器
CN107329704B (zh) 一种缓存镜像方法及控制器
JPWO2014007249A1 (ja) I/oノード及び複数の計算ノードに備えられたキャッシュメモリの制御方法
WO2008006674A1 (en) Reserve pool management in virtualized storage systems
JP2016181058A (ja) 半導体記憶装置
JP5396339B2 (ja) リソース制御方法及びリソース制御システム
CN110109868A (zh) 用于索引文件的方法、装置和计算机程序产品
CN104317734A (zh) 一种适用于slab的内存分配方法及装置
JP6070371B2 (ja) データ配置プログラム、及び情報処理装置
CN105760391B (zh) 数据动态重分布的方法、数据节点、名字节点及系统
CN109960662A (zh) 一种内存回收方法及设备
CN104272273A (zh) 动态存储器分配
US20100057989A1 (en) Method of moving data in logical volume, storage system, and administrative computer

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