CN102890684A - 上传文件夹时动态调整空间容量的方法及系统 - Google Patents

上传文件夹时动态调整空间容量的方法及系统 Download PDF

Info

Publication number
CN102890684A
CN102890684A CN2011102055772A CN201110205577A CN102890684A CN 102890684 A CN102890684 A CN 102890684A CN 2011102055772 A CN2011102055772 A CN 2011102055772A CN 201110205577 A CN201110205577 A CN 201110205577A CN 102890684 A CN102890684 A CN 102890684A
Authority
CN
China
Prior art keywords
local file
server
file
upload
user
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
CN2011102055772A
Other languages
English (en)
Other versions
CN102890684B (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.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen 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 Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN201110205577.2A priority Critical patent/CN102890684B/zh
Publication of CN102890684A publication Critical patent/CN102890684A/zh
Application granted granted Critical
Publication of CN102890684B publication Critical patent/CN102890684B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本发明涉及一种上传文件夹时动态调整空间容量的方法及系统。该方法包括以下步骤:获取用户上传文件夹的请求;遍历所述文件夹,获取所述文件夹中的本地文件信息;将所述本地文件信息与服务器上的文件信息进行比对,对本地文件进行标记,所述标记包括第一标识和第二标识,获取所述标记为第二标识的本地文件的空间容量,并在服务器上预先分配所述空间容量;开始上传本地文件,获取所述上传的本地文件的标记,判断在服务器上是否存在所述本地文件,生成判断结果,获取用户对本地文件的操作,并根据用户操作、判断结果及标记动态调整空间容量。上述上传文件夹时动态调整空间容量的方法及系统,保证文件夹的正常上传且能提高分配空间容量的精确率。

Description

上传文件夹时动态调整空间容量的方法及系统
【技术领域】
本发明涉及计算机处理技术,特别涉及一种上传文件夹时动态调整空间容量的方法及系统。
【背景技术】
上传文件夹到服务器上,服务器的硬盘空间容量会分配文件夹大小的空间容量。
传统的扣去空间容量的方法主要有两种,一种是每一次上传文件夹,扫描该文件夹计算出该文件夹总大小后,一次性分配服务器的硬盘总空间,但若上传任务暂停,且对文件夹在本地进行修改后,再续传可能会导致上传分配的硬盘空间容量不精确;另一种是每一次上传文件夹,先不分配文件夹总大小,而是每发起一个文件的上传,再分配该文件占据的相应的空间容量,但是当多个文件并行上传时,部分文件可能会因服务器的硬盘空间容量不足,而导致上传失败。
【发明内容】
基于此,有必要提供一种上传文件夹时动态调整空间容量的方法,保证文件夹的正常上传且能提高分配空间容量的精确率。
一种上传文件夹时动态调整空间容量的方法,包括以下步骤:
获取用户上传文件夹的请求;
遍历所述文件夹,获取所述文件夹中的本地文件信息;
将所述本地文件信息与服务器上的文件信息进行比对,对本地文件进行标记,所述标记包括第一标识和第二标识,获取所述标记为第二标识的本地文件的空间容量,并在服务器上预先分配所述空间容量,其中,所述第一标识表示所述本地文件在服务器上存在,所述第二标识表示所述本地文件在服务器上不存在;
开始上传本地文件,获取所述上传的本地文件的标记,判断在服务器上是否存在所述本地文件,生成判断结果,获取用户对本地文件的操作,并根据用户操作、判断结果及标记动态调整服务器上空间容量。
优选地,所述在开始上传本地文件,获取所述上传的本地文件的标记为第一标识,当判断出在服务器上存在所述本地文件时,则进一步判断所述本地文件与服务器上已存在的本地文件是否匹配,若匹配,则跳过上传该本地文件,且不需调整服务器上空间容量;若不匹配,获取用户对本地文件的操作,根据用户操作动态调整服务器上空间容量;
当判断出在服务器上不存在所述本地文件时,上传所述本地文件,在服务器上分配所述本地文件上传所需空间容量。
优选地,若不匹配,获取用户对本地文件的操作,根据用户操作动态调整服务器上空间容量的具体步骤为:
当获取到用户对本地文件的重命名操作时,上传重命名操作后的本地文件,在服务器上分配所述本地文件上传所需的空间容量;
当获取到用户对本地文件的替换操作时,上传所述本地文件,删除服务器上的已存在的本地文件,在服务器上释放删除的已存在的本地文件所占空间容量,分配该本地文件上传所需空间容量。
优选地,所述在开始上传本地文件,获取所述上传的本地文件的标记为第二标识,当判断出在服务器上存在所述本地文件时,则进一步判断所述本地文件与服务器上已存在的本地文件是否匹配,若匹配,跳过上传该本地文件,且在服务器上将预先分配的所述本地文件上传所需空间容量释放;若不匹配,获取用户对本地文件的操作,根据用户操作动态调整服务器上空间容量;
当判断出在服务器上不存在所述本地文件时,上传所述本地文件,不需调整服务器上空间容量。
优选地,若不匹配,获取用户对本地文件的操作,根据用户操作动态调整服务器上空间容量的具体步骤为:
当获取到用户对本地文件的重命名操作时,上传重命名操作后的本地文件,不需调整服务器上空间容量;
当获取到用户对本地文件的替换操作时,上传所述本地文件,删除服务器上的已存在的本地文件,在服务器上释放删除的已存在的本地文件所占空间容量。
优选地,还包括步骤:
获取用户对所述文件夹中的本地文件的删除操作;
获取删除的本地文件的标记;
当所述本地文件的标记为第一标识时,不需调整服务器空间容量;
当所述本地文件的标记为第二标识时,在服务器上将预先分配的所述本地文件上传所需空间容量释放。
此外,还有必要提供一种上传文件夹时动态调整空间容量的系统,保证文件夹的正常上传且能提高分配空间容量的精确率。
一种上传文件夹时动态调整空间容量的系统,包括:
信息获取模块,用于获取用户上传文件夹的请求;
遍历模块,用于遍历所述文件夹,获取所述文件夹中的本地文件信息;
预处理模块,用于将所述本地文件信息与服务器上的文件信息进行比对,对本地文件进行标记,所述标记包括第一标识和第二标识,获取所述标记为第二标识的本地文件的空间容量,并在服务器上预先分配所述空间容量,其中,所述第一标识表示所述本地文件在服务器上存在,所述第二标识表示所述本地文件在服务器上不存在;
判断模块,用于在上传模块开始上传本地文件,判断在服务器上是否存在所述本地文件,生成判断结果;
所述信息获取模块还用于获取所述上传的本地文件的标记及用户对本地文件的操作;
容量调整模块,用于根据用户操作、判断结果及标记动态调整服务器上空间容量。
优选地,所述信息获取模块获取所述上传的本地文件的标记为第一标识,当所述判断模块判断出在服务器上存在所述本地文件时,则进一步判断所述本地文件与服务器上已存在的本地文件是否匹配,在匹配时,所述上传模块跳过上传该本地文件,且所述容量调整模块不需调整服务器上空间容量;不匹配时,所述信息获取模块还用于获取用户对本地文件的操作,所述容量调整模块还用于根据用户操作动态调整服务器上空间容量;
当所述判断模块判断出在服务器上不存在所述本地文件时,所述上传模块上传所述本地文件,所述容量调整模块还用于在服务器上分配上传所述本地文件所需空间容量。
优选地,所述判断模块在判断出所述本地文件与服务器上已存在的本地文件不匹配,当所述信息获取模块获取到用户对本地文件的重命名操作时,所述上传模块还用于上传重命名操作后的本地文件,所述容量调整模块还用于在服务器上分配所述本地文件上传所需的空间容量;当所述信息获取模块获取到用户对本地文件的替换操作时,所述上传模块上传所述本地文件,所述容量调整模块还用于删除服务器上的已存在的本地文件,在服务器上释放删除的已存在的本地文件所占空间容量,分配上传的该本地文件所需空间容量。
优选地,所述信息获取模块获取所述上传的本地文件的标记为第二标识,当所述判断模块判断出在服务器上存在所述本地文件时,则进一步判断所述本地文件与服务器上已存在的本地文件是否匹配,在匹配时,所述上传模块跳过上传该本地文件,且所述容量调整模块还用于在服务器上将预先分配的所述本地文件上传所需空间容量释放;在不匹配时,所述信息获取模块还用于获取用户对本地文件的操作,所述容量调整模块还用于根据用户操作动态调整服务器上空间容量;
当所述判断模块判断出在服务器上不存在所述本地文件时,所述上传模块还用于上传所述本地文件,所述容量调整模块不需调整服务器上空间容量。
优选地,所述判断模块在判断出所述本地文件与服务器上已存在的本地文件不匹配,当所述信息获取模块获取到用户对本地文件的重命名操作时,所述上传模块还用于上传重命名操作后的本地文件,所述容量调整模块不需调整服务器上空间容量;
当所述信息获取模块获取到用户对本地文件的替换操作时,所述上传模块还用于上传所述本地文件,所述容量调整模块还用于删除服务器上的已存在的本地文件,在服务器上释放删除的已存在的本地文件所占空间容量。
优选地,所述信息获取模块还用于获取用户对所述文件夹中的本地文件的删除操作;所述信息获取模块获取删除的本地文件的标记,当所述标记为第一标识时,所述容量调整模块不需调整服务器空间容量;当所述标记为第二标识时,所述容量调整模块还用于在服务器上将预先分配的所述本地文件上传所需空间容量释放。
上述上传文件夹时动态调整空间容量的方法及系统,采用遍历上传文件夹,获取该文件夹中的所有本地文件信息,将本地信息与服务器上的文件信息进行比对后,对本地文件进行标记,且预先分配在服务器上不存在的本地文件所需的空间容量,在上传本地文件时,再获取本地文件的标记,并判断该本地文件是否在服务器上存在,生成判断结果,并获取用户操作,根据本地文件的标记、用户操作及判断结果,确定分配或释放服务器空间容量,动态调整服务器空间容量,保证文件夹的正常上传且能提高分配空间容量的精确率。
【附图说明】
图1为一个实施例中上传文件夹时动态调整空间容量的方法流程图;
图2为另一个实施例中上传文件夹时动态调整空间容量的方法流程图;
图3为另一个实施例中上传文件夹时动态调整空间容量的方法流程图;
图4为一个实施例中上传文件夹时动态调整空间容量的系统结构示意图;
图5为另一个实施例中上传文件夹时动态调整空间容量的系统结构示意图。
【具体实施方式】
下面结合具体的实施例及附图说明对技术方案进行详细的描述。
如图1所示,在一个实施例中,一种上传文件夹时动态调整空间容量的方法,包括以下步骤:
步骤S110,获取用户上传文件夹的请求。
用户上传文件夹时,发起上传文件夹的请求,客户端获取到该请求,并将该请求发送给服务器。
步骤S120,遍历该文件夹,获取该文件夹中的本地文件信息。
获取到上传请求后,遍历该文件夹,获取该文件夹中的所有本地文件信息,记录在文件列表中,本地文件信息包括本地文件的名称和本地文件的内容。
步骤S130,将该本地文件信息与服务器上的文件信息进行比对,对本地文件进行标记,该标记包括第一标识和第二标识,获取该标记为第一标识的本地文件的空间容量,并在服务器上预先分配该空间容量,其中,第一标识表示本地文件在服务器上存在,第二标识表示本地文件在服务器上不存在。
将记录在文件列表中的所有本地文件信息分别与服务器上的文件信息进行比对,该比对可包括对本地文件的名称和本地文件的内容进行比对。对本地文件进行标记,当服务器上存在本地文件时,则对该本地文件标记第一标识(如为1),如本地文件A,服务器上也存在文件A,则对本地文件A标记第一标识,当服务器上不存在本地文件时,则对该本地文件标记第二标识(如0),如本地文件B,服务器上不存在本地文件B,则对本地文件B标记第二标识。统计标记为第二标识的本地文件的空间容量,即统计服务器上不存在的本地文件所需空间容量,并在服务器上预先分配该所需空间容量,如本地文件B和C在服务器上不存在,所需空间容量为10M,则预先在服务器上分配10M的空间容量,以便后续上传时服务器上有足够的空间容量存储本地文件B和C。
步骤S140,开始上传本地文件,获取该上传的本地文件的标记,判断在服务器上是否存在该本地文件,生成判断结果,获取用户对本地文件的操作,并根据用户操作、判断结果及标记动态调整服务器上空间容量。开始上传本地文件时,获取到该上传的本地文件的标记,标记表示该本地文件在比对时在服务器上存在或不存在,即第一标识或第二标识。
当本地文件的标记为第一标识,判断在服务器上是否存在该本地文件,若存在,获取用户对本地文件的操作,如用户对本地文件重命名操作,则上传重命名后的本地文件,并在服务器上分配该本地文件上传所需的空间容量,如用户对本地文件替换操作,则上传该本地文件,删除在服务器上已存在的本地文件,在服务器上分配上传的本地文件所需的空间容量,释放删除的已存在的本地文件所占的空间容量;若不存在,则上传该本地文件,在服务器上分配上传的本地文件所需的空间容量。其中,本地文件的标记为第一标识且在服务器上不存在是指标记后在上传时服务器上的本地文件被删除了,也就是说,在上传时在服务器上不存在该已标记过的本地文件了。
当本地文件的标记为第二标识,判断在服务器上是否存在该本地文件,若存在,获取用户对本地文件的操作,如用户对本地文件重命名操作,则上传重命名后的本地文件,不需调整服务器上空间容量,如用户对本地文件替换操作,则上传该本地文件,删除在服务器上已存在的本地文件,在服务器上释放删除的已存在的本地文件所占的空间容量;若不存在,则上传该本地文件,不需调整服务器上空间容量。本地文件的标记为第二标识且在服务器上存在是指在标记的过程中在服务器上不存在,在上传之前通过其他方式将该本地文件复制到了服务器上,上传该本地文件时,服务器上存在了该本地文件。
在一个实施例中,如图2所示,一种上传文件夹时动态调整空间容量的方法,包括以下步骤:
步骤S201,获取用户上传文件夹的请求。同步骤S110描述一样。
步骤S203,遍历该文件夹,获取该文件夹中的本地文件信息。同步骤S120描述一样。
步骤S205,将该本地文件信息与服务器上的文件信息进行比对,对本地文件进行标记,该标记包括第一标识和第二标识,获取该标记为第一标识的本地文件的空间容量,并在服务器上预先分配该空间容量,其中,第一标识表示本地文件在服务器上存在,第二标识表示本地文件在服务器上不存在。
步骤S207,开始上传本地文件,获取该上传的本地文件的标记为第一标识。
步骤S209,判断在服务器上是否存在该本地文件,若是,则执行步骤S211,若否,执行步骤S217。
步骤S211,进一步判断该本地文件与服务器上已存在的本地文件是否匹配,若匹配,则执行步骤S213,若不匹配,则执行步骤S215。本地文件与服务器上已存在的本地文件匹配是指文件内容完全一致。
步骤S213,跳过上传本地文件,且不需调整服务器上空间容量。
步骤S215,获取用户对本地文件的操作,根据用户操作动态调整服务器上空间容量。
用户对本地文件的操作可为重命名操作或替换操作。
当获取到用户对本地文件的操作为重命名操作时,上传重命名操作后的本地文件,在服务器上分配该本地文件上传所需的空间容量。该本地文件在服务器上已存在但文件内容不完全一致时,用户可对其重命名,然后由将重命名后的本地文件上传到服务器,上传时即时分配该本地文件上传所需的空间容量。
当获取到用户对本地文件的操作为替换操作时,上传该本地文件,删除服务器上的已存在的本地文件,在服务器上释放删除的已存在的本地文件所占空间容量,分配该本地文件上传所需的空间容量。该本地文件在服务器上已存在但文件内容不完全一致时,将该本地文件上传到服务器,由上传的本地文件替换服务器上已存在的本地文件。此时,需将服务器上已存在的本地文件所占的空间容量释放,同时分配上传的该本地文件所需空间容量。
步骤S217,上传本地文件,在服务器上分配该本地文件上传所需空间容量。
在一个实施例中,如图3所示,一种上传文件夹时动态调整空间容量的方法,包括以下步骤:
步骤S301,获取用户上传文件夹的请求。同步骤S110描述一样。
步骤S303,遍历该文件夹,获取该文件夹中的本地文件信息。同步骤S120描述一样。
步骤S305,将该本地文件信息与服务器上的文件信息进行比对,对本地文件进行标记,该标记包括第一标识和第二标识,获取该标记为第一标识的本地文件的空间容量,并在服务器上预先分配该空间容量,其中,第一标识表示本地文件在服务器上存在,第二标识表示本地文件在服务器上不存在。同步骤S130描述一样。
步骤S307,开始上传本地文件,获取该上传的本地文件的标记为第二标识。
步骤S309,判断在服务器上是否存在该本地文件,若是,则执行步骤S311,若否,执行步骤S317。
步骤S311,进一步判断该本地文件与服务器上已存在的本地文件是否匹配,若匹配,则执行步骤S313,若不匹配,则执行步骤S315。本地文件与服务器上已存在的本地文件匹配是指文件内容完全一致。
步骤S313,跳过上传本地文件,且在服务器将预先分配的该本地文件上传所需空间容量释放。
步骤S315,获取用户对本地文件的操作,根据用户操作动态调整服务器上空间容量。
用户对本地文件的操作可为重命名操作或替换操作。
当获取到用户对本地文件的操作为重命名操作时,上传重命名操作后的本地文件,不需调整服务器上空间容量。该本地文件在服务器上已存在但文件内容不完全一致时,用户可对其重命名,然后由将重命名后的本地文件上传到服务器,因预先在服务器上分配了该本地文件上传所需的空间容量,故不需再调整服务器上空间容量。
当获取到用户对本地文件的操作为替换操作时,上传该本地文件,删除服务器上的已存在的本地文件,在服务器上释放删除的已存在的本地文件所占空间容量。该本地文件在服务器上已存在但文件内容不完全一致时,将该本地文件上传到服务器,由上传的本地文件替换服务器上已存在的本地文件。此时,需将服务器上已存在的本地文件所占的空间容量释放,因预先在服务器上分配了该本地文件上传所需的空间容量,故不需分配该本地文件上传所需空间容量。
步骤S317,上传本地文件,不需调整服务器上空间容量。该本地文件在服务器上不存在时,上传该本地文件,因预先在服务器上分配了该本地文件上传所需的空间容量,故不需分配该本地文件上传所需空间容量。
优选的实施例中,上述上传文件夹时动态调整空间容量的方法,还包括步骤:获取用户对所述文件夹中的本地文件的删除操作;获取删除的本地文件的标记。
当获取删除的本地文件的标记为第一标识,即表示为在比对时本地文件在服务器上存在,不需调整服务器上空间容量。因本地文件的标记为第一标识时,在上传时即时分配所需空间容量,因被删除,空间容量不需调整。该删除的本地文件不论其是否与服务器上的文件匹配,均不需调整空间容量。
当获取删除的本地文件的标记为第二标识,即表示为在比对时本地文件在服务器上不存在,将预先分配的该本地文件上传所需空间容量释放。因本地文件的标记为第二标识时,预先分配了该本地文件上传所需空间容量,该本地文件被删除后,需释放预先分配的空间容量。该删除的本地文件不论其是否与服务器上的文件匹配,均需释放预先分配的该本地文件上传所需空间容量。
优选的实施例中,上传文件夹时动态调整空间容量的方法还包括步骤:设置用户对上传文件夹中的所有本地文件的操作权限。限制了用户对上传文件夹中所有本地文件的操作,用户无法进行修改时,采用上述动态调整空间容量的方法可更加精确的分配空间容量。
如图4所示,在一个实施例中,一种上传文件夹时动态调整空间容量的系统,包括信息获取模块410、遍历模块420、预处理模块430、上传模块440、判断模块450和容量调整模块460。
信息获取模块410用于获取用户上传文件夹的请求。用户上传文件夹时,发起上传文件夹的请求,信息获取模块410获取到该请求。
遍历模块420用于遍历该文件夹,获取该文件夹中的本地文件信息。获取到上传请求后,遍历模块420遍历该文件夹,获取该文件夹中的所有本地文件信息,记录在文件列表中,本地文件信息包括本地文件的名称和本地文件的内容。
预处理模块430用于将该本地文件信息与服务器上的文件信息进行比对,对本地文件进行标记,该标记包括第一标识和第二标识,获取该标记为第二标识的本地文件的空间容量,并在服务器上预先分配所述空间容量,其中,该第一标识表示所述本地文件在服务器上存在,该第二标识表示所述本地文件在服务器上不存在。
预处理模块430将记录在文件列表中的所有本地文件信息分别与服务器上的文件信息进行比对,该比对可包括对本地文件的名称和本地文件的内容进行比对。预处理模块430对本地文件进行标记,当服务器上存在本地文件时,则标记该本地文件为第一标识(如为1),如本地文件A,服务器上也存在文件A,则对本地文件A标记第一标识,当服务器上不存在的本地文件时,则对该本地文件标记第二标识(如0),如本地文件B,服务器上不存在本地文件B,对本地文件B标记第二标识。预处理模块430统计标记为第二标识的本地文件的空间容量,即统计服务器上不存在的本地文件所需空间容量,并在服务器上预先分配该所需空间容量,如本地文件B和C在服务器上不存在,所需空间容量为2M,则预先在服务器上预先分配2M的空间容量,以便后续上传时服务器上有足够的空间容量存储本地文件B和C。
判断模块450用于在上传模块440开始上传本地文件,判断在服务器上是否存在所述本地文件,生成判断结果。
信息获取模块410还用于获取该上传的本地文件的标记及用户对本地文件的操作。获取到该上传的本地文件的标记,标记表示该本地文件在比对时在服务器上存在或不存在,即第一标识或第二标识。获取到用户的对本地文件的操作可为重命名操作或替换操作。
容量调整模块460用于根据用户操作、判断结果及标记动态调整服务器上空间容量。
当本地文件的标记为第一标识,判断模块450判断在服务器上是否存在该本地文件,若存在,信息获取模块410获取用户对本地文件的操作,如用户对本地文件重命名操作,则上传模块440上传重命名后的本地文件,容量调整模块460在服务器上分配该本地文件上传所需的空间容量,如用户对本地文件替换操作,则上传模块440上传该本地文件,容量调整模块460删除在服务器上已存在的本地文件,在服务器上分配上传的本地文件所需的空间容量,释放删除的已存在的本地文件所占的空间容量;若不存在,则上传模块440上传该本地文件,容量调整模块460在服务器上分配上传的本地文件所需的空间容量。其中,本地文件的标记为第一标识且在服务器上不存在是指标记后在上传时服务器上的本地文件被删除了,也就是说,在上传时在服务器上不存在该已标记过的本地文件了。
当本地文件的标记为第二标识,判断模块450判断在服务器上是否存在该本地文件,若存在,信息获取模块410获取用户对本地文件的操作,如用户对本地文件重命名操作,则上传模块440上传重命名后的本地文件,容量调整模块460不需调整服务器上空间容量,如用户对本地文件替换操作,则上传模块440上传该本地文件,容量调整模块460删除在服务器上已存在的本地文件,在服务器上释放删除的已存在的本地文件所占的空间容量;若不存在,则上传模块440上传该本地文件,容量调整模块460不需调整服务器上空间容量。本地文件的标记为第二标识且在服务器上存在是指在标记的过程中在服务器上不存在,在上传之前通过其他方式将该本地文件复制到了服务器上,上传该本地文件时,服务器上存在了该本地文件。
优选的实施例中,信息获取模块410获取该上传的本地文件的标记为第一标识,当判断模块450判断出在服务器上存在该本地文件时,则进一步判断该本地文件与服务器上已存在的本地文件是否匹配,在匹配时,上传模块440跳过上传该本地文件,且容量调整模块460不需调整服务器上空间容量;不匹配时,信息获取模块410还用于获取用户对本地文件的操作,容量调整模块460还用于根据用户操作动态调整服务器上空间容量。
判断模块450在判断出该本地文件与服务器上已存在的本地文件不匹配,信息获取模块410获取的用户对本地文件的操作可为重命名操作或替换操作。
当信息获取模块410获取到用户对本地文件的重命名操作时,上传模块440上传重命名操作后的本地文件,容量调整模块460还用于在服务器上分配该本地文件上传所需的空间容量。该本地文件在服务器上已存在但文件内容不完全一致时,用户可对其重命名,然后由将重命名后的本地文件上传到服务器,上传时即时分配该本地文件上传所需的空间容量。
当信息获取模块410获取到用户对本地文件的替换操作时,上传模块440上传该本地文件,容量调整模块460还用于删除服务器上的已存在的本地文件,在服务器上释放删除的已存在的本地文件所占空间容量,分配该本地文件上传所需空间容量。该本地文件在服务器上已存在但文件内容不完全一致时,将该本地文件上传到服务器,由上传的本地文件替换服务器上已存在的本地文件。此时,需将服务器上已存在的本地文件所占的空间容量释放,同时分配上传的该本地文件所需空间容量。
当判断模块450判断出在服务器上不存在该本地文件时,上传模块440上传该本地文件,容量调整模块460还用于在服务器上分配上传该本地文件所需空间容量。
优选的实施例中,信息获取模块410获取该上传的本地文件的标记为第二标识,当判断模块450判断出在服务器上存在该本地文件时,则进一步判断该本地文件与服务器上已存在的本地文件是否匹配,若匹配,上传模块440跳过上传该本地文件,且容量调整模块460还用于在服务器上将预先分配的该本地文件上传所需空间容量释放;若不匹配,信息获取模块410还用于获取用户对本地文件的操作,容量调整模块460还用于根据用户操作动态调整服务器上空间容量。
判断模块450在判断出该本地文件与服务器上已存在的本地文件不匹配,信息获取模块410获取用户对本地文件的操作可为重命名操作或替换操作。
当信息获取模块410获取到用户对本地文件的重命名操作时,上传模块440还用于上传重命名操作后的本地文件,容量调整模块460不需调整服务器上空间容量。该本地文件在服务器上已存在但文件内容不完全一致时,用户可对其重命名,然后由将重命名后的本地文件上传到服务器,因预先在服务器上分配了该本地文件上传所需的空间容量,故不需再调整服务器上空间容量。
当信息获取模块410获取到用户对本地文件的替换操作时,上传模块440还用于上传该本地文件,容量调整模块460还用于删除服务器上的已存在的本地文件,在服务器上释放删除的已存在的本地文件所占空间容量。该本地文件在服务器上已存在但文件内容不完全一致时,将该本地文件上传到服务器,由上传的本地文件替换服务器上已存在的本地文件。此时,需将服务器上已存在的本地文件所占的空间容量释放,因预先在服务器上分配了该本地文件上传所需的空间容量,故不需分配该本地文件上传所需空间容量。
当判断模块450判断出在服务器上不存在该本地文件时,上传模块440还用于上传该本地文件,容量调整模块460不需调整服务器上空间容量。该本地文件在服务器上不存在时,上传该本地文件,因预先在服务器上分配了该本地文件上传所需的空间容量,故不需分配该本地文件上传所需空间容量。
优选的实施例中,信息获取模块410还用于获取用户对该上传文件夹中的本地文件的删除操作。信息获取模块410还用于获取删除的本地文件的标记。
当信息获取模块410获取的删除的本地文件的标记为第一标识,即表示为在比对时本地文件在服务器上存在,容量调整模块460不需调整服务器上空间容量。因本地文件的标记为第一标识时,在上传时即时分配所需空间容量,因被删除,空间容量不需调整。该删除的本地文件不论其是否与服务器上的文件匹配,均不需调整空间容量。
当信息获取模块410获取的删除的本地文件的标记为第二标识,即表示为在比对时本地文件在服务器上不存在,容量调整模块460将预先分配的该本地文件上传所需空间容量释放。因本地文件的标记为第二标识时,预先分配了该本地文件上传所需空间容量,该本地文件被删除后,需释放预先分配的空间容量。该删除的本地文件不论其是否与服务器上的文件匹配,均需释放预先分配的该本地文件上传所需空间容量。
在一个实施例中,如图5所示,上传文件夹时动态调整空间容量的系统,除了包括信息获取模块410、遍历模块420、预处理模块430、上传模块440、判断模块450和容量调整模块460,还包括权限管理模块470,权限管理模块470用于设置用户对上传文件夹中的所有本地文件的操作权限。限制了用户对上传文件夹中所有本地文件的操作,用户无法进行修改时,采用上述动态调整空间容量的方法可更加精确的扣去空间容量。
上述上传文件夹时动态调整空间容量的方法及系统,采用遍历上传文件夹,获取该文件夹中的所有本地文件信息,将本地信息与服务器上的文件信息进行比对后,对本地文件进行标记,且预先分配在服务器上不存在的本地文件所需的空间容量,在上传本地文件时,再获取本地文件的标记,并判断该本地文件是否在服务器上存在,生成判断结果,并获取用户操作,根据本地文件的标记、用户操作即判断结果,确定分配或释放服务器空间容量,动态调整服务器空间容量,保证文件夹的正常上传且能提高分配空间容量的精确率。
另外,针对本地文件的标记,本地文件是否在服务器上存在以及是否匹配,确定释放或分配空间容量,动态调整服务器上空间容量,进一步提高了调整服务器上空间容量的精确率;当用户删除了本地文件时,也可精确调整空间容量;设置用户对上传文件夹中的所有本地文件的操作权限时,更进一步保证了调整空间容量的精确率。
以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。

Claims (12)

1.一种上传文件夹时动态调整空间容量的方法,包括以下步骤:
获取用户上传文件夹的请求;
遍历所述文件夹,获取所述文件夹中的本地文件信息;
将所述本地文件信息与服务器上的文件信息进行比对,对本地文件进行标记,所述标记包括第一标识和第二标识,获取所述标记为第二标识的本地文件的空间容量,并在服务器上预先分配所述空间容量,其中,所述第一标识表示所述本地文件在服务器上存在,所述第二标识表示所述本地文件在服务器上不存在;
开始上传本地文件,获取所述上传的本地文件的标记,判断在服务器上是否存在所述本地文件,生成判断结果,获取用户对本地文件的操作,并根据用户操作、判断结果及标记动态调整服务器上空间容量。
2.根据权利要求1所述的上传文件夹时动态调整空间容量的方法,其特征在于,所述在开始上传本地文件,获取所述上传的本地文件的标记为第一标识,当判断出在服务器上存在所述本地文件时,则进一步判断所述本地文件与服务器上已存在的本地文件是否匹配,若匹配,则跳过上传该本地文件,且不需调整服务器上空间容量;若不匹配,获取用户对本地文件的操作,根据用户操作动态调整服务器上空间容量;
当判断出在服务器上不存在所述本地文件时,上传所述本地文件,在服务器上分配所述本地文件上传所需空间容量。
3.根据权利要求2所述的上传文件夹时动态调整空间容量的方法,其特征在于,若不匹配,获取用户对本地文件的操作,根据用户操作动态调整服务器上空间容量的具体步骤为:
当获取到用户对本地文件的重命名操作时,上传重命名操作后的本地文件,在服务器上分配所述本地文件上传所需的空间容量;
当获取到用户对本地文件的替换操作时,上传所述本地文件,删除服务器上的已存在的本地文件,在服务器上释放删除的已存在的本地文件所占空间容量,分配该本地文件上传所需空间容量。
4.根据权利要求1至3中任一项所述的上传文件夹时动态调整空间容量的方法,其特征在于,所述在开始上传本地文件,获取所述上传的本地文件的标记为第二标识,当判断出在服务器上存在所述本地文件时,则进一步判断所述本地文件与服务器上已存在的本地文件是否匹配,若匹配,跳过上传该本地文件,且在服务器上将预先分配的所述本地文件上传所需空间容量释放;若不匹配,获取用户对本地文件的操作,根据用户操作动态调整服务器上空间容量;
当判断出在服务器上不存在所述本地文件时,上传所述本地文件,不需调整服务器上空间容量。
5.根据权利要求4所述的上传文件夹时动态调整空间容量的方法,其特征在于,若不匹配,获取用户对本地文件的操作,根据用户操作动态调整服务器上空间容量的具体步骤为:
当获取到用户对本地文件的重命名操作时,上传重命名操作后的本地文件,不需调整服务器上空间容量;
当获取到用户对本地文件的替换操作时,上传所述本地文件,删除服务器上的已存在的本地文件,在服务器上释放删除的已存在的本地文件所占空间容量。
6.根据权利要求1所述的上传文件夹时动态调整空间容量的方法,其特征在于,还包括步骤:
获取用户对所述文件夹中的本地文件的删除操作;
获取删除的本地文件的标记;
当所述本地文件的标记为第一标识时,不需调整服务器空间容量;
当所述本地文件的标记为第二标识时,在服务器上将预先分配的所述本地文件上传所需空间容量释放。
7.一种上传文件夹时动态调整空间容量的系统,其特征在于,包括:
信息获取模块,用于获取用户上传文件夹的请求;
遍历模块,用于遍历所述文件夹,获取所述文件夹中的本地文件信息;
预处理模块,用于将所述本地文件信息与服务器上的文件信息进行比对,对本地文件进行标记,所述标记包括第一标识和第二标识,获取所述标记为第二标识的本地文件的空间容量,并在服务器上预先分配所述空间容量,其中,所述第一标识表示所述本地文件在服务器上存在,所述第二标识表示所述本地文件在服务器上不存在;
判断模块,用于在上传模块开始上传本地文件,判断在服务器上是否存在所述本地文件,生成判断结果;
所述信息获取模块还用于获取所述上传的本地文件的标记及用户对本地文件的操作;
容量调整模块,用于根据用户操作、判断结果及标记动态调整服务器上空间容量。
8.根据权利要求7所述的上传文件夹时动态调整空间容量的系统,其特征在于,所述信息获取模块获取所述上传的本地文件的标记为第一标识,当所述判断模块判断出在服务器上存在所述本地文件时,则进一步判断所述本地文件与服务器上已存在的本地文件是否匹配,在匹配时,所述上传模块跳过上传该本地文件,且所述容量调整模块不需调整服务器上空间容量;不匹配时,所述信息获取模块还用于获取用户对本地文件的操作,所述容量调整模块还用于根据用户操作动态调整服务器上空间容量;
当所述判断模块判断出在服务器上不存在所述本地文件时,所述上传模块上传所述本地文件,所述容量调整模块还用于在服务器上分配上传所述本地文件所需空间容量。
9.根据权利要求8所述的上传文件夹时动态调整空间容量的系统,其特征在于,所述判断模块在判断出所述本地文件与服务器上已存在的本地文件不匹配,当所述信息获取模块获取到用户对本地文件的重命名操作时,所述上传模块还用于上传重命名操作后的本地文件,所述容量调整模块还用于在服务器上分配所述本地文件上传所需的空间容量;当所述信息获取模块获取到用户对本地文件的替换操作时,所述上传模块上传所述本地文件,所述容量调整模块还用于删除服务器上的已存在的本地文件,在服务器上释放删除的已存在的本地文件所占空间容量,分配上传的该本地文件所需空间容量。
10.根据权利要求7至9中任一项所述的上传文件夹时动态调整空间容量的系统,其特征在于,所述信息获取模块获取所述上传的本地文件的标记为第二标识,当所述判断模块判断出在服务器上存在所述本地文件时,则进一步判断所述本地文件与服务器上已存在的本地文件是否匹配,在匹配时,所述上传模块跳过上传该本地文件,且所述容量调整模块还用于在服务器上将预先分配的所述本地文件上传所需空间容量释放;在不匹配时,所述信息获取模块还用于获取用户对本地文件的操作,所述容量调整模块还用于根据用户操作动态调整服务器上空间容量;
当所述判断模块判断出在服务器上不存在所述本地文件时,所述上传模块还用于上传所述本地文件,所述容量调整模块不需调整服务器上空间容量。
11.根据权利要求10所述的上传文件夹时动态调整空间容量的系统,其特征在于,所述判断模块在判断出所述本地文件与服务器上已存在的本地文件不匹配,当所述信息获取模块获取到用户对本地文件的重命名操作时,所述上传模块还用于上传重命名操作后的本地文件,所述容量调整模块不需调整服务器上空间容量;
当所述信息获取模块获取到用户对本地文件的替换操作时,所述上传模块还用于上传所述本地文件,所述容量调整模块还用于删除服务器上的已存在的本地文件,在服务器上释放删除的已存在的本地文件所占空间容量。
12.根据权利要求6所述的上传文件夹时动态调整空间容量的系统,其特征在于,所述信息获取模块还用于获取用户对所述文件夹中的本地文件的删除操作;所述信息获取模块获取删除的本地文件的标记,当所述标记为第一标识时,所述容量调整模块不需调整服务器空间容量;当所述标记为第二标识时,所述容量调整模块还用于在服务器上将预先分配的所述本地文件上传所需空间容量释放。
CN201110205577.2A 2011-07-21 2011-07-21 上传文件夹时动态调整空间容量的方法及系统 Active CN102890684B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201110205577.2A CN102890684B (zh) 2011-07-21 2011-07-21 上传文件夹时动态调整空间容量的方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201110205577.2A CN102890684B (zh) 2011-07-21 2011-07-21 上传文件夹时动态调整空间容量的方法及系统

Publications (2)

Publication Number Publication Date
CN102890684A true CN102890684A (zh) 2013-01-23
CN102890684B CN102890684B (zh) 2016-04-13

Family

ID=47534191

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201110205577.2A Active CN102890684B (zh) 2011-07-21 2011-07-21 上传文件夹时动态调整空间容量的方法及系统

Country Status (1)

Country Link
CN (1) CN102890684B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103249009A (zh) * 2013-04-26 2013-08-14 东莞宇龙通信科技有限公司 一种发送文件的方法、系统及移动终端
CN116759040A (zh) * 2023-08-17 2023-09-15 北方健康医疗大数据科技有限公司 一种用于医疗大数据的数据治理系统及方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060184652A1 (en) * 2005-02-16 2006-08-17 Microsoft Corporation Applications for remote differential compresssion
CN101110788A (zh) * 2006-07-20 2008-01-23 阿里巴巴公司 升级客户端软件的方法及系统
CN101657806A (zh) * 2006-12-29 2010-02-24 惠普开发有限公司 用于规划计算机系统资源需求的装置及相关方法
CN101729586A (zh) * 2008-10-24 2010-06-09 中国移动通信集团广东有限公司 数据上传方法、装置、下载方法、装置及传输方法、装置
CN102103601A (zh) * 2009-12-16 2011-06-22 北大方正集团有限公司 选取文件的方法和装置

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060184652A1 (en) * 2005-02-16 2006-08-17 Microsoft Corporation Applications for remote differential compresssion
CN101110788A (zh) * 2006-07-20 2008-01-23 阿里巴巴公司 升级客户端软件的方法及系统
CN101657806A (zh) * 2006-12-29 2010-02-24 惠普开发有限公司 用于规划计算机系统资源需求的装置及相关方法
CN101729586A (zh) * 2008-10-24 2010-06-09 中国移动通信集团广东有限公司 数据上传方法、装置、下载方法、装置及传输方法、装置
CN102103601A (zh) * 2009-12-16 2011-06-22 北大方正集团有限公司 选取文件的方法和装置

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103249009A (zh) * 2013-04-26 2013-08-14 东莞宇龙通信科技有限公司 一种发送文件的方法、系统及移动终端
CN103249009B (zh) * 2013-04-26 2016-05-18 东莞宇龙通信科技有限公司 一种发送文件的方法、系统及移动终端
CN116759040A (zh) * 2023-08-17 2023-09-15 北方健康医疗大数据科技有限公司 一种用于医疗大数据的数据治理系统及方法
CN116759040B (zh) * 2023-08-17 2024-01-09 北方健康医疗大数据科技有限公司 一种用于医疗大数据的数据治理系统及方法

Also Published As

Publication number Publication date
CN102890684B (zh) 2016-04-13

Similar Documents

Publication Publication Date Title
DE602005003553T2 (de) Audio-video-inhaltssynchronisation durch playlists
US9400828B2 (en) Hierarchical chunking of objects in a distributed storage system
US9396202B1 (en) Weakly synchronized garbage collection and compaction for aggregated, replicated object stores
EP1982263B1 (en) Automatically determining file replication mechanisms
EP3624398B1 (en) Storage capacity evaluation method and apparatus based on cdn application
DE112011106094B3 (de) Content-Sharing zwischen mobilen Terminals
US20060101204A1 (en) Storage virtualization
CN104537050B (zh) 一种批量快速创建文件系统元数据和数据的方法
CN102622185B (zh) 在多个存储单元中存储文件的方法以及存储分配方法
CN102546711B (zh) 流媒体系统中的内容存储调整方法、装置及系统
WO2005111788A3 (en) Moving real-time data events across devices in a network
CN105468372B (zh) 虚拟机模板镜像管理方法和系统、虚拟机迁移方法和系统
CN106933868A (zh) 一种调整数据分片分布的方法及数据服务器
TW200606672A (en) Media asset management system for managing video news segments and associated methods
CN103838683A (zh) 数据传输的方法及设备
DE102012218269A1 (de) Schnittstelle zur Verwaltung von Datenverschiebung in einem Speichersystem mit thin provisioning
US11023433B1 (en) Systems and methods for bi-directional replication of cloud tiered data across incompatible clusters
CN101800873B (zh) 一种视频监控数据的存储方法和设备
CN108415671B (zh) 一种面向绿色云计算的重复数据删除方法及系统
CN106469117A (zh) 一种用于虚拟机存储迁移的存储资源管理方法及装置
KR20100073154A (ko) 메타데이터 서버, 데이터 서버의 데이터 처리 방법 및 이를이용한 비대칭 클러스터 분산 파일 시스템
JPH10124482A (ja) マルチメディア情報提供装置
CN102890684A (zh) 上传文件夹时动态调整空间容量的方法及系统
GB2500237A (en) Decentralised data storage system
CN105095439A (zh) 一种图片专属安全存储云系统

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant