【技术实现步骤摘要】
本专利技术涉及一种文件存储方式,具体涉及一种在计算机存储介质上存储大量文件的方法。
技术介绍
在现有的技术中,人们在计算机上存储文件的时候,常常将所有文件放置到其文件系统的一个或多个随意命名的文件夹中,这样文件夹命名混乱,不易管理的问题,且随着文件夹的数目增多,文件的存取效率会降低,于是出现了一些按照文件类型或文件名称进行归类存储的方法,限定了文件夹数量,但是仍然会出现某些文件夹下文件较为集中的问题。当文件的数量达到一定规模后,会出现大量内容重复的文件占用存储空间的问题,于是出现一种基于文件HASH的文件存储方式,但在随着文件数量的增加而出现相同HASH值而文件不同的现象出现的概率会不断增加。当文件存储扩展到多个存储介质后,会出现多个存储介质空间大小不一,文件存储的时候也会出现文件在某一个或几个存储介质集中的问题。因此,现有的文件存储方法,存在以下问题:1、文件夹命名混乱,文件夹数目过多,文件在某个或某几个文件夹下集中。2、单一使用文件HASH时,文件的HASH值会随着文件数目的增多而有更大的几率出现碰撞。3、多个存储介质时,会出现文件相对集中到某个或某几个介质,并且介质本身的可用空间大小不一,会导致较小可用空间介质因存储已满而变为不再可用,进一步导致后续文件向较大空间聚集的问题;在读写后续文件的时候就会出现读写操作集中在某个或某几个存储介质的情况出现,受限于单个存储介质的性能,就会导致整个存储系统的读取性能的下降。
技术实现思路
本专利技术的目的在于克服现有文件存储技术的缺陷,提供一种更为高效的文件存储方式。为实现上述目的,本专利技术第一方面提供一种在计算 ...
【技术保护点】
一种在计算机存储介质上存储文件的方法,其特征在于,包括以下步骤:文件命名步骤,使用存储介质名称、文件HASH和文件大小进行联合编码的文件命名方式对待存储文件进行命名;文件存储步骤,使用基于单个文件HASH和该文件的文件名的HASH进行编码而命名的多层目录结构进行存储该文件的存储,其中,根据存储空间的可用空间大小动态设定存储文件时分配给每个存储介质进行存储该文件的几率权重;所述文件存储步骤具体为:分别在文件内容的HASH字符串和文件名称的HASH字符串的指定位置上取两位作为文件夹名称,建立双层目录结构,将文件存储到该目录结构的最底层文件夹下;文件存储前对编号的存储介质的可用空间进行计算,然后将该编号存储介质的可用空间大小在总的可用空间大小中所占的百分比作为存储文件时分配到该编号存储介质上的概率;文件在存储前,使用文件的HASH值与文件大小在在持久化存储中进行检索,如果找到相同的值,说明重复文件已经存在,只需在持久化存储中建立新文件信息与该文件的唯一编号的映射关系。
【技术特征摘要】
1.一种在计算机存储介质上存储文件的方法,其特征在于,包括以下步骤:文件命名步骤,使用存储介质名称、文件HASH和文件大小进行联合编码的文件命名方式对待存储文件进行命名;文件存储步骤,使用基于单个文件HASH和该文件的文件名的HASH进行编码而命名的多层目录结构进行存储该文件的存储,其中,根据存储空间的可用空间大小动态设定存储文件时分配给每个存储介质进行存储该文件的几率权重;所述文件存储步骤具体为:分别在文件内容的HASH字符串和文件名称的HASH字符串的指定位置上取两位作为文件夹名称,建立双层目录结构,将文件存储到该目录结构的最底层文件夹下;文件存储前对编号的存储介质的可用空间进行计算,然后将该编号存储介质的可用空间大小在总的可用空间大小中所占的百分比作为存储文件时分配到该编号存储介质上的概率;文件在存储前,使用文件的HASH值与文件大小在在持久化存储中进行检索,如果找到相同的值,说明重复文件已经存在,只需在持久化存储中建立新文件信息与该文件的唯一编号的映射关系。2.根据权利要求1所述的一种在计算机存储介质上存储文件的方法,其特征在于:所述文件命名步骤具体为:对存储介质按照一定顺序进行编号,计算待存储文件的HASH值,获取待存储文件的大小,将存储介质编号,文件HASH和文件大小按照一定的可逆的算法进行编码,生成文件名称,同时也作为该文件的唯一编号。3.根据权利要求1所述的一种在计算机存储介质上存储文件的方法,其特征在于:还包括文件读取步骤,在读取文件时,提供文件的唯一标识,根据文件标识与文件位置的一对一的映射关系,直接对文件进行读取。4.一种在计算机存储介质上存储文件的系统,其特征在于,包括:文件命名装置,用于使用存储介质名称、文件HASH和文件大小的进行联合编码的文件命名方式对待存储的文件进行命名;文件存储装置,使用基于单个文件HASH和该文件的文件名的HASH进行编码而命名的多层目录结构进行存储该文件的存储;其中...
【专利技术属性】
技术研发人员:郎志新,杜军,韩烁,
申请(专利权)人:北京北信源软件股份有限公司,
类型:发明
国别省市:北京;11
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。