CN107577423A - 一种优化存储空间的方法及系统 - Google Patents
一种优化存储空间的方法及系统 Download PDFInfo
- Publication number
- CN107577423A CN107577423A CN201710696764.2A CN201710696764A CN107577423A CN 107577423 A CN107577423 A CN 107577423A CN 201710696764 A CN201710696764 A CN 201710696764A CN 107577423 A CN107577423 A CN 107577423A
- Authority
- CN
- China
- Prior art keywords
- file
- user
- module
- stored
- storage
- 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
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种优化存储空间的方法,包括:文件存储方法,包括:接收用户的存储指令,获取待存储文件;根据待存储文件获取待存储文件的唯一标识信息;根据待存储文件的唯一标识信息,在预存的文件信息表中查找是否存在与待存储文件相同的文件,若是,文件信息表中,将与待存储文件相同的文件的存储目录项中的用户计数值加1;并在预存的用户目录表中增加用户的存储目录项;否则存储待存储文件,并在文件信息表中增加待存储文件的存储目录项、及在用户目录表中增加用户存储待存储文件的存储目录项。本发明还公开了一种优化存储空间的系统。通过本发明可以优化存储空间,减少存储空间的浪费。
Description
技术领域
本发明涉及数据存储领域,尤其涉及一种优化存储空间的方法及系统。
背景技术
一般企业自己搭建的网盘方法是在服务器上为每个用户都建立了一个用户文件夹,当这个用户操作文件的时候其实就是操作这个文件夹里面的内容。但不同的用户有可能存储一样的文件,这样就会大大浪费服务器网盘空间。
发明内容
本发明提供一种优化存储空间的方法及系统,解决了现有技术中存储空间的浪费问题。
一方面,本发明提供了一种优化存储空间的方法,包括:
S10文件存储方法,包括:
S110接收用户的存储指令,获取待存储文件;
S120根据所述待存储文件获取所述待存储文件的唯一标识信息;
S130根据所述待存储文件的唯一标识信息,在预存的文件信息表中查找是否存在与所述待存储文件相同的文件,若是,进入步骤S140,否则进入步骤S150;
S140在所述文件信息表中,将与所述待存储文件相同的文件的存储目录项中的用户计数值加1;并在预存的用户目录表中增加所述用户的存储目录项;
S150存储所述待存储文件,并在所述文件信息表中增加所述待存储文件的存储目录项、及在所述用户目录表中增加所述用户存储所述待存储文件的存储目录项。
进一步地,在所述步骤S100之前还包括:
S01建立用户目录表,所述用户目录表中的存储目录项包括用户ID、文件名称、唯一标识信息、显示路径及存储路径;所述显示路径包含链接或指针指向所述存储路径;
S02建立文件信息表,所述文件信息表中的存储目录项包括唯一标识信息、文件类型、用户计数值。
进一步地,所述优化存储空间的方法还包括:
S20文件删除方法;包括:
S210接收用户的删除指令,获取待删除文件;
S220根据所述待删除文件,在所述文件信息表中查找到所述待删除文件的存储目录项中的用户计数值;
S230判断所述用户计数值是否大于1,若是,进入步骤S240,否则进入步骤S250;
S240将所述用户计数值减1,并在所述用户目录表中删除所述用户存储所述待删除文件的存储目录项;
S250删除所述待删除的文件、所述用户目录表中所述用户存储所述待删除文件的存储目录项、及所述文件信息表中所述待删除文件的存储目录项。
进一步地,所述优化存储空间的方法还包括:
S30文件修改方法;包括:
S310接收用户的修改指令,获取待修改文件;
S320判断所述待修改文件在所述文件信息表中的用户计数值是否大于1,若是,则进入步骤S330,否则进入步骤S340;
S330在所述文件信息表中,将所述待修改文件的用户计数值减1;获取所述待修改文件的副本,并在所述待修改文件的副本上执行相应的修改操作,进入步骤S350;
S340删除所述待修改文件在所述文件信息表中的存储目录项;并在所述待修改文件上执行相应的修改操作,进入步骤S350;
S350删除所述用户目录表中所述用户存储所述待修改文件的存储目录项;并获取修改后的文件的唯一标识信息;
S360根据所述修改后的文件的唯一标识信息,在所述文件信息表中查找是否存在与所述修改后的文件相同的文件,若是,进入步骤S370;否则,进入步骤S380;
S370在所述文件信息表中,将与所述修改后的文件相同的文件的存储目录项中的用户计数值加1,进入步骤S390;
S380存储所述修改后的文件,并在所述文件信息表中增加所述修改后的文件的存储目录项,进入步骤S390;
S390在所述用户目录表中增加所述用户存储所述修改后的文件的存储目录项。
进一步地,所述唯一标识信息为文件的哈希值。
另一方面,本发明还公开了一种优化存储空间的系统,包括:接收模块、获取模块、查找判断模块、存储模块、操作模块及写入模块,所述查找判断模块分别与所述接收模块、获取模块、存储模块、操作模块及写入模块相连,其中:所述优化存储空间的系统存储文件包括:所述接收模块接收用户的存储指令,获取待存储文件;所述获取模块根据所述带存储文件,获取所述带存储文件的唯一标识信息;所述查找判断模块根据所述待存储文件的唯一标识信息,在所述存储模块预存的文件信息表中查找是否存在与所述待存储文件相同的文件,若是,则通过所述操作模块在所述文件信息表中,将与所述待存储文件相同的文件的存储目录项中的用户计数值加1,并通过所述写入模块在所述存储模块预存的用户目录表中增加所述用户的存储目录项;若所述查找判断模块在所述文件信息表中未查找到与所述待存储文件相同的文件,则通过所述存储模块存储所述待存储文件,并通过所述写入模块在所述文件信息表中增加所述待存储文件的存储目录项、及在所述用户目录表中增加所述用户存储所述待存储文件的存储目录项。
进一步地,所述优化存储空间的系统还包括与所述存储模块相连的建表模块,其中:所述建表模块建立用户目录表,并通过所述存储模块进行存储;所述用户目录表中的存储目录项包括用户ID、文件名称、唯一标识信息、显示路径及存储路径;所述显示路径包含链接或指针指向所述存储路径;所述建表模块还建立文件信息表,并通过所述存储模块进行存储;所述文件信息表中的存储目录项包括唯一标识信息、文件类型、用户计数值。
进一步地,所述优化存储空间的系统还包括与所述查找判断模块相连的删除模块;所述优化存储空间的系统删除文件包括:所述接收模块接收用户的删除指令,获取待删除文件;所述查找判断模块根据所述待删除文件,在所述文件信息表中查找到所述待删除文件的存储目录项中的用户计数值;所述查找判断模块判断所述用户计数值是否大于1,若是,通过所述操作模块将所述用户计数值减1,并通过所述删除模块在所述用户目录表中删除所述用户存储所述待删除文件的存储目录项;若所述查找判断模块判断所述用户计数值等于1,则通过所述删除模块删除所述待删除的文件、所述用户目录表中所述用户存储所述待删除文件的存储目录项、及所述文件信息表中所述待删除文件的存储目录项。
进一步地,所述优化存储空间的系统修改文件,包括:所述接收模块接收用户的修改指令,获取待修改文件。所述判断查找模块判断所述待修改文件在所述文件信息表中的用户计数值是否大于1,若是,则通过所述操作模块再所述文件信息表中将所述待修改文件的用户计数值减1;通过所述获取模块获取所述待修改文件的副本,并通过所述操作模块在所述待修改文件的副本上执行相应的修改操作;否则,通过所述删除模块删除所述待修改文件在所述文件信息表中的存储目录项,并通过所述操作模块在所述待修改文件上执行相应的修改操作。所述删除模块删除所述用户目录表中所述用户存储所述待修改文件的存储目录项;所述获取模块获取修改后的文件的唯一标识信息。所述查找判断模块根据所述修改后的文件的唯一标识信息,在所述文件信息表中查找是否存在与所述修改后的文件相同的文件,若是,则通过所述操作模块在所述文件信息表中,将与所述修改后的文件相同的文件的存储目录项中的用户计数值加1;否则,通过所述存储模块存储所述修改后的文件,并通过所述写入模块在所述文件信息表中增加所述修改后的文件的存储目录项。所述写入模块还在所述用户目录表中增加所述用户存储所述修改后的文件的存储目录项。
进一步地,所述唯一标识信息为文件的哈希值。
本发明通过文件信息表、用户目录表反映用户存储记录及文件存储相关信息,对于不同的用户存储相同的文件,只在文件信息表和用户目录表中进行操作,而在实际存储时只实质性存储该文件一次,因而可以大大减少存储空间的浪费。用户在实际查找该用户之前存储的文件时,也可以根据用户目录表中该用户的存储目录项快速查找到目的文件,省时省力。此外,用户在删除或修改之前存储的文件时,也会在用户目录表、文件信息表中进行相应的变动,并根据文件信息表中的用户计数值采取不同的操作,保证该用户的删除或修改操作不影响到其它用户存储的相同的文件的操作和使用。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简要介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明优化存储空间的方法的实施例的文件存储流程图;
图2为本发明优化存储空间的方法的另一实施例的文件存储流程图;
图3为本发明优化存储空间的方法的另一实施中的文件删除流程图;
图4为本发明优化存储空间的方法的另一实施例中的文件修改流程图;
图5为本发明优化存储空间的系统的实施例的框图;
图6为本发明优化存储空间的系统的另一实施例的框图。
具体实施方式
为了使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明作进一步地详细描述,显然,所描述的实施例仅仅是本发明一部份实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
本发明公开了一种优化存储空间的方法,实施例如图1所示,包括:
S10文件存储方法,包括:
S110接收用户的存储指令,获取待存储文件;
S120根据所述待存储文件获取所述待存储文件的唯一标识信息;
S130根据所述待存储文件的唯一标识信息,在预存的文件信息表中查找是否存在与所述待存储文件相同的文件,若是,进入步骤S140,否则进入步骤S150;
S140在所述文件信息表中,将与所述待存储文件相同的文件的存储目录项中的用户计数值加1;并在预存的用户目录表中增加所述用户的存储目录项;
S150存储所述待存储文件,并在所述文件信息表中增加所述待存储文件的存储目录项、及在所述用户目录表中增加所述用户存储所述待存储文件的存储目录项。
本实施例针对不同用户可能存储相同的文件造成存储空间的浪费问题,提出了一种优化存储空间的方法,具体的,在存储的过程中,获取到待存储文件后,判断该待存储文件是否有存储过,如果有的话,则无需再存储,只在相应的用户目录表和文件信息表中进行相应的添加即可。这样就避免了相同的文件由不同的用户进行多次存储,占用存储空间。而用户后续在查找时,也可以根据用户目录表快速查找到该用户的存储文件记录,找到存储的文件。而对于如何判断是否存储有相同的文件,则是根据待存储文件获取到该待存储文件的唯一标识信息,然后根据该唯一标识信息在文件信息表中进行查找,看是否存在相同的文件。
上述实施例中提到的文件信息表是用来记录存储的文件的目录表,里面记载了所有存储的文件;用户目录表则是用来记录每个用户存储文件信息,具体的,如图2所示,在上述实施例基础上,在所述步骤S100之前还包括:
S01建立用户目录表,所述用户目录表中的存储目录项包括用户ID、文件名称、唯一标识信息、显示路径及存储路径;所述显示路径包含链接或指针指向所述存储路径;
S02建立文件信息表,所述文件信息表中的存储目录项包括唯一标识信息、文件类型、用户计数值。
上述实施例中,显示路径是指显示给用户看的路径,存储路径是指文件实际存储的路径,显示路径里包含了链接或指针指向存储路径,如此,文件实际存储在存储路径所在的地方,但显示用户(对应的用户ID所代表的用户)的是显示路径,不过用户通过显示路径可以直接找到存储路径存储的文件。文件信息表中的用户计数值,是指该文件理论上被用户存储的数量,比如,文件A首次被用户a存储后,文件信息表中用户计数值为1,用户目录项中添加用户a存储文件A的存储目录项,当用户b又存储文件A时,由于文件A已经存储了的,实际无需再存储,因此,只需要在文件信息表中用户计数值加1,用户计数值变为2,当然,用户目录表中也会增加用户b存储文件A的存储目录项。当用户c再存储文件A时,同样,文件信息表中用户计数值变成了3,用户目录表中再添加用户c存储文件A的存储目录项。此外,每个存储的文件都有自己的唯一标识信息,因此,如果用户存储的文件已经存储过了的,那么可以根据该文件的唯一标识信息在文件信息表中查找看看是否记录有相同的唯一标识信息,如果有的话则说明存在相同的文件,那么这个文件就不需要再存储一次了,只需要在文件信息表中用户计数值增加1,并在用户目录表中增加1项该用户的存储目录项即可。具体的,文件的唯一标识信息可以取文件的哈希值,用户目录表中的存储目录项就包括了用户ID、文件名称、文件哈希值、显示路径及存储路径几项;文件信息表的存储目录项包括文件哈希值、文件类型、用户计数值这几项。接收到用户的存储指令后,先根据待存储的文件获取该待存储文件的哈希值,然后根据该哈希值在文件信息表中查找是否存在相同的文件哈希值,因为如果文件相同的话,那么文件哈希值也相同,因此,通过文件哈希值便可判断出文件是否相同。
本发明方法的另一实施例,在上述任一实施例的基础上,还增加了文件删除方法,具体的文件删除方法如图3所示,包括:
S210接收用户的删除指令,获取待删除文件;
S220根据所述待删除文件,在所述文件信息表中查找到所述待删除文件的存储目录项中的用户计数值;
S230判断所述用户计数值是否大于1,若是,进入步骤S240,否则进入步骤S250;
S240将所述用户计数值减1,并在所述用户目录表中删除所述用户存储所述待删除文件的存储目录项;
S250删除所述待删除的文件、所述用户目录表中所述用户存储所述待删除文件的存储目录项、及所述文件信息表中所述待删除文件的存储目录项。
本实施例除了包括前面实施例的存储方法外,还增加了删除方法,具体的,比如,用户a需要删除文件A,首先会在文件信息表中查看文件A的用户计数值是多少,如果是大于1的话,那么就将该用户计数值减1,并在所述用户目录表中删除之前记录的用户a存储文件A的存储目录项,而文件A则不需要实质删除,只变动文件信息表和用户目录表即可,因为用户计数值大于1的话,则除了用户a外,还有其它用户存储了该文件A,因此,如果进行了实质删除文件A的话,影响到其它用户对文件A的操作和使用。当然,如果用户计数值等于1的话,则说明只有用户a存储了文件A,因此,用户需要删除文件A的话,则可以直接进行实质性删除,当然,对应的在文件信息表中文件A的存储目录项和用户a存储文件A的存储目录项也需要相应的进行删除。
本发明的另一实施例,在上述任一实施例的基础上,还增加了文件修改方法,具体的文件修改方法如图4所示,包括:
S310接收用户的修改指令,获取待修改文件;
S320判断所述待修改文件在所述文件信息表中的用户计数值是否大于1,若是,则进入步骤S330,否则进入步骤S340;
S330在所述文件信息表中,将所述待修改文件的用户计数值减1;获取所述待修改文件的副本,并在所述待修改文件的副本上执行相应的修改操作,进入步骤S350;
S340删除所述待修改文件在所述文件信息表中的存储目录项;并在所述待修改文件上执行相应的修改操作,进入步骤S350;
S350删除所述用户目录表中所述用户存储所述待修改文件的存储目录项;并获取修改后的文件的唯一标识信息;
S360根据所述修改后的文件的唯一标识信息,在所述文件信息表中查找是否存在与所述修改后的文件相同的文件,若是,进入步骤S370;否则,进入步骤S380;
S370在所述文件信息表中,将与所述修改后的文件相同的文件的存储目录项中的用户计数值加1,进入步骤S390;
S380存储所述修改后的文件,并在所述文件信息表中增加所述修改后的文件的存储目录项,进入步骤S390;
S390在所述用户目录表中增加所述用户存储所述修改后的文件的存储目录项。
具体的,比如用户a需要对文件A进行修改,那么,我们首先需要判断待修改文件在文件信息表中的用户计数值是否大于1,如果是的话,则在所述文件信息表中将文件A的用户计数值减1,且不能在文件A上直接进行修改操作,不然会影响其它用户对文件A的操作和使用,因此,还需要获取文件A的副本,然后在文件A的副本上进行修改操作;如果文件A的用户计数值是1的话,则需要删除文件A在文件信息表中的存储目录项,且可以直接在文件A上进行修改操作。被修改后的文件实质是与原文件是不同的,我们暂且称被修改后的文件为文件A",因此,我们还需要在用户目录表中删除用户a存储文件A的存储目录项,并在文件A修改后,获取修改文件即文件A"的唯一标识信息,比如哈希值,然后根据文件A"的哈希值在文件信息表中查找是否存在文件A"的存储目录项,也就是说是否与文件A"相同的文件存储过,如果有的话,那么就无需实质存储修改后的文件A",只需要在文件信息表中将与文件A"相同的文件的存储目录项中的用户计数值加1即可;否则的话,则说明没有存储过于文件A"相同的文件,则需要将文件A"进行存储,且需要在文件信息表中添加文件A"的存储目录项。最后,在用户目录表中增加用户a存储文件A"的存储目录项。
较佳的,上述任一实施例中,所述唯一标识信息为文件的哈希值。
哈希(HASH)值是根据文件的内容的数据通过逻辑运算得到的数值,不同的文件(即使是相同的文件名)得到的HASH值是不同的,所以HASH值可以作为每一个文件的身份证。不同HASH值的文件被认为是不同的文件,相同的HASH值的文件的内容肯定是完全相同(即使文件名称不同)。HASH值具有文件校验的功能,相当于文件的校验码,可以用来判断两个文件是否是相同的。哈希算法有很多,比如SHA1、MD5等等。
本发明方法的另一实施例,建立一个用户对应的用户目录表,用户的目录文件结构都存储在这个目录表中,而真实的文件按照文件类型存储在每个文件夹中然后用SHA1来命名文件名。具体的,采用了如下的技术方案:
服务器上面建两张表,第一张表是记录用户结构文件的用户目录表,第二张表记录文件的相关信息的文件信息表。具体如下:
user_id | filenname | sha1 | user_path | true_path |
表1用户目录表
其中,user_id表示用户唯一ID;
filenam表示显示给用户的文件名;
sha1表示文件的sha1;
user_path表示文件显示给用户看的路径;
true_path表示文件的真实路径;
文件信息表设计如下:
sha1 | file_type | user_count |
表2文件信息表
sha1表示文件的sha1;
file_type表示文件类型;
user_count表示用户存储的文件数;
真实服务器上不存在用户文件夹,用户文件结构都存在表中。在用户增加文件时,首先计算出文件的sha1码,然后到文件信息表中查找,如果不存在分别在用户目录结构表中和文件信息表中插入一条记录,文件信息表中的user_count值记录为1;如果文件存在把这个文件路径记录到用户目录结构表中,然后在把对应的文件信息表中的user_count值加1;
当用户删除文件时,首选查找文件信息表中的user_count值是否大于1.如果是大于1,直接减1真实文件不动。如果等于1.直接删除文件,文件信息表中记录和用户目录结构表中信息。
本实施例实现原理主要包括:服务器端记录的是用户的目录结构信息,而真实的文件是按类型分别放在不同文件夹中的,所以相同的文件服务器上只会保存一份。用户操作改变的是用户目录结构表中的信息。然台在判断真实文件是增加还是删除。
基于相同的技术构思,本发明还公开了一种优化存储空间的系统,该系统可执行本发明的方法实施例,具体的,实施例如图5所示,包括:接收模块10、获取模块20、查找判断模块30、存储模块40、操作模块50及写入模块60,所述查找判断模块30分别与所述接收模块10、获取模块20、存储模块40、操作模块50及写入模块60相连,其中:所述优化存储空间的系统存储文件包括:所述接收模块10接收用户的存储指令,获取待存储文件;所述获取模块20根据所述带存储文件,获取所述带存储文件的唯一标识信息;所述查找判断模块30根据所述待存储文件的唯一标识信息,在所述存储模块40预存的文件信息表中查找是否存在与所述待存储文件相同的文件,若是,则通过所述操作模块50在所述文件信息表中,将与所述待存储文件相同的文件的存储目录项中的用户计数值加1,并通过所述写入模块60在所述存储模块40预存的用户目录表中增加所述用户的存储目录项;若所述查找判断模块30在所述文件信息表中未查找到与所述待存储文件相同的文件,则通过所述存储模块40存储所述待存储文件,并通过所述写入模块60在所述文件信息表中增加所述待存储文件的存储目录项、及在所述用户目录表中增加所述用户存储所述待存储文件的存储目录项。
本发明系统的另一实施例,在上述系统实施例的基础上,如图6所示,所述优化存储空间的系统还包括与所述存储模块40相连的建表模块70,其中:所述建表模块70建立用户目录表,并通过所述存储模块40进行存储;所述用户目录表中的存储目录项包括用户ID、文件名称、唯一标识信息、显示路径及存储路径;所述显示路径包含链接或指针指向所述存储路径;所述建表模块70还建立文件信息表,并通过所述存储模块40进行存储;所述文件信息表中的存储目录项包括唯一标识信息、文件类型、用户计数值。
在上述任一实施例的基础上,所述优化存储空间的系统还包括与所述查找判断模块30相连的删除模块80;所述优化存储空间的系统删除文件包括:所述接收模块10接收用户的删除指令,获取待删除文件。所述查找判断模块30根据所述待删除文件,在所述文件信息表中查找到所述待删除文件的存储目录项中的用户计数值。所述查找判断模块30判断所述用户计数值是否大于1,若是,通过所述操作模块50将所述用户计数值减1,并通过所述删除模块80在所述用户目录表中删除所述用户存储所述待删除文件的存储目录项;若所述查找判断模块30判断所述用户计数值等于1,则通过所述删除模块80删除所述待删除的文件、所述用户目录表中所述用户存储所述待删除文件的存储目录项、及所述文件信息表中所述待删除文件的存储目录项。
较佳的,在上述实施例基础上,所述优化存储空间的系统修改文件,包括:所述接收模块10接收用户的修改指令,获取待修改文件。所述判断查找模块30判断所述待修改文件在所述文件信息表中的用户计数值是否大于1,若是,则通过所述操作模块50再所述文件信息表中将所述待修改文件的用户计数值减1;通过所述获取模块20获取所述待修改文件的副本,并通过所述操作模块50在所述待修改文件的副本上执行相应的修改操作;否则,通过所述删除模块80删除所述待修改文件在所述文件信息表中的存储目录项,并通过所述操作模块50在所述待修改文件上执行相应的修改操作。所述删除模块80删除所述用户目录表中所述用户存储所述待修改文件的存储目录项;所述获取模块20获取修改后的文件的唯一标识信息。所述查找判断模块30根据所述修改后的文件的唯一标识信息,在所述文件信息表中查找是否存在与所述修改后的文件相同的文件,若是,则通过所述操作模块50在所述文件信息表中,将与所述修改后的文件相同的文件的存储目录项中的用户计数值加1;否则,通过所述存储模块40存储所述修改后的文件,并通过所述写入模块60在所述文件信息表中增加所述修改后的文件的存储目录项。所述写入模块60还在所述用户目录表中增加所述用户存储所述修改后的文件的存储目录项。
上述任一实施例中,所述唯一标识信息为文件的哈希值。那么,文件真正的存储可以按照文件的类型存储在不同的文件夹中;文件与文件之间的区别通过文件的哈希值SHA1进行区分,也就是说文件的哈希值相同那么文件就相同,其哈希值不同则文件肯定不同。在文件信息表中会记录文件哈希值、文件类型及用户计数值,在用户目录表中,也会存储每个用户的存储的文件记录,用户通过用户目录表可快速查找到自己存储的文件,从而进行相应的操作。
本发明的系统与本发明的方法对应,因此,本发明的方法实施例的技术细节同样适用于本发明的方法实施例,为减少重复,本系统实施例中不再赘叙。
尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
Claims (10)
1.一种优化存储空间的方法,其特征在于,包括:
S10文件存储方法,包括:
S110接收用户的存储指令,获取待存储文件;
S120根据所述待存储文件获取所述待存储文件的唯一标识信息;
S130根据所述待存储文件的唯一标识信息,在预存的文件信息表中查找是否存在与所述待存储文件相同的文件,若是,进入步骤S140,否则进入步骤S150;
S140在所述文件信息表中,将与所述待存储文件相同的文件的存储目录项中的用户计数值加1;并在预存的用户目录表中增加所述用户的存储目录项;
S150存储所述待存储文件,并在所述文件信息表中增加所述待存储文件的存储目录项、及在所述用户目录表中增加所述用户存储所述待存储文件的存储目录项。
2.根据权利要求1所述的一种优化存储空间的方法,其特征在于,在所述步骤S100之前还包括:
S01建立用户目录表,所述用户目录表中的存储目录项包括用户ID、文件名称、唯一标识信息、显示路径及存储路径;所述显示路径包含链接或指针指向所述存储路径;
S02建立文件信息表,所述文件信息表中的存储目录项包括唯一标识信息、文件类型、用户计数值。
3.根据权利要求1所述的一种优化存储空间的方法,其特征在于,还包括:
S20文件删除方法;包括:
S210接收用户的删除指令,获取待删除文件;
S220根据所述待删除文件,在所述文件信息表中查找到所述待删除文件的存储目录项中的用户计数值;
S230判断所述用户计数值是否大于1,若是,进入步骤S240,否则进入步骤S250;
S240将所述用户计数值减1,并在所述用户目录表中删除所述用户存储所述待删除文件的存储目录项;
S250删除所述待删除的文件、所述用户目录表中所述用户存储所述待删除文件的存储目录项、及所述文件信息表中所述待删除文件的存储目录项。
4.根据权利要求1所述的一种优化存储空间的方法,其特征在于,还包括:
S30文件修改方法;包括:
S310接收用户的修改指令,获取待修改文件;
S320判断所述待修改文件在所述文件信息表中的用户计数值是否大于1,若是,则进入步骤S330,否则进入步骤S340;
S330在所述文件信息表中,将所述待修改文件的用户计数值减1;获取所述待修改文件的副本,并在所述待修改文件的副本上执行相应的修改操作,进入步骤S350;
S340删除所述待修改文件在所述文件信息表中的存储目录项;并在所述待修改文件上执行相应的修改操作,进入步骤S350;
S350删除所述用户目录表中所述用户存储所述待修改文件的存储目录项;并获取修改后的文件的唯一标识信息;
S360根据所述修改后的文件的唯一标识信息,在所述文件信息表中查找是否存在与所述修改后的文件相同的文件,若是,进入步骤S370;否则,进入步骤S380;
S370在所述文件信息表中,将与所述修改后的文件相同的文件的存储目录项中的用户计数值加1,进入步骤S390;
S380存储所述修改后的文件,并在所述文件信息表中增加所述修改后的文件的存储目录项,进入步骤S390;
S390在所述用户目录表中增加所述用户存储所述修改后的文件的存储目录项。
5.根据权利要求1-4任一项所述的一种优化存储空间的方法,其特征在于,所述唯一标识信息为文件的哈希值。
6.一种优化存储空间的系统,其特征在于,包括:接收模块、获取模块、查找判断模块、存储模块、操作模块及写入模块,所述查找判断模块分别与所述接收模块、获取模块、存储模块、操作模块及写入模块相连,其中:
所述优化存储空间的系统存储文件包括:
所述接收模块接收用户的存储指令,获取待存储文件;
所述获取模块根据所述带存储文件,获取所述带存储文件的唯一标识信息;
所述查找判断模块根据所述待存储文件的唯一标识信息,在所述存储模块预存的文件信息表中查找是否存在与所述待存储文件相同的文件,若是,则通过所述操作模块在所述文件信息表中,将与所述待存储文件相同的文件的存储目录项中的用户计数值加1,并通过所述写入模块在所述存储模块预存的用户目录表中增加所述用户的存储目录项;
若所述查找判断模块在所述文件信息表中未查找到与所述待存储文件相同的文件,则通过所述存储模块存储所述待存储文件,并通过所述写入模块在所述文件信息表中增加所述待存储文件的存储目录项、及在所述用户目录表中增加所述用户存储所述待存储文件的存储目录项。
7.根据权利要求6所述的一种优化存储空间的系统,其特征在于,还包括与所述存储模块相连的建表模块,其中:
所述建表模块建立用户目录表,并通过所述存储模块进行存储;所述用户目录表中的存储目录项包括用户ID、文件名称、唯一标识信息、显示路径及存储路径;所述显示路径包含链接或指针指向所述存储路径;
所述建表模块还建立文件信息表,并通过所述存储模块进行存储;所述文件信息表中的存储目录项包括唯一标识信息、文件类型、用户计数值。
8.根据权利6所述的一种优化存储空间的系统,其特征在于,还包括与所述查找判断模块相连的删除模块;所述优化存储空间的系统删除文件包括:
所述接收模块接收用户的删除指令,获取待删除文件;
所述查找判断模块根据所述待删除文件,在所述文件信息表中查找到所述待删除文件的存储目录项中的用户计数值;
所述查找判断模块判断所述用户计数值是否大于1,若是,通过所述操作模块将所述用户计数值减1,并通过所述删除模块在所述用户目录表中删除所述用户存储所述待删除文件的存储目录项;
若所述查找判断模块判断所述用户计数值等于1,则通过所述删除模块删除所述待删除的文件、所述用户目录表中所述用户存储所述待删除文件的存储目录项、及所述文件信息表中所述待删除文件的存储目录项。
9.根据权利要求8所述的一种优化存储空间的系统,其特征在于,所述优化存储空间的系统修改文件包括:
所述接收模块接收用户的修改指令,获取待修改文件;
所述判断查找模块判断所述待修改文件在所述文件信息表中的用户计数值是否大于1,若是,则通过所述操作模块再所述文件信息表中将所述待修改文件的用户计数值减1;通过所述获取模块获取所述待修改文件的副本,并通过所述操作模块在所述待修改文件的副本上执行相应的修改操作;否则,通过所述删除模块删除所述待修改文件在所述文件信息表中的存储目录项,并通过所述操作模块在所述待修改文件上执行相应的修改操作;
所述删除模块删除所述用户目录表中所述用户存储所述待修改文件的存储目录项;所述获取模块获取修改后的文件的唯一标识信息;
所述查找判断模块根据所述修改后的文件的唯一标识信息,在所述文件信息表中查找是否存在与所述修改后的文件相同的文件,若是,则通过所述操作模块在所述文件信息表中,将与所述修改后的文件相同的文件的存储目录项中的用户计数值加1;否则,通过所述存储模块存储所述修改后的文件,并通过所述写入模块在所述文件信息表中增加所述修改后的文件的存储目录项;
所述写入模块还在所述用户目录表中增加所述用户存储所述修改后的文件的存储目录项。
10.根据权利要求6-9任一项所述的一种优化存储空间的系统,其特征在于,所述唯一标识信息为文件的哈希值。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710696764.2A CN107577423A (zh) | 2017-08-15 | 2017-08-15 | 一种优化存储空间的方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710696764.2A CN107577423A (zh) | 2017-08-15 | 2017-08-15 | 一种优化存储空间的方法及系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN107577423A true CN107577423A (zh) | 2018-01-12 |
Family
ID=61034383
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710696764.2A Pending CN107577423A (zh) | 2017-08-15 | 2017-08-15 | 一种优化存储空间的方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107577423A (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108595367A (zh) * | 2018-04-25 | 2018-09-28 | 银川华联达科技有限公司 | 一种基于局域网内计算机集群的服务器系统 |
CN109582642A (zh) * | 2018-11-08 | 2019-04-05 | 网宿科技股份有限公司 | 文件存储方法、删除方法、服务器及存储介质 |
CN109857548A (zh) * | 2019-01-04 | 2019-06-07 | 平安科技(深圳)有限公司 | 存储空间优化方法、装置、计算机设备及存储介质 |
CN110888842A (zh) * | 2019-12-02 | 2020-03-17 | 中国银行股份有限公司 | 一种文件存储方法、文件查询方法、装置及设备 |
CN111090824A (zh) * | 2019-12-23 | 2020-05-01 | 百度国际科技(深圳)有限公司 | 内容处理方法和装置 |
CN113836099A (zh) * | 2021-09-15 | 2021-12-24 | 维沃移动通信有限公司 | 信息处理方法和装置 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080172430A1 (en) * | 2007-01-11 | 2008-07-17 | Andrew Thomas Thorstensen | Fragmentation Compression Management |
CN102419770A (zh) * | 2011-11-23 | 2012-04-18 | 中兴通讯股份有限公司 | 文件共享系统及实现文件共享的方法、文件索引服务设备 |
CN103002029A (zh) * | 2012-11-26 | 2013-03-27 | 北京百度网讯科技有限公司 | 上传文件的管理方法、系统和客户端 |
CN104361034A (zh) * | 2014-10-27 | 2015-02-18 | 浪潮(北京)电子信息产业有限公司 | 一种云存储的文件管理方法及装置 |
CN106649721A (zh) * | 2016-12-22 | 2017-05-10 | 创新科存储技术有限公司 | 一种文件排重方法和装置 |
-
2017
- 2017-08-15 CN CN201710696764.2A patent/CN107577423A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080172430A1 (en) * | 2007-01-11 | 2008-07-17 | Andrew Thomas Thorstensen | Fragmentation Compression Management |
CN102419770A (zh) * | 2011-11-23 | 2012-04-18 | 中兴通讯股份有限公司 | 文件共享系统及实现文件共享的方法、文件索引服务设备 |
CN103002029A (zh) * | 2012-11-26 | 2013-03-27 | 北京百度网讯科技有限公司 | 上传文件的管理方法、系统和客户端 |
CN104361034A (zh) * | 2014-10-27 | 2015-02-18 | 浪潮(北京)电子信息产业有限公司 | 一种云存储的文件管理方法及装置 |
CN106649721A (zh) * | 2016-12-22 | 2017-05-10 | 创新科存储技术有限公司 | 一种文件排重方法和装置 |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108595367A (zh) * | 2018-04-25 | 2018-09-28 | 银川华联达科技有限公司 | 一种基于局域网内计算机集群的服务器系统 |
CN108595367B (zh) * | 2018-04-25 | 2021-12-10 | 广州高专资讯科技有限公司 | 一种基于局域网内计算机集群的服务器系统 |
CN109582642A (zh) * | 2018-11-08 | 2019-04-05 | 网宿科技股份有限公司 | 文件存储方法、删除方法、服务器及存储介质 |
WO2020093501A1 (zh) * | 2018-11-08 | 2020-05-14 | 网宿科技股份有限公司 | 文件存储方法、删除方法、服务器及存储介质 |
EP3876106A4 (en) * | 2018-11-08 | 2021-12-29 | Wangsu Science & Technology Co., Ltd. | File storage method and deletion method, server, and storage medium |
CN109857548A (zh) * | 2019-01-04 | 2019-06-07 | 平安科技(深圳)有限公司 | 存储空间优化方法、装置、计算机设备及存储介质 |
CN109857548B (zh) * | 2019-01-04 | 2023-08-22 | 平安科技(深圳)有限公司 | 存储空间优化方法、装置、计算机设备及存储介质 |
CN110888842A (zh) * | 2019-12-02 | 2020-03-17 | 中国银行股份有限公司 | 一种文件存储方法、文件查询方法、装置及设备 |
CN111090824A (zh) * | 2019-12-23 | 2020-05-01 | 百度国际科技(深圳)有限公司 | 内容处理方法和装置 |
CN111090824B (zh) * | 2019-12-23 | 2023-09-19 | 百度国际科技(深圳)有限公司 | 内容处理方法和装置 |
CN113836099A (zh) * | 2021-09-15 | 2021-12-24 | 维沃移动通信有限公司 | 信息处理方法和装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107577423A (zh) | 一种优化存储空间的方法及系统 | |
CN104462549B (zh) | 一种数据处理方法和装置 | |
CN108566296B (zh) | 网络设备分层方法、网络管理设备及计算机可读存储介质 | |
CN105224532B (zh) | 数据处理方法及装置 | |
CN104516974B (zh) | 一种文件系统目录项的管理方法及装置 | |
CN110399348A (zh) | 文件重删方法、装置、系统及计算机可读存储介质 | |
CN106161193B (zh) | 一种邮件处理方法、装置和系统 | |
CN105589943B (zh) | 搜索结果页面的图片适应性处理的方法、装置和服务器 | |
CN106407224A (zh) | 一种键值存储系统中文件压实的方法和装置 | |
CN106557499A (zh) | HBase二级索引创建方法和装置 | |
CN106202416A (zh) | 列表数据写方法和装置、列表数据读取方法和装置 | |
CN107247722A (zh) | 一种文件扫描方法、装置及智能终端 | |
CN110399546A (zh) | 基于网络爬虫的链接去重方法、装置、设备及存储介质 | |
CN108897859A (zh) | 一种元数据检索方法、装置、设备及计算机可读存储介质 | |
CN104486448B (zh) | 一种数据处理方法及装置 | |
CN103701653B (zh) | 一种接口热插拔配置数据的处理方法及网络配置服务器 | |
CN104636368B (zh) | 数据检索方法、装置及服务器 | |
CN110245129A (zh) | 一种分布式全局数据去重方法和装置 | |
CN109740133A (zh) | 基于人工智能的汇总邮件方法、装置、设备及存储介质 | |
CN111045988A (zh) | 文件查找方法、设备和计算机程序产品 | |
CN111324483B (zh) | 一种数据恢复方法、装置以及相关设备 | |
CN107992402A (zh) | 日志管理方法及日志管理装置 | |
CN111046106A (zh) | 缓存数据同步方法、装置、设备及介质 | |
CN101414299B (zh) | 复合文档的修复方法和装置 | |
CN106657247A (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 | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20201105 Address after: 318015 no.2-3167, zone a, Nonggang City, no.2388, Donghuan Avenue, Hongjia street, Jiaojiang District, Taizhou City, Zhejiang Province Applicant after: Taizhou Jiji Intellectual Property Operation Co.,Ltd. Address before: 201616 Shanghai city Songjiang District Sixian Road No. 3666 Applicant before: Phicomm (Shanghai) Co.,Ltd. |
|
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20180112 |