CN102833294B - 基于云存储的文件处理方法、系统及服务器集群系统 - Google Patents
基于云存储的文件处理方法、系统及服务器集群系统 Download PDFInfo
- Publication number
- CN102833294B CN102833294B CN201110164407.4A CN201110164407A CN102833294B CN 102833294 B CN102833294 B CN 102833294B CN 201110164407 A CN201110164407 A CN 201110164407A CN 102833294 B CN102833294 B CN 102833294B
- Authority
- CN
- China
- Prior art keywords
- file
- section
- web server
- request
- client
- 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.)
- Active
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/06—Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/45—Network directories; Name-to-address mapping
- H04L61/457—Network directories; Name-to-address mapping containing identifiers of data entities on a computer, e.g. file names
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/18—File system types
- G06F16/182—Distributed file systems
- G06F16/1824—Distributed file systems implemented using Network-attached Storage [NAS] architecture
- G06F16/183—Provision of network file services by network file servers, e.g. by using NFS, CIFS
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1097—Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Transfer Between Computers (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请公开了一种基于云存储的文件处理方法、系统及服务器集群系统,该方法包括:WEB服务器接收客户端发送的文件上传请求;WEB服务器向客户端返回服务器集群为待上传新文件生成的文件ID;客户端对新文件进行切片,并为每个切片文件生成唯一的切片ID;客户端将切片文件数据包上传给WEB服务器,切片文件数据包中包含文件ID、每个切片文件的切片ID和每个切片文件的切片数据;WEB服务器将切片文件数据包中的每个切片文件的切片数据发送到服务器集群中的对应服务终端上进行存储。本申请实施例通过对文件进行分片处理并在服务器集群中对切片文件进行分布式存储,从而使得基于服务器集群的云存储性能更加优化。
Description
技术领域
本发明涉及数据处理技术领域,特别涉及一种基于云存储的文件处理方法、系统及服务器集群系统。
背景技术
云计算(Cloud Computing)是分布式处理(Distributed Computing)、并行处理(Parallel Computing)和网格计算(Grid Computing)的发展,通过网络将庞大的计算处理程序拆分成若干较小的子程序,将这些小程序分别交由多台服务器所组成的系统进行计算,并输出计算结果。云存储是在云计算概念上延伸出来的,指通过集群应用、网格技术或分布式文件系统等功能,将网络中大量不同类型的存储设备通过应用软件集合在一起,实现协同工作,共同对外提供数据存储和业务访问功能。即当云计算系统运算和处理的核心是大量数据的存储和管理时,云计算系统就需要配置大量的存储设备,此时的云计算系统就转变为一个云存储系统,所以云存储系统就是一个以数据存储和管理为核心的云计算系统。这个存储系统由多个存储设备组成,通过集群功能、分布式文件系统或类似网格计算等功能联合起来协同工作,并通过一定的应用软件或应用接口,为用户提供一定类型的存储服务和访问服务。
现有的云存储方案都是基于整个文件进行存储,即应用软件或者用户将整个文件上传,由于以文件为单位进行存储,这容易造成资源的浪费。例如,当用户上传了一个较大的文件后,如果只修改了该文件的一小部分,此时仍需要重传整个文件;又例如,当用户增加了一个文件版本,即使新增加的文件版本与之前的文件版本差别非常小,用户同样需要将整个新的文件版本上传。由此可知,现有技术的云存储方式,使得用户需要在每一次对文件的局部修改后,都重传整个文件,这不但浪费了系统的存储空间和网络带宽,而且容易导致文件系统的访问速度下降。
发明内容
本发明实施例的目的在于提供一种基于云存储的文件处理方法、系统及服务器集群系统,以解决现有云存储方式浪费系统的存储空间和网络带宽,容易导致文件系统的访问速度下降的问题。
为解决上述技术问题,本申请实施例提供一种基于云存储的文件处理方法,是这样实现的:
一种基于云存储的文件处理方法,包括:
WEB服务器接收客户端发送的文件上传请求,所述文件上传请求用于请求向服务器集群上传新文件;
WEB服务器向所述客户端返回所述服务器集群为所述新文件生成的文件ID;
所述客户端对所述新文件进行切片,并为每个切片文件生成唯一的切片ID;
所述客户端将切片文件数据包上传给WEB服务器,所述切片文件数据包中包含文件ID、每个切片文件的切片ID和每个切片文件的切片数据;
WEB服务器将所述切片文件数据包中的每个切片文件的切片数据发送到所述服务器集群中的对应服务终端上进行存储,其中,所述服务器集群保存所述文件ID与所述切片ID的对应关系。
为解决上述技术问题,本申请实施例还提供一种基于云存储的文件处理系统,是这样实现的:
一种基于云存储的文件处理系统,包括:客户端、WEB服务器和服务器集群,
所述WEB服务器,用于接收客户端发送的文件上传请求,所述文件上传请求用于请求向服务器集群上传新文件,并向所述客户端返回所述服务器集群为所述新文件生成的文件ID;
所述客户端,用于对所述新文件进行切片,并为每个切片文件生成唯一的切片ID,将切片文件数据包上传给WEB服务器,所述切片文件数据包中包含文件ID、每个切片文件的切片ID和每个切片文件的切片数据;
所述WEB服务器,还用于将所述切片文件数据包中的每个切片文件的切片数据发送到所述服务器集群;
所述服务器集群,用于将所述每个切片文件的切片数据存储到对应的服务终端上,以及保存所述文件ID与所述切片ID的对应关系。
为解决上述技术问题,本申请实施例还提供一种基于云存储的服务器集群系统,是这样实现的:
一种基于云存储的服务器集群系统,包括:WEB服务器和服务器集群,所述服务器集群中包含若干服务终端,
所述WEB服务器,用于接收客户端发送的文件上传请求,所述文件上传请求用于请求向服务器集群上传新文件,向所述客户端返回所述服务器集群为所述新文件生成的文件ID,接收所述客户端上传的切片文件数据包,所述切片文件数据包中包含文件ID、每个切片文件的切片ID和每个切片文件的切片数据;
所述服务器集群,用于接收所述WEB服务器发送的所述切片文件数据包中的每个切片文件的切片数据,并将每个切片文件的切片数据发送到所述服务器集群中的对应服务终端上进行存储,以及保存所述文件ID与所述切片ID的对应关系。
由以上本发明实施例提供的技术方案可见,本申请实施例中WEB服务器接收客户端发送的文件上传请求后,向客户端返回服务器集群为新文件生成的文件ID,客户端对新文件进行切片,并为每个切片文件生成唯一的切片ID,将切片文件数据包上传给WEB服务器,切片文件数据包中的每个切片文件包含文件ID、每个切片文件的切片ID和每个切片文件的切片数据,WEB服务器将切片文件数据包中的每个切片文件的切片数据发送到服务器集群中的对应服务终端上进行存储。本申请实施例通过对文件进行分片处理并在服务器集群中对切片文件进行分布式存储,从而使得基于服务器集群的云存储性能更加优化;应用本申请实施例上传修改后的文件时,由于只需上传用户修改的文件切片,而无需重传整个文件,因此减少了服务器集群中的冗余数据,节省了存储空间,减少了客户端上传文件的时间。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例所应用的云存储架构的示意图;
图2为本申请基于云存储的文件处理方法的第一实施例流程图;
图3为本申请基于云存储的文件处理方法的第二实施例流程图;
图4为本申请基于云存储的文件处理方法的第三实施例流程图;
图5为本申请基于云存储的文件处理方法的第四实施例流程图;
图6为本申请基于云存储的文件处理方法的第五实施例流程图;
图7为本申请基于云存储的文件处理方法的第六实施例流程图;
图8为本申请基于云存储的文件处理系统的实施例框图;
图9为本申请基于云存储的服务器集群系统的实施例框图。
具体实施方式
在如下本发明的多个实施例中提供了一种基于云存储的文件处理方法、系统及服务器集群系统。
为了使本技术领域的人员更好地理解本发明实施例中的技术方案,并使本发明实施例的上述目的、特征和优点能够更加明显易懂,下面结合附图对本发明实施例中技术方案作进一步详细的说明。
参见图1,为本申请实施例所应用的云存储架构示意图:
该云存储架构包括:客户端、WEB服务器(WebServer)和服务器集群,其中,服务器集群进一步包括至少一个服务集群整合端(Service Manager)、每个集群服务整合端下可以连接若干服务分配端(Service Master)、每个服务分配端下可以连接若干服务终端(Service Worker)。
需要说明的是,图1中示出的服务器集群由多集群系统组成,多系统集群中包括若干单集群系统,每个单集群系统为一个服务分配端和其下连接的若干服务终端,在实际应用时,本申请实施例根据所存储文件的容量大小可以选择采用由多集群系统组成的服务器集群,也可以选择采用由单集群系统组成的服务器集群;另外,图1中仅示出了一台WEB服务器,实际应用中与客户端交互的也可以是WEB服务器集群,此时在接收到某个客户端上传的文件处理请求时,可以通过负载均衡调度将该处理请求分配到某一台WEB服务器上进行处理。综上,图1所示出的云存储架构不应视为对本申请实施例存储架构的限制。
图1中,当用户通过客户端软件对文件进行上传、下载或者删除操作时,这些操作命令可以转化为http请求,通过WEB服务器上传到服务器集群进行处理。下面将结合图1示出的系统架构对本申请基于云存储的文件处理实施例进行描述。
参见图2,为本申请基于云存储的文件处理方法的第一实施例流程图:
步骤201:WEB服务器接收客户端发送的文件上传请求,该文件上传请求用于请求向服务器集群上传新文件。
步骤202:WEB服务器向客户端返回服务器集群为新文件生成的文件ID。
具体的,WEB服务器向服务器集群发送获取新文件的文件ID的请求,服务器集群根据该请求为新文件分配文件ID,服务器集群将文件ID返回给WEB服务器,WEB服务器将文件ID发送给客户端。其中,服务器集群中存储了海量的文件,并且服务器集群为每个文件分配唯一的文件ID,例如,以数字进行顺序编号的文件ID。当为上传请求中的文件分配了唯一文件ID后,服务器集群可以进一步记录该文件ID与上传请求中所包含的信息之间的对应关系,上传请求中所包含的信息可以包括用户ID、文件名称、文件路径等,通过上述对应关系服务器集群可以对文件进行管理维护。
步骤203:客户端对新文件进行切片,并为每个切片文件生成唯一的切片ID。
具体的,客户端可对新文件按照预设长度进行分块,生成若干切片文件,其中,当分块后的剩余文件块的长度小于预设长度时,将该剩余文件块作为一个切片文件,根据每个切片文件的文件数据,通过MD5哈希函数等计算每个切片文件的切片ID,该切片ID可以唯一标识一个切片文件。
步骤204:客户端将切片文件数据包上传给WEB服务器,切片文件数据包中包含文件ID、每个切片文件的切片ID和每个切片文件的切片数据。
步骤205:WEB服务器将切片文件数据包中的每个切片文件的切片数据发送到服务器集群中的对应服务终端上进行存储,其中,服务器集群保存文件ID与切片ID的对应关系。
假设客户端首次向服务器集群上传当前文件,则客户端可首先将当前文件的文件ID和该文件所有切片文件的切片ID上传给WEB服务器,WEB服务器将包含该当前文件的文件ID和所有切片文件的切片ID的查询请求发送到服务器集群,该查询请求用于请求获取存储每个切片文件的服务终端的地址。服务器集群接收到查询请求后,可以保存该文件ID与切片ID之间的对应关系(即相当于保存了组成每个文件的切片文件的信息),服务器集群根据每个切片ID通过一致性哈希算法计算存储每个切片文件的服务终端的地址;服务器集群将服务终端的地址返回给WEB服务器,WEB服务器将切片文件数据包中的每个切片文件的切片数据按照对应的服务终端的地址发送到服务终端上进行存储,其中,服务终端可以存储每个切片文件的切片ID和切片数据的对应关系。
下面简单描述一下采用一致性哈希算法计算服务终端地址的过程:假设服务器集群中有N台服务器,将这N台服务器在逻辑上排列成一个环,环上的每一台服务器按照顺时针方向编号(编号可以取0至N-1),在计算存储某个切片文件的服务器地址时,可以用该切片文件的切片ID对N取模,假设取模后得到的余数值为K,则从上述哈希环中编号为0的服务器开始顺时针获取哈希环上的第K个服务器,则该第K个服务器即为用于存储该切片文件的服务器。
进一步,客户端在上传文件之前,可以先将重复统计请求发送给WEB服务器,以便请求统计服务器集群中是否已经存在了该文件中的切片数据,避免重复上传。即客户端首先对文件进行切片,并通过MD5哈希函数等计算每个切片文件的切片ID,然后将包含了每个切片文件的切片ID的重复统计请求上传给WEB服务器,WEB服务器将重复统计请求转发到服务器集群,服务器集群根据保存的切片ID信息查找是否已经保存过该重复统计请求中所包含的切片ID,对于已经保存的切片ID,说明服务器集群中已经保存了对应的切片文件,无需再进行重复上传,因此服务器集群将切片文件是否重复的信息发送给WEB服务器,WEB服务器将切片文件是否重复的信息发送给客户端,客户端根据切片文件是否重复的信息,将包含不重复切片文件的切片文件数据包上传给WEB服务器;后续,WEB服务器只需要向服务器集群请求存储不重复切片文件的服务终端地址,并依据该地址将不重复切片文件发送到对应服务终端上进行存储即可。
在对上传文件进行重复统计时,WEB服务器可以进一步保存用户ID和文件ID之间的对应关系,当不同用户上传同样的文件时,则WEB服务器中可以保存一个文件ID与多个用户ID之间的对应关系;同时,述服务器集群为每个切片ID设置引用计数器,每个引用计数器的计数值初始化为零,根据重复统计结果,当某个切片ID重复时,则将该切片ID的引用计数器的计数值加一。
参见图3,为本申请基于云存储的文件处理的第二实施例流程图,该实施例示出了客户端请求上传新文件的过程:
步骤301:客户端向WEBServer发送创建新文件的文件上传请求。
当用户想要上传一个新文件时,客户端生成创建新文件的文件上传请求,并将该文件上传请求发送到网络中用于处理该文件上传请求的WEBServer上。
该文件上传请求中可以包括用户ID、文件名称和文件存储路径等。
步骤302:WEBServer向ServiceManager转发文件上传请求。
当本申请实施例中的服务器集群架构为图1中所示的架构时,WEBServer需要将文件上传请求发送到服务器集群中的ServiceManager。
步骤303:ServiceManager为该新文件进行统一编码,生成文件ID。
服务器集群中包括了海量的文件,并且服务器集群中的ServiceManager可以为每个文件分配唯一的文件ID,例如,以数字进行顺序编号的文件ID。当为上传请求中的文件分配了唯一文件ID后,ServiceManager可以进一步记录该文件ID与上传请求中所包含的信息之间的对应关系,上传请求中所包含的信息可以包括用户ID、文件名称、文件路径等,通过上述对应关系服务器集群可以对文件进行管理维护。
步骤304:ServiceManager将该新文件的文件ID返回给WEBServer。
步骤305:WEBServer将新文件的文件ID返回给客户端。
参见图4,为本申请基于云存储的文件处理的第三实施例流程图,由于客户端请求上传的新文件可能是与原存储文件相比,仅修改了部分内容的新文件,因此本实施例示出了客户端上传新文件前,获取切片文件重复信息的过程:
步骤401:客户端对新文件按照预设长度进行切片,生成若干切片文件。
预设长度可以是经过试验计算得到的一个符合系统最优长度的数值,例如,优选的为128k,将新文件顺序分割成若干长度为128K的切片文件,由于新文件的长度可能不为128的整数倍,因此对于分割后剩余的不足128K的数据块,可以将其作为一个切片文件。
步骤402:客户端根据切片文件的切片数据,可通过MD5哈希函数等计算每个切片文件的切片ID。
对于分割后生成的每个切片文件,可以使用MD5哈希函数根据切片文件的切片数据生成唯一标识该切片文件的切片ID。
步骤403:客户端向WEBServer发送重复统计请求,该重复统计请求中包含每个切片文件的切片ID。
由于客户端上传的新文件可能是修改了部分数据的某个已有文件,因此如果重传所有文件数据将导致服务器集群中产生冗余数据,因此本申请实施例可以向服务器集群查询新文件中的每个切片文件是否重复。客户端向WEBServer发送重复统计请求,该重复统计请求中包含每个切片文件的切片ID。
步骤404:WEBServer向ServiceManager转发重复统计请求。
步骤405:ServiceManager获取用于存储切片文件的ServiceMaster。
由于本申请实施例采用了如图1所示的云存储服务器集群架构,因此在服务器集群内部,处于上层的ServiceManager可以通过一致性哈希算法获取用于存储切片文件的ServiceMaster,同理,处于上层的ServiceManager可以通过一致性哈希算法获取用于存储切片文件的ServiceWorker。
其中,ServiceManager和ServiceMaster根据切片ID,分别通过一致性哈希算法获取下层的ServiceMaster和ServiceWorker时的过程与步骤205中的描述一致,在此不再赘述。ServiceManager在向某个ServiceMaster转发重复统计请求时,该重复统计请求中包含了通过一致性哈希算法计算的由该ServiceMaster存储的切片数据的对应的切片ID。
步骤406:ServiceManager将重复统计请求转发给获取的ServiceMaster。
步骤407:ServiceMaster通过一致性哈希算法计算存储切片文件的ServiceWorker的地址。
ServiceMaster在向某个ServiceWorker转发重复统计请求时,该重复统计请求中包含了通过一致性哈希算法计算的由该ServiceWorker存储的切片数据的对应的切片ID。
步骤408:ServiceMaster按照ServiceWorker的地址将重复统计请求转发给相应的ServiceWorker。
步骤409:ServiceWorker查找是否已保存重复统计请求中的切片ID。
如果从ServiceWorker中查找到重复统计请求中的切片ID,则说明该ServiceWorker中已经保存了与该切片ID对应的切片数据,即该切片ID对应的切片数据已经重复,无需再上传。
步骤410:ServiceWorker将切片文件是否重复的信息发送给ServiceMaster。
ServiceWorker可以仅将统计出的不重复的切片文件的切片ID返回给ServiceMaster,同时返回用于存储该切片文件的ServiceWorker的地址。
步骤411:ServiceMaster将切片文件是否重复的信息转发给ServiceManager。
步骤412:ServiceManager将切片文件是否重复的信息转发给WEBServer。
WEBServer保存了需要上传的不重复的切片文件的切片ID和对应的ServiceWorker的地址。
步骤413:WEBServer将切片文件是否重复的信息发送给客户端。
最终,客户端接收到的切片文件是否重复的信息中可以只包括经过重复统计后的不重复的切片文件的切片ID。
需要说明的是,如果每一次上传新文件时,ServiceManager中都保存已上传切片文件的切片ID,则每一次判断待上传切片文件是否重复的时候,可以直接将切片ID发送到ServiceManager中进行查询,如果存在该切片ID,则对应的切片文件重复,如果不存在该切片ID,则对应的切片文件不重复。
参见图5,为本申请基于云存储的文件处理的第四实施例流程图,该实施例示出了根据获取的切片文件是否重复的信息上传切片文件的过程:
步骤501:客户端向WEBServer上传不重复的切片文件的切片ID和切片数据。
在图4示出的第三实施例中,客户端已经获得了待上传新文件中不重复的切片文件信息,因此本实施例中客户端只需要向WEBServer上传不重复的切片文件的切片ID和切片数据即可。
步骤502:WEBServer根据接收到的切片文件的切片ID查找用于存储该切片文件的ServiceWorker的地址。
根据前述第三实施例可知,在WEBServer中保存了服务器集群中的ServiceWorker返回的待上传的不重复的切片文件的切片ID和对应的ServiceWorker的地址,因此根据客户端上传的切片文件的切片ID查找存储该切片文件的切片数据的ServiceWorker的地址。
步骤503:WEBServer按照ServiceWorker的地址将切片文件发送到对应的ServiceWorker上。
步骤504:ServiceWorker保存接收到的切片文件。
进一步地,在步骤504之后,还可以包括:
步骤505:ServiceWorker向WEBServer返回存储完成的应答消息。
步骤506:WEBServer向客户端转发存储文成的应答消息。
参见图6,为本申请基于云存储的文件处理的第五实施例流程图,该实施例示出了客户端请求下载文件的过程:
步骤601:客户端向WEBServer发送下载文件的下载请求,该下载请求中包含所要下载文件的文件ID。
步骤602:WEBServer向ServiceManager转发该下载请求。
该下载请求用于从服务器集群中请求获取组成该下载文件的所有切片文件的信息。
步骤603:ServiceManager根据一致性哈希算法获取用于存储切片文件的ServiceMaster。
在服务器集群内部,处于上层的ServiceManager可以通过一致性哈希算法获取用于存储该新文件的切片文件的ServiceMaster,同理,处于上层的ServiceMaster可以通过一致性哈希算法获取用于存储切片文件的ServiceWorker。
具体的,ServiceManager根据文件上传时保存的文件ID与切片ID的对应关系,获取与该下载请求中的文件ID对应的所有切片ID。本申请实施例按照切片文件上传时遵循的一致性哈希算法即可根据切片ID获取保存该切片文件的ServiceMaster,以及该ServiceMaster下的ServiceWorker。
其中,在获取ServiceMaster时,假设服务器集群中ServiceManager下有N台ServiceMaster,将这N台ServiceMaster在逻辑上排列成一个环,环上的每一台ServiceMaster按照顺时针方向编号(编号可以取0至N-1),在计算存储某个切片文件的切片数据的ServiceMaster地址时,可以用该切片文件的切片ID对N取模,假设取模后得到的余数值为K,则从上述哈希环中编号为0的ServiceMaster开始顺时针获取哈希环上的第K个ServiceMaster,则该第K个ServiceMaster即为用于存储该切片文件的切片数据的ServiceMaster。
步骤604:ServiceManager将文件的下载请求转发给获取的ServiceMaster。
步骤605:ServiceMaster通过一致性哈希算法计算存储该文件的每个切片文件的ServiceWorker的地址。
本步骤中通过一致性哈希算法计算ServiceMaster下的ServiceWorker的地址的过程与步骤603中计算ServiceManager下的ServiceMaster的过程一致,在此不再赘述。
步骤606:ServiceMaster将存储每个切片文件的ServiceWorker的地址发送给ServiceManager。
步骤607:ServiceManager将存储每个切片文件的ServiceWorker的地址转发给WEBServer。
步骤608:WEBServer根据ServiceWorker的地址向相应的ServiceWorker请求读取切片文件。
对于服务器集群中的每个ServiceWorker,其可能需要并行处理多个切片文件的下载请求。因此ServiceWorker可以将每个切片文件的下载请求封装成任务加入下载队列中,并启动多线程对任务进行处理。
步骤609:ServiceWorker将切片文件返回给WEBServer。
步骤610:WEBServer将接收到的切片文件按照切片顺序组成请求下载的文件。
ServiceWorker向WEBServer返回的切片文件中包含了每个切片文件的切片数据、切片ID、切片文件在整个文件的切片顺序以及文件ID,WEBServer将属于具有同一个文件ID的切片文件按照其切片顺序组成下载文件。
步骤611:WEBServer将请求下载的文件发送给客户端。
客户端向WEBServer发送下载请求时,WEBServer可以记录该客户端的用户ID,当组成了下载文件后,按照用户ID将下载文件转发到相应的客户端上。
上述实施例中,服务器集群在完成下载文件操作时,可以采用顺序下载每个切片文件的方式进行,例如,ServiceManager顺序获取待下载文件的第一个切片文件,并计算存储该切片文件的ServiceMaster,然后由该ServiceMaster计算存储该切片文件的ServiceWorker,向该ServiceWorker发送下载第一个切片文件的请求,以此类推,直到按照切片顺序下载完所有切片文件。
参见图7,为本申请基于云存储的文件处理的第六实施例流程图,该实施例示出了客户端请求删除文件的过程:
步骤701:客户端向WEBServer发送删除文件的删除请求,该删除请求中包含所要删除文件的文件ID和用户ID。
在前述实施例中,对于首次上传的切片文件,ServiceManager中可以保存该切片ID与相应切片文件所属文件的文件ID之间的对应关系,同时为每个切片ID设置一个引用计数器,该引用计数器的计数值初始化为0,后续该切片文件每当被重复上传一次,则该计数器的计数值相应加一。
步骤702:WEBServer判断保存了删除请求中的文件ID与用户ID的对应关系。
如果WEBServer中保存了文件ID与用户ID之间的对应关系,说明客户端用户上传过与文件ID对应的文件,则用于该客户端用户执行删除操作。
步骤703:WEBServer向ServiceManager转发该删除请求。
该删除请求用于从服务器集群中请求删除组成该删除文件的所有切片文件的信息。
步骤704:ServiceManager获取与文件ID对应的所有切片ID。
步骤705:ServiceManager判断每个切片ID的计数器的计数值是否为零,如果不为零,则执行步骤706;否则,执行步骤707。
步骤706:将切片ID的计数器的计数值减一。
如果切片ID的计数器的计数值不为零,则说明该切片ID对应的切片数据由客户端用户进行过重复上传,因此相应的将切片ID的计数器的计数值减一即可,表示系统中对于该计数器的计数值的修改少一。将该计数器的计数值将所述
步骤707:ServiceManager根据一致性哈希算法获取用于存储切片文件的ServiceMaster。
如果切片ID的计数器的计数值为零,则说明该切片ID对应的切片数据在系统中仅有一份,没有其它客户端用户对其进行操作,因此可以删除该切片ID对应的切片数据本身。
在服务器集群内部,处于上层的ServiceManager可以通过一致性哈希算法获取用于存储该文件的切片文件的ServiceMaster,同理,处于上层的ServiceMaster可以通过一致性哈希算法获取用于存储切片文件的ServiceWorker。
步骤708:ServiceManager将文件的删除请求转发给获取的ServiceMaster。
步骤709:ServiceMaster通过一致性哈希算法计算存储该文件的每个切片文件的ServiceWorker的地址。
本实施例中通过一致性哈希算法计算用于存储每个切片文件的ServiceWorker的地址的过程与前述第六实施例中的描述一致,在此不再赘述。
步骤710:ServiceMaster根据ServiceWorker的地址向相应的ServiceWorker发送删除切片文件的请求,该请求中包含了待删除切片文件的切片ID。
步骤711:ServiceWorker根据切片ID删除其上存储的相应切片文件。
上述实施例中,服务器集群在完成删除文件操作时,可以采用顺序删除每个切片文件的方式进行,例如,ServiceManager顺序获取待删除文件的第一个切片文件,并计算存储该切片文件的ServiceMaster,然后由该ServiceMaster计算存储该切片文件的ServiceWorker,向该ServiceWorker发送删除第一个切片文件的请求,此时可以ServiceWorker可以判断该切片文件是否处于被读写的状态,如果未处于被读写的状态,则可以执行删除该切片文件的操作,以此类推,直到按照切片顺序删除完所有切片文件。
与本申请基于云存储的文件处理方法的实施例相对应,本发明还提供了基于云存储的文件处理系统及服务器集群系统的实施例。
参见图8,为本申请基于云存储的文件处理系统的实施例框图:
该系统包括:客户端810、WEB服务器820和服务器集群830。
其中,所述WEB服务器820,用于接收客户端发送的文件上传请求,所述文件上传请求用于请求向服务器集群上传新文件,并向所述客户端返回所述服务器集群为所述新文件生成的文件ID;
所述客户端810,用于对所述新文件进行切片,并为每个切片文件生成唯一的切片ID,将切片文件数据包上传给WEB服务器820,所述切片文件数据包中包含文件ID、每个切片文件的切片ID和每个切片文件的切片数据;
所述WEB服务器820,还用于将所述切片文件数据包中的每个切片文件的切片数据发送到所述服务器集群830;
所述服务器集群830,用于将所述每个切片文件的切片数据存储到对应的服务终端上,以及保存所述文件ID与所述切片ID的对应关系。
进一步,所述客户端810,还用于将重复统计请求发送给所述WEB服务器,所述重复统计请求中包含每个切片文件的切片ID;
所述WEB服务器820,还用于将所述重复统计请求转发到所述服务器集群;
所述服务器集群830,还用于根据所述重复统计请求中的切片ID查找已保存的切片ID,如果查找到所述重复统计请求中的切片ID,则确定与所述切片ID对应的切片文件重复,如果未查找到所述重复统计请求中的切片ID,则确定与所述切片ID对应的切片文件不重复,并将每个切片文件是否重复的信息发送给所述WEB服务器;
所述WEB服务器820,还用于将所述切片文件是否重复的信息发送给所述客户端;
所述客户端810,具体用于根据所述切片文件是否重复的信息,将包含不重复切片文件的切片ID和切片数据的切片文件数据包上传给所述WEB服务器。
进一步,所述WEB服务器820,还用于向所述服务器集群发送获取存储切片文件地址的查询请求;
所述服务器集群830,还用于根据每个切片文件的切片ID,通过一致性哈希算法计算存储每个切片文件的服务终端的地址;
所述WEB服务器820,具体用于将所述切片文件数据包中的每个切片文件按照对应的服务终端的地址发送到服务终端上进行存储。
进一步,所述客户端810,还用于向所述WEB服务器发送文件下载请求,所述文件下载请求中包含客户端请求下载文件的文件ID;
所述WEB服务器820,还用于将所述文件下载请求发送给所述服务器集群;
所述服务器集群830,还用于向所述WEB服务器发送存储与所述文件ID对应的文件的每个切片文件的服务终端的地址;
所述WEB服务器820,还用于根据所述服务终端的地址从对应的服务终端上获取每个切片文件,并将所述切片文件按照切片顺序组成所述请求下载的文件,并将所述文件发送给所述客户端。
进一步,所述WEB服务器820,还用于当所述文件上传请求中还包含所述客户端的用户ID时,保存所述文件ID与所述用户ID之间的对应关系;
所述服务器集群830,还用于为每个切片ID设置引用计数器,所述引用计数器的计数值初始化为零,当确定与切片ID对应的切片文件重复时,将所述切片ID的引用计数器的计数值加一。
进一步,所述客户端810,还用于向所述WEB服务器发送文件删除请求,所述文件删除请求中包含所述客户端请求删除文件的文件ID和用户ID;
所述WEB服务器820,还用于当保存了所述删除请求中保存的文件ID和用户ID的对应关系时,将所述文件删除请求发送给所述服务器集群;
所述服务器集群830,还用于根据所述文件ID获取对应的切片ID,并判断所述切片ID的引用计数器的计数值是否为零;当切片ID的计数器的计数值为零,所述服务器集群获取存储所述请求删除文件的每个切片文件的服务终端,服务器集群向对应的服务终端转发所述文件删除请求,接收到所述文件删除请求的服务终端删除组成所述请求删除文件的切片文件;当切片ID的计数器的计数值不为零,则将所述切片ID的计数器的计数值减一。
其中,服务器集群830可以包括(图8中未示出):
至少一个服务集群整合端、与每个服务集群整合端相连的若干服务分配端、以及与每个服务分配端相连的若干服务终端;
所述服务集群整合端用于与WEB服务器进行交互,并将交互数据向下依次传输到对应的服务分配端,并由服务分配端将交互数据传输到对应的服务终端。
参见图9,为本申请基于云存储的服务器集群系统的实施例框图:
该服务器集群系统包括:WEB服务器910和服务器集群920,其中服务器集群920包含若干服务终端921,为了示例方便,图9中仅示出了三个服务终端921。
其中,所述WEB服务器910,用于接收客户端发送的文件上传请求,所述文件上传请求用于请求向服务器集群上传新文件,向所述客户端返回所述服务器集群为所述新文件生成的文件ID,接收所述客户端上传的切片文件数据包,所述切片文件数据包中包含文件ID、每个切片文件的切片ID和每个切片文件的切片数据;
所述服务器集群920,用于接收所述WEB服务器发送的所述切片文件数据包中的每个切片文件的切片数据,并将每个切片文件的切片数据发送到所述服务器集群中的对应服务终端上进行存储,以及保存所述文件ID与所述切片ID的对应关系。
进一步,所述WEB服务器910,还用于接收客户端发送的重复统计请求,所述重复统计请求中包含每个切片文件的切片ID,并将所述重复统计请求转发到所述服务器集群;
所述服务器集群920,还用于根据所述重复统计请求中的切片ID查找已保存的切片ID,如果查找到所述重复统计请求中的切片ID,则确定与所述切片ID对应的切片文件重复,如果未查找到所述重复统计请求中的切片ID,则确定与所述切片ID对应的切片文件不重复,以及将每个切片文件是否重复的信息发送给所述WEB服务器;
所述WEB服务器910,还用于将所述切片文件是否重复的信息发送给所述客户端,以使所述客户端根据所述切片文件是否重复的信息,将包含不重复切片文件的切片ID和切片数据的切片文件数据包上传给所述WEB服务器。
进一步,所述WEB服务器910,还用于向所述服务器集群发送获取存储切片文件地址的查询请求;
所述服务器集群920,还用于根据每个切片文件的切片ID,通过一致性哈希算法计算存储每个切片文件的服务终端的地址,并将所述服务终端的地址返回给所述WEB服务器;
所述WEB服务器910具体用于将所述切片文件数据包中的每个切片文件按照对应的服务终端的地址发送到服务终端上进行存储。
进一步,所述WEB服务器910,还用于接收客户端发送的文件下载请求,所述文件下载请求中包含客户端请求下载文件的文件ID,并将所述文件下载请求发送给所述服务器集群;
所述服务器集群920,还用于向所述WEB服务器发送存储与所述文件ID对应的文件的每个切片文件的服务终端的地址;
所述WEB服务器910,还用于根据所述服务终端的地址从对应的服务终端上获取每个切片文件,并将所述切片文件按照切片顺序组成所述请求下载的文件,并将所述文件发送给所述客户端。
进一步,所述WEB服务器910,还用于当所述文件上传请求中还包含所述客户端的用户ID时,保存所述文件ID与所述用户ID之间的对应关系;
所述服务器集群920,还用于为每个切片ID设置引用计数器,所述引用计数器的计数值初始化为零,当确定与切片ID对应的切片文件重复时,将所述切片ID的引用计数器的计数值加一。
进一步,所述WEB服务器910,还用于接收所述客户端发送的文件删除请求,所述文件删除请求中包含所述客户端请求删除文件的文件ID和用户ID,并保存了所述删除请求中保存的文件ID和用户ID的对应关系时,将所述文件删除请求发送给所述服务器集群;
所述服务器集群920,还用于根据所述文件ID获取对应的切片ID,并判断所述切片ID的引用计数器的计数值是否为零;当切片ID的计数器的计数值为零,所述服务器集群获取存储所述请求删除文件的每个切片文件的服务终端,服务器集群向对应的服务终端转发所述文件删除请求;当切片ID的计数器的计数值不为零,则将所述切片ID的计数器的计数值减一;
所述服务终端921,用于接收到所述文件删除请求后,删除组成所述请求删除文件的切片文件。
其中,服务器集群920可以包括(图9中未示出):
至少一个服务集群整合端、与每个服务集群整合端相连的若干服务分配端、以及与每个服务分配端相连的若干所述服务终端;
所述服务集群整合端用于与WEB服务器进行交互,并将交互数据向下依次传输到对应的服务分配端,并由服务分配端将交互数据传输到对应的服务终端。
通过以上的实施方式的描述可知,本申请实施例中WEB服务器接收客户端发送的文件上传请求后,向客户端返回服务器集群为新文件生成的文件ID,客户端对新文件进行切片,并为每个切片文件生成唯一的切片ID,将切片文件数据包上传给WEB服务器,切片文件数据包中的每个切片文件包含文件ID、每个切片文件的切片ID和每个切片文件的切片数据,WEB服务器将切片文件数据包中的每个切片文件的切片数据发送到服务器集群中的对应服务终端上进行存储。本申请实施例通过对文件进行分片处理并在服务器集群中对切片文件进行分布式存储,从而使得基于服务器集群的云存储性能更加优化;应用本申请实施例上传修改后的文件时,由于只需上传用户修改的文件切片,而无需重传整个文件,因此减少了服务器集群中的冗余数据,节省了存储空间,减少了客户端上传文件的时间。
本领域的技术人员可以清楚地了解到本发明实施例中的技术可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本发明实施例中的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例或者实施例的某些部分所述的方法。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上所述的本发明实施方式,并不构成对本发明保护范围的限定。任何在本发明的精神和原则之内所作的修改、等同替换和改进等,均应包含在本发明的保护范围之内。
Claims (23)
1.一种基于云存储的文件处理方法,其特征在于,包括:
WEB服务器接收客户端发送的文件上传请求,所述文件上传请求用于请求向服务器集群上传新文件;
WEB服务器向所述客户端返回所述服务器集群为所述新文件生成的文件ID;
所述客户端对所述新文件进行切片,并为每个切片文件生成唯一的切片ID;
所述客户端将切片文件数据包上传给WEB服务器,所述切片文件数据包中包含文件ID、每个切片文件的切片ID和每个切片文件的切片数据;
WEB服务器将所述切片文件数据包中的每个切片文件的切片数据发送到所述服务器集群中的对应服务终端上进行存储,其中,所述服务器集群保存所述文件ID与所述切片ID的对应关系;
所述方法还包括:
所述客户端在上传文件之前,将重复统计请求发送给所述WEB服务器,以便请求统计所述服务器集群中是否已经存在了所述新文件中的切片数据;
所述客户端将切片文件数据包上传给WEB服务器,包括:
所述客户端向所述WEB服务器上传包含不重复的切片文件的切片ID和切片数据的切片文件数据包。
2.根据权利要求1所述的方法,其特征在于,所述WEB服务器向所述客户端返回所述服务器集群为所述新文件生成的文件ID包括:
WEB服务器向所述服务器集群发送获取所述新文件的文件ID的请求;
所述服务器集群根据所述请求为所述新文件分配文件ID;
所述服务器集群将所述文件ID返回给所述WEB服务器;
所述WEB服务器将所述文件ID发送给所述客户端。
3.根据权利要求1所述的方法,其特征在于,所述客户端对所述新文件进行切片,并为每个切片文件生成唯一的切片ID包括:
所述客户端对所述新文件按照预设长度进行分块,生成若干切片文件,其中当分块后的剩余文件块的长度小于所述预设长度时,将所述剩余文件块作为一个切片文件;
根据所述每个切片文件的文件数据,通过MD5哈希函数计算每个切片文件的切片ID,所述切片ID用于唯一标识所述切片文件。
4.根据权利要求1所述的方法,其特征在于,所述客户端将切片文件数据包上传给WEB服务器之前,还包括:
所述客户端将重复统计请求发送给所述WEB服务器,所述重复统计请求中包含每个切片文件的切片ID;
所述WEB服务器将所述重复统计请求转发到所述服务器集群;
所述服务器集群根据所述重复统计请求中的切片ID查找已保存的切片ID,如果查找到所述重复统计请求中的切片ID,则确定与所述切片ID对应的切片文件重复,如果未查找到所述重复统计请求中的切片ID,则确定与所述切片ID对应的切片文件不重复;
所述服务器集群将每个切片文件是否重复的信息发送给所述WEB服务器;
所述WEB服务器将所述切片文件是否重复的信息发送给所述客户端;
所述客户端将切片文件数据包上传给WEB服务器具体为:所述客户端根据所述切片文件是否重复的信息,将包含不重复切片文件的切片ID和切片数据的切片文件数据包上传给所述WEB服务器。
5.根据权利要求1所述的方法,其特征在于,所述客户端将切片文件数据包上传给WEB服务器之后,还包括:
所述WEB服务器向所述服务器集群发送获取存储切片文件地址的查询请求;
所述服务器集群根据每个切片文件的切片ID,通过一致性哈希算法计算存储每个切片文件的服务终端的地址;
服务器集群将所述服务终端的地址返回给所述WEB服务器;
所述WEB服务器将所述切片文件数据包中的每个切片文件发送到所述服务器集群中的对应服务终端上进行存储具体为:WEB服务器将所述切片文件数据包中的每个切片文件按照对应的服务终端的地址发送到服务终端上进行存储。
6.根据权利要求1所述的方法,其特征在于,还包括:
客户端向所述WEB服务器发送文件下载请求,所述文件下载请求中包含客户端请求下载文件的文件ID;
WEB服务器将所述文件下载请求发送给所述服务器集群;
所述服务器集群向所述WEB服务器发送存储与所述文件ID对应的文件的每个切片文件的服务终端的地址;
WEB服务器根据所述服务终端的地址从对应的服务终端上获取每个切片文件;
WEB服务器将所述切片文件按照切片顺序组成所述请求下载的文件,并将所述文件发送给所述客户端。
7.根据权利要求4所述的方法,其特征在于,所述文件上传请求中还包含所述客户端的用户ID,所述WEB服务器向所述客户端返回所述服务器集群为所述新文件生成的文件ID后还包括:保存所述文件ID与所述用户ID之间的对应关系;
所述方法还包括:
所述服务器集群为每个切片ID设置引用计数器,所述引用计数器的计数值初始化为零;
当确定与切片ID对应的切片文件重复时,将所述切片ID的引用计数器的计数值加一。
8.根据权利要求7所述的方法,其特征在于,还包括:
客户端向所述WEB服务器发送文件删除请求,所述文件删除请求中包含所述客户端请求删除文件的文件ID和用户ID;
当所述WEB服务器中保存了所述删除请求中保存的文件ID和用户ID的对应关系时,所述WEB服务器将所述文件删除请求发送给所述服务器集群;
所述服务器集群根据所述文件ID获取对应的切片ID,并判断所述切片ID的引用计数器的计数值是否为零;
当切片ID的计数器的计数值为零,所述服务器集群获取存储所述请求删除文件的每个切片文件的服务终端,服务器集群向对应的服务终端转发所述文件删除请求,接收到所述文件删除请求的服务终端删除组成所述请求删除文件的切片文件;当切片ID的计数器的计数值不为零,则将所述切片ID的计数器的计数值减一。
9.根据权利要求1至8任意一项所述的方法,其特征在于,所述服务器集群包括:
至少一个服务集群整合端、与每个服务集群整合端相连的若干服务分配端、以及与每个服务分配端相连的若干服务终端;
所述服务集群整合端用于与WEB服务器进行交互,并将交互数据向下依次传输到对应的服务分配端,并由服务分配端将交互数据传输到对应的服务终端。
10.一种基于云存储的文件处理系统,其特征在于,包括:客户端、WEB服务器和服务器集群,
所述WEB服务器,用于接收客户端发送的文件上传请求,所述文件上传请求用于请求向服务器集群上传新文件,并向所述客户端返回所述服务器集群为所述新文件生成的文件ID;
所述客户端,用于对所述新文件进行切片,并为每个切片文件生成唯一的切片ID,将切片文件数据包上传给WEB服务器,所述切片文件数据包中包含文件ID、每个切片文件的切片ID和每个切片文件的切片数据;
所述WEB服务器,还用于将所述切片文件数据包中的每个切片文件的切片数据发送到所述服务器集群;
所述服务器集群,用于将所述每个切片文件的切片数据存储到对应的服务终端上,以及保存所述文件ID与所述切片ID的对应关系;
所述客户端还用于,在上传文件之前,将重复统计请求发送给所述WEB服务器,以便请求统计所述服务器集群中是否已经存在了所述新文件中的切片数据;
所述客户端用于将切片文件数据包上传给WEB服务器,包括:
所述客户端用于向所述WEB服务器上传包含不重复的切片文件的切片ID和切片数据的切片文件数据包。
11.根据权利要求10所述的系统,其特征在于,
所述客户端,还用于将重复统计请求发送给所述WEB服务器,所述重复统计请求中包含每个切片文件的切片ID;
所述WEB服务器,还用于将所述重复统计请求转发到所述服务器集群;
所述服务器集群,还用于根据所述重复统计请求中的切片ID查找已保存的切片ID,如果查找到所述重复统计请求中的切片ID,则确定与所述切片ID对应的切片文件重复,如果未查找到所述重复统计请求中的切片ID,则确定与所述切片ID对应的切片文件不重复,并将每个切片文件是否重复的信息发送给所述WEB服务器;
所述WEB服务器,还用于将所述切片文件是否重复的信息发送给所述客户端;
所述客户端,具体用于根据所述切片文件是否重复的信息,将包含不重复切片文件的切片ID和切片数据的切片文件数据包上传给所述WEB服务器。
12.根据权利要求10所述的系统,其特征在于,
所述WEB服务器,还用于向所述服务器集群发送获取存储切片文件地址的查询请求;
所述服务器集群,还用于根据每个切片文件的切片ID,通过一致性哈希算法计算存储每个切片文件的服务终端的地址;
所述WEB服务器,具体用于将所述切片文件数据包中的每个切片文件按照对应的服务终端的地址发送到服务终端上进行存储。
13.根据权利要求10所述的系统,其特征在于,
所述客户端,还用于向所述WEB服务器发送文件下载请求,所述文件下载请求中包含客户端请求下载文件的文件ID;
所述WEB服务器,还用于将所述文件下载请求发送给所述服务器集群;
所述服务器集群,还用于向所述WEB服务器发送存储与所述文件ID对应的文件的每个切片文件的服务终端的地址;
所述WEB服务器,还用于根据所述服务终端的地址从对应的服务终端上获取每个切片文件,并将所述切片文件按照切片顺序组成所述请求下载的文件,并将所述文件发送给所述客户端。
14.根据权利要求11所述的系统,其特征在于,
所述WEB服务器,还用于当所述文件上传请求中还包含所述客户端的用户ID时,保存所述文件ID与所述用户ID之间的对应关系;
所述服务器集群,还用于为每个切片ID设置引用计数器,所述引用计数器的计数值初始化为零,当确定与切片ID对应的切片文件重复时,将所述切片ID的引用计数器的计数值加一。
15.根据权利要求14所述的系统,其特征在于,
所述客户端,还用于向所述WEB服务器发送文件删除请求,所述文件删除请求中包含所述客户端请求删除文件的文件ID和用户ID;
所述WEB服务器,还用于当保存了所述删除请求中保存的文件ID和用户ID的对应关系时,将所述文件删除请求发送给所述服务器集群;
所述服务器集群,还用于根据所述文件ID获取对应的切片ID,并判断所述切片ID的引用计数器的计数值是否为零;当切片ID的计数器的计数值为零,所述服务器集群获取存储所述请求删除文件的每个切片文件的服务终端,服务器集群向对应的服务终端转发所述文件删除请求,接收到所述文件删除请求的服务终端删除组成所述请求删除文件的切片文件;当切片ID的计数器的计数值不为零,则将所述切片ID的计数器的计数值减一。
16.根据权利要求10至15任意一项所述的系统,其特征在于,所述服务器集群包括:
至少一个服务集群整合端、与每个服务集群整合端相连的若干服务分配端、以及与每个服务分配端相连的若干服务终端;
所述服务集群整合端用于与WEB服务器进行交互,并将交互数据向下依次传输到对应的服务分配端,并由服务分配端将交互数据传输到对应的服务终端。
17.一种基于云存储的服务器集群系统,其特征在于,包括:WEB服务器和服务器集群,所述服务器集群中包含若干服务终端,
所述WEB服务器,用于接收客户端发送的文件上传请求,所述文件上传请求用于请求向服务器集群上传新文件,向所述客户端返回所述服务器集群为所述新文件生成的文件ID,接收所述客户端上传的切片文件数据包,所述切片文件数据包中包含文件ID、每个切片文件的切片ID和每个切片文件的切片数据;
所述服务器集群,用于接收所述WEB服务器发送的所述切片文件数据包中的每个切片文件的切片数据,并将每个切片文件的切片数据发送到所述服务器集群中的对应服务终端上进行存储,以及保存所述文件ID与所述切片ID的对应关系;
所述WEB服务器,还用于接收所述客户端在上传文件之前发送的重复统计请求,以统计所述服务器集群中是否已经存在了所述新文件中的切片数据;
所述WEB服务器用于接收所述客户端上传的切片文件数据包包括:
所述WEB服务器用于接收所述客户端上传的包含不重复的切片文件的切片ID和切片数据的切片文件数据包。
18.根据权利要求17所述的系统,其特征在于,
所述WEB服务器,还用于接收客户端发送的重复统计请求,所述重复统计请求中包含每个切片文件的切片ID,并将所述重复统计请求转发到所述服务器集群;
所述服务器集群,还用于根据所述重复统计请求中的切片ID查找已保存的切片ID,如果查找到所述重复统计请求中的切片ID,则确定与所述切片ID对应的切片文件重复,如果未查找到所述重复统计请求中的切片ID,则确定与所述切片ID对应的切片文件不重复,以及将每个切片文件是否重复的信息发送给所述WEB服务器;
所述WEB服务器,还用于将所述切片文件是否重复的信息发送给所述客户端,以使所述客户端根据所述切片文件是否重复的信息,将包含不重复切片文件的切片ID和切片数据的切片文件数据包上传给所述WEB服务器。
19.根据权利要求17所述的系统,其特征在于,
所述WEB服务器,还用于向所述服务器集群发送获取存储切片文件地址的查询请求;
所述服务器集群,还用于根据每个切片文件的切片ID,通过一致性哈希算法计算存储每个切片文件的服务终端的地址,并将所述服务终端的地址返回给所述WEB服务器;
所述WEB服务器,具体用于将所述切片文件数据包中的每个切片文件按照对应的服务终端的地址发送到服务终端上进行存储。
20.根据权利要求17所述的系统,其特征在于,
所述WEB服务器,还用于接收客户端发送的文件下载请求,所述文件下载请求中包含客户端请求下载文件的文件ID,并将所述文件下载请求发送给所述服务器集群;
所述服务器集群,还用于向所述WEB服务器发送存储与所述文件ID对应的文件的每个切片文件的服务终端的地址;
所述WEB服务器,还用于根据所述服务终端的地址从对应的服务终端上获取每个切片文件,并将所述切片文件按照切片顺序组成所述请求下载的文件,并将所述文件发送给所述客户端。
21.根据权利要求18所述的系统,其特征在于,
所述WEB服务器,还用于当所述文件上传请求中还包含所述客户端的用户ID时,保存所述文件ID与所述用户ID之间的对应关系;
所述服务器集群,还用于为每个切片ID设置引用计数器,所述引用计数器的计数值初始化为零,当确定与切片ID对应的切片文件重复时,将所述切片ID的引用计数器的计数值加一。
22.根据权利要求21所述的系统,其特征在于,还包括:
所述WEB服务器,还用于接收所述客户端发送的文件删除请求,所述文件删除请求中包含所述客户端请求删除文件的文件ID和用户ID,并保存了所述删除请求中保存的文件ID和用户ID的对应关系时,将所述文件删除请求发送给所述服务器集群;
所述服务器集群,还用于根据所述文件ID获取对应的切片ID,并判断所述切片ID的引用计数器的计数值是否为零;当切片ID的计数器的计数值为零,所述服务器集群获取存储所述请求删除文件的每个切片文件的服务终端,服务器集群向对应的服务终端转发所述文件删除请求;当切片ID的计数器的计数值不为零,则将所述切片ID的计数器的计数值减一;
所述服务终端,用于接收到所述文件删除请求后,删除组成所述请求删除文件的切片文件。
23.根据权利要求17至22任意一项所述的系统,其特征在于,所述服务器集群包括:
至少一个服务集群整合端、与每个服务集群整合端相连的若干服务分配端、以及与每个服务分配端相连的若干所述服务终端;
所述服务集群整合端用于与WEB服务器进行交互,并将交互数据向下依次传输到对应的服务分配端,并由服务分配端将交互数据传输到对应的服务终端。
Priority Applications (8)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201110164407.4A CN102833294B (zh) | 2011-06-17 | 2011-06-17 | 基于云存储的文件处理方法、系统及服务器集群系统 |
TW100132629A TWI528191B (zh) | 2011-06-17 | 2011-09-09 | File Handling Method Based on Cloud Storage, System and Server Cluster System |
EP17171709.3A EP3223165B1 (en) | 2011-06-17 | 2012-05-31 | File processing method, system and server-clustered system for cloud storage |
US13/576,213 US9774564B2 (en) | 2011-06-17 | 2012-05-31 | File processing method, system and server-clustered system for cloud storage |
EP12799809.4A EP2721504B1 (en) | 2011-06-17 | 2012-05-31 | File processing method, system and server-clustered system for cloud storage |
JP2014515852A JP2014517420A (ja) | 2011-06-17 | 2012-05-31 | クラウド記憶のためのファイル処理方法、システム、およびサーバクラスタ化システム |
PCT/US2012/040169 WO2012173785A1 (en) | 2011-06-17 | 2012-05-31 | File processing method, system and server-clustered system for cloud storage |
HK13101054.6A HK1173873A1 (zh) | 2011-06-17 | 2013-01-24 | 基於雲存儲的文件處理方法、系統及服務器集群系統 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201110164407.4A CN102833294B (zh) | 2011-06-17 | 2011-06-17 | 基于云存储的文件处理方法、系统及服务器集群系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102833294A CN102833294A (zh) | 2012-12-19 |
CN102833294B true CN102833294B (zh) | 2015-05-20 |
Family
ID=47336264
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201110164407.4A Active CN102833294B (zh) | 2011-06-17 | 2011-06-17 | 基于云存储的文件处理方法、系统及服务器集群系统 |
Country Status (7)
Country | Link |
---|---|
US (1) | US9774564B2 (zh) |
EP (2) | EP3223165B1 (zh) |
JP (1) | JP2014517420A (zh) |
CN (1) | CN102833294B (zh) |
HK (1) | HK1173873A1 (zh) |
TW (1) | TWI528191B (zh) |
WO (1) | WO2012173785A1 (zh) |
Families Citing this family (88)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8914457B2 (en) * | 2009-10-06 | 2014-12-16 | Red Hat, Inc. | Caching of nodes in cache cluster |
EP2993585B1 (en) * | 2010-12-27 | 2017-06-28 | Amplidata NV | Distributed object storage system comprising performance optimizations |
EP2866154B1 (en) * | 2012-06-25 | 2018-10-24 | Huawei Technologies Co., Ltd. | Resource obtaining method and device |
CN103685337B (zh) * | 2012-08-31 | 2018-03-27 | 腾讯科技(深圳)有限公司 | 共享文件的方法、终端设备及中转服务器 |
US8589659B1 (en) * | 2012-11-08 | 2013-11-19 | DSSD, Inc. | Method and system for global namespace with consistent hashing |
CN103078906A (zh) * | 2012-12-26 | 2013-05-01 | 爱迪科特(北京)科技有限公司 | 文件透明迁移方法 |
JP5907061B2 (ja) * | 2012-12-28 | 2016-04-20 | ブラザー工業株式会社 | 仲介サーバ、通信装置、及び、コンピュータプログラム |
CN103916421B (zh) * | 2012-12-31 | 2017-08-25 | 中国移动通信集团公司 | 云存储数据服务装置、数据传输系统、服务器及方法 |
WO2014161157A1 (zh) * | 2013-04-02 | 2014-10-09 | 华为技术有限公司 | 云存储的文件上传方法、客户端、应用服务器及云存储系统 |
CN103198131B (zh) * | 2013-04-11 | 2015-08-19 | 天脉聚源(北京)传媒科技有限公司 | 一种文件管理的方法和系统 |
US9276883B2 (en) * | 2013-04-28 | 2016-03-01 | Tencent Technology (Shenzhen) Company Limited | Information collection, storage, and sharing platform |
CN103731507A (zh) * | 2013-05-02 | 2014-04-16 | 乐视网信息技术(北京)股份有限公司 | 一种分布式数据存储设备处理数据的方法及装置 |
CN104144186B (zh) * | 2013-05-10 | 2017-12-01 | 中国电信股份有限公司 | 云计算环境中基于Web浏览器的数据上传方法与系统 |
CN104969532B (zh) * | 2013-06-29 | 2018-12-07 | 华为技术有限公司 | 一种文件下载的方法和装置 |
CN103412929A (zh) * | 2013-08-16 | 2013-11-27 | 蓝盾信息安全技术股份有限公司 | 一种海量数据的存储方法 |
CN104426996B (zh) * | 2013-09-11 | 2018-12-11 | 腾讯科技(深圳)有限公司 | 云业务处理方法和相关设备及通信系统 |
CN103442090B (zh) * | 2013-09-16 | 2016-08-17 | 苏州市职业大学 | 一种数据分散存储的云计算系统 |
CN104462129B (zh) * | 2013-09-22 | 2018-05-25 | 北大方正集团有限公司 | 分布式文件存储和查询方法及存取系统 |
CN103561056A (zh) * | 2013-10-12 | 2014-02-05 | 北京奇虎科技有限公司 | 文件传输方法、设备及系统 |
CN103581319A (zh) * | 2013-11-04 | 2014-02-12 | 汉柏科技有限公司 | 一种云计算基于网格化的设备管理方法 |
CN103559143A (zh) * | 2013-11-08 | 2014-02-05 | 华为技术有限公司 | 数据拷贝管理装置及其数据拷贝方法 |
CN103647797A (zh) * | 2013-11-15 | 2014-03-19 | 北京邮电大学 | 一种分布式文件系统及其数据访问方法 |
CN103685493A (zh) * | 2013-12-05 | 2014-03-26 | 北京飞流九天科技有限公司 | 用于互联网文件的存储方法和系统 |
CN104702646A (zh) * | 2013-12-09 | 2015-06-10 | 腾讯科技(深圳)有限公司 | 数据传输方法及相关装置和通信系统 |
CN104731516B (zh) * | 2013-12-18 | 2019-03-01 | 腾讯科技(深圳)有限公司 | 一种存取文件的方法、装置及分布式存储系统 |
CN103731499B (zh) * | 2013-12-31 | 2018-01-05 | 兴天通讯技术(天津)有限公司 | 终端和文件传输方法 |
JP6217033B2 (ja) * | 2014-04-30 | 2017-10-25 | 華為技術有限公司Huawei Technologies Co.,Ltd. | ハードディスク間のインタラクションのための方法、装置、およびシステム |
TWI511037B (zh) * | 2014-05-09 | 2015-12-01 | Wistron Corp | 儲存叢集化系統與提供對叢集式儲存的存取的方法 |
TWI536816B (zh) | 2014-05-12 | 2016-06-01 | 財團法人工業技術研究院 | 網路資料平行傳輸排程的方法與系統 |
CN105205011B (zh) * | 2014-06-25 | 2019-01-18 | 华为技术有限公司 | 一种获取文件块引用计数的方法、普通客户端和管理客户端 |
CN104967640A (zh) * | 2014-07-31 | 2015-10-07 | 腾讯科技(深圳)有限公司 | 一种数据存储方法、装置和系统 |
TWI604320B (zh) * | 2014-08-01 | 2017-11-01 | 緯創資通股份有限公司 | 巨量資料存取方法以及使用該方法的系統 |
JP6483380B2 (ja) * | 2014-09-10 | 2019-03-13 | Dynabook株式会社 | 電子機器、システム、および同期方法 |
JP6288596B2 (ja) | 2014-11-05 | 2018-03-07 | 華為技術有限公司Huawei Technologies Co.,Ltd. | データ処理方法および装置 |
CN105721526B (zh) * | 2014-12-04 | 2019-05-14 | 清华大学 | 一种终端、服务器文件同步的方法及装置 |
CN104571956A (zh) * | 2014-12-29 | 2015-04-29 | 成都致云科技有限公司 | 一种数据写入方法及拆分装置 |
CN104486442B (zh) * | 2014-12-29 | 2018-08-24 | 成都极驰科技有限公司 | 分布式存储系统的数据传输方法、装置 |
KR102480414B1 (ko) * | 2015-03-20 | 2022-12-23 | 삼성전자주식회사 | 복수개의 클라우드 스토리지를 이용한 파일 저장 방법 및 이를 위한 장치 |
US10586063B2 (en) | 2015-03-20 | 2020-03-10 | Samsung Electronics Co., Ltd. | Method and apparatus for storing file by using a plurality of cloud storages |
RU2634224C2 (ru) * | 2015-06-30 | 2017-10-24 | Общество С Ограниченной Ответственностью "Яндекс" | Система и способ и постоянный машиночитаемый носитель дублирования файлов на клиентском устройстве для облачного хранилища |
CN105187489A (zh) * | 2015-08-05 | 2015-12-23 | 深圳联友科技有限公司 | 可集群并支持多用户同时上传的文件传输方法和系统 |
US9935999B1 (en) * | 2015-09-28 | 2018-04-03 | Snap Inc. | File download manager |
CN106657182B (zh) * | 2015-10-30 | 2020-10-27 | 阿里巴巴集团控股有限公司 | 云端文件处理方法和装置 |
CN105306588A (zh) * | 2015-11-17 | 2016-02-03 | 高新兴科技集团股份有限公司 | 一种基于哈希算法的对网络数据进行路由分派的方法 |
CN105373746B (zh) * | 2015-11-26 | 2018-09-14 | 深圳市金证科技股份有限公司 | 一种分布式数据处理方法和装置 |
CN105491134B (zh) * | 2015-12-10 | 2018-11-27 | 宁波远志立方能源科技有限公司 | 一种智能终端的云存储方法 |
CN105516316B (zh) * | 2015-12-10 | 2018-11-27 | 宁波远志立方能源科技有限公司 | 一种提高智能手机用户信息安全性的方法 |
CN105763604B (zh) * | 2016-02-04 | 2019-03-19 | 四川长虹电器股份有限公司 | 轻量级分布式文件系统及恢复下载文件原名的方法 |
KR102078189B1 (ko) * | 2016-03-11 | 2020-02-20 | 주식회사 케이티 | 무선 액세스 망 슬라이싱 제어 장치와 그 장치가 무선 베어러 전송을 제어하는 방법 |
KR20180007630A (ko) * | 2016-07-13 | 2018-01-23 | 헬로우링크 주식회사 | 식별번호를 이용한 파일 검색방법 |
KR20180007629A (ko) * | 2016-07-13 | 2018-01-23 | 헬로우링크 주식회사 | 식별번호를 이용한 파일 검색방법 |
CN106302757A (zh) * | 2016-08-19 | 2017-01-04 | 成都全码特时代科技有限公司 | 一种基于云存储的服务器集群系统 |
US10701176B1 (en) * | 2016-09-23 | 2020-06-30 | Amazon Technologies, Inc. | Messaging using a hash ring with host groups |
CN107872489B (zh) * | 2016-09-28 | 2020-06-05 | 杭州海康威视数字技术股份有限公司 | 一种文件切片上传方法、装置及云存储系统 |
CN106503093B (zh) * | 2016-10-13 | 2019-06-11 | 华东师范大学 | 一种适用于分布式计算环境的大型遥感影像重构方法 |
KR101709276B1 (ko) * | 2016-11-17 | 2017-02-22 | (주)세이퍼존 | 엔드 포인트 보안서버 관리 시스템 |
CN106845075B (zh) * | 2016-12-20 | 2021-07-20 | 杭州联众医疗科技股份有限公司 | 一种集中诊断报告系统 |
US10616309B2 (en) * | 2016-12-30 | 2020-04-07 | Facebook, Inc. | Systems and methods for resumable uploading of data in a social networking system |
CN107172121A (zh) * | 2017-03-29 | 2017-09-15 | 努比亚技术有限公司 | 一种防止数据重复提交的装置及其方法 |
CN108933805A (zh) * | 2017-05-26 | 2018-12-04 | 武汉斗鱼网络科技有限公司 | 一种文件传输方法及系统 |
CN107273473A (zh) * | 2017-06-08 | 2017-10-20 | 维沃移动通信有限公司 | 一种文件存储方法及装置、文件提取方法及装置 |
CN109088907B (zh) * | 2017-06-14 | 2021-10-01 | 北京京东尚科信息技术有限公司 | 文件传递方法及其设备 |
WO2019033368A1 (zh) * | 2017-08-17 | 2019-02-21 | 深圳市优品壹电子有限公司 | 数据存储方法及装置 |
WO2019033370A1 (zh) * | 2017-08-17 | 2019-02-21 | 深圳市优品壹电子有限公司 | 数据获取方法及装置 |
CN107483612A (zh) * | 2017-08-31 | 2017-12-15 | 郑州云海信息技术有限公司 | 一种云存储数据隐私保护方法及装置 |
CN109495434A (zh) * | 2017-09-13 | 2019-03-19 | 北京国双科技有限公司 | 一种文件传输方法及装置 |
CN107528926A (zh) * | 2017-10-11 | 2017-12-29 | 郑州云海信息技术有限公司 | 一种文件上传方法和系统 |
US11165862B2 (en) * | 2017-10-24 | 2021-11-02 | 0Chain, LLC | Systems and methods of blockchain platform for distributed applications |
US10944804B1 (en) | 2017-11-22 | 2021-03-09 | Amazon Technologies, Inc. | Fragmentation of time-associated data streams |
US10878028B1 (en) | 2017-11-22 | 2020-12-29 | Amazon Technologies, Inc. | Replicating and indexing fragments of time-associated data streams |
US11025691B1 (en) * | 2017-11-22 | 2021-06-01 | Amazon Technologies, Inc. | Consuming fragments of time-associated data streams |
CN110011952B (zh) * | 2018-01-05 | 2022-01-25 | 中国移动通信有限公司研究院 | 一种数据传输的方法、服务集群及客户端 |
CN110661829B (zh) * | 2018-06-28 | 2021-09-21 | 杭州海康威视系统技术有限公司 | 文件下载方法及装置、客户端和计算机可读存储介质 |
CN109639807A (zh) * | 2018-12-19 | 2019-04-16 | 中国四维测绘技术有限公司 | 一种基于slice切片的大数据量遥感影像文件网络传输方法 |
CN109710572B (zh) * | 2018-12-29 | 2021-02-02 | 北京赛思信安技术股份有限公司 | 一种基于HBase的文件分片方法 |
CN109951514B (zh) * | 2019-01-16 | 2022-03-25 | 平安科技(深圳)有限公司 | 基于云存储的文件处理方法、系统及计算机设备 |
CN110377611B (zh) * | 2019-07-12 | 2022-07-15 | 北京三快在线科技有限公司 | 积分排名的方法及装置 |
CN110781132A (zh) * | 2019-10-24 | 2020-02-11 | 深圳前海环融联易信息科技服务有限公司 | 文件存储的实现方法、装置、及计算机设备 |
CN111193785B (zh) * | 2019-12-20 | 2023-05-02 | 北京淇瑀信息科技有限公司 | 一种文件切割传输方法、装置和电子设备 |
CN111614726B (zh) * | 2020-04-24 | 2023-03-24 | 深圳震有科技股份有限公司 | 一种数据转发方法、集群系统及存储介质 |
CN111708743A (zh) * | 2020-05-28 | 2020-09-25 | 浪潮电子信息产业股份有限公司 | 文件存储管理方法、文件管理客户端及文件存储管理系统 |
CN111464661B (zh) * | 2020-06-17 | 2020-09-22 | 北京金迅瑞博网络技术有限公司 | 负载均衡方法、装置、代理设备、缓存设备及服务节点 |
CN112181900B (zh) * | 2020-09-04 | 2024-05-14 | 中国银联股份有限公司 | 一种服务器集群中的数据处理方法与装置 |
CN112199052A (zh) * | 2020-11-04 | 2021-01-08 | 江苏特思达电子科技股份有限公司 | 一种文件下载方法、装置及计算机设备 |
CN113992658B (zh) * | 2021-10-28 | 2023-09-26 | 科大讯飞股份有限公司 | 数据传输方法及相关装置、设备、系统和存储介质 |
CN114338646A (zh) * | 2021-11-29 | 2022-04-12 | 王建冬 | 文件交互传输方法、装置、设备及存储介质 |
CN114466004A (zh) * | 2022-03-24 | 2022-05-10 | 成都新希望金融信息有限公司 | 一种文件传输方法、系统、电子设备及存储介质 |
CN115277678B (zh) * | 2022-07-29 | 2024-02-06 | 招商局金融科技有限公司 | 文件下载方法、装置、计算机设备及存储介质 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101605148A (zh) * | 2009-05-21 | 2009-12-16 | 何吴迪 | 云存储的并行系统的架构方法 |
CN101924797A (zh) * | 2010-08-26 | 2010-12-22 | 成都市华为赛门铁克科技有限公司 | 资源下载的处理方法、装置及系统 |
Family Cites Families (42)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5226118A (en) * | 1991-01-29 | 1993-07-06 | Prometrix Corporation | Data analysis system and method for industrial process control systems |
US6952737B1 (en) | 2000-03-03 | 2005-10-04 | Intel Corporation | Method and apparatus for accessing remote storage in a distributed storage cluster architecture |
US20030135539A1 (en) * | 2001-01-23 | 2003-07-17 | Tetsujiro Kondo | Communication apparatus, communication method, eletronic device, control method of the electronic device, and recording medium |
KR20010088742A (ko) | 2001-08-28 | 2001-09-28 | 문의선 | 분산처리 및 피어 대 피어 통신을 이용한 네트워크 상의정보전송 병렬화 방법 |
US20030204602A1 (en) * | 2002-04-26 | 2003-10-30 | Hudson Michael D. | Mediated multi-source peer content delivery network architecture |
AU2002328067A1 (en) * | 2002-09-02 | 2004-03-19 | Settec, Inc. | A copying apparatus for copying a recoding medium, a method thereof and a computer program thereof |
JP4320195B2 (ja) * | 2003-03-19 | 2009-08-26 | 株式会社日立製作所 | ファイルストレージサービスシステム、ファイル管理装置、ファイル管理方法、id指定型nasサーバ、および、ファイル読出方法 |
JP4601969B2 (ja) * | 2004-01-27 | 2010-12-22 | 株式会社日立製作所 | ファイル入出力制御装置 |
US7100008B2 (en) * | 2004-03-15 | 2006-08-29 | Hitachi, Ltd. | Long term data protection system and method |
US7694088B1 (en) * | 2005-03-31 | 2010-04-06 | Symantec Operating Corporation | System and method for efficient creation of aggregate backup images |
US20070038681A1 (en) * | 2005-08-10 | 2007-02-15 | Spare Backup, Inc. | System and method of remote storage of data through connection from a server to a client |
US7844775B2 (en) | 2005-09-23 | 2010-11-30 | Avid Technology, Inc. | Distribution of data in a distributed shared storage system |
US8041677B2 (en) * | 2005-10-12 | 2011-10-18 | Datacastle Corporation | Method and system for data backup |
US8554748B1 (en) * | 2005-11-30 | 2013-10-08 | Netapp, Inc. | Method and apparatus for differential file based update for embedded systems |
US20080126357A1 (en) | 2006-05-04 | 2008-05-29 | Wambo, Inc. | Distributed file storage and transmission system |
US8055902B2 (en) | 2007-01-12 | 2011-11-08 | International Business Machines Corporation | Method, system, and computer program product for data upload in a computing system |
JP2010517138A (ja) * | 2007-01-17 | 2010-05-20 | インタートラスト テクノロジーズ コーポレイション | ファイルフラグメントを共有する方法、システムおよび装置 |
JP5084551B2 (ja) | 2008-02-26 | 2012-11-28 | Kddi株式会社 | 重複排除技術を用いたデータバックアップ方法、記憶制御通信装置及びプログラム |
US8687530B2 (en) * | 2008-05-09 | 2014-04-01 | Microsoft Corporation | Stateful scheduling with network coding for roadside-to-vehicle communication |
US20090319530A1 (en) | 2008-06-18 | 2009-12-24 | International Business Machines Corporation | Mechanism for unequivocally referencing content in web 2.0 applications |
US8484162B2 (en) * | 2008-06-24 | 2013-07-09 | Commvault Systems, Inc. | De-duplication systems and methods for application-specific data |
JP5340664B2 (ja) | 2008-07-30 | 2013-11-13 | 株式会社ソニー・コンピュータエンタテインメント | データ配信システム |
JP5414223B2 (ja) * | 2008-09-16 | 2014-02-12 | 株式会社日立ソリューションズ | インターネットバックアップにおける転送データ管理システム |
US20110307457A1 (en) * | 2009-03-05 | 2011-12-15 | Hitachi Solutions, Ltd. | Integrated duplicate elimination system, data storage device, and server device |
US8295257B2 (en) | 2009-03-13 | 2012-10-23 | Telcordia Technologies, Inc. | Scalable disruptive-resistant communication method |
US8364644B1 (en) * | 2009-04-22 | 2013-01-29 | Network Appliance, Inc. | Exclusion of data from a persistent point-in-time image |
US20100312749A1 (en) * | 2009-06-04 | 2010-12-09 | Microsoft Corporation | Scalable lookup service for distributed database |
US10230692B2 (en) * | 2009-06-30 | 2019-03-12 | International Business Machines Corporation | Distributed storage processing module |
US8280958B2 (en) | 2009-07-13 | 2012-10-02 | International Business Machines Corporation | List passing in a background file sharing network |
US8370307B2 (en) | 2009-09-01 | 2013-02-05 | Empire Technology Development Llc | Cloud data backup storage manager |
US8914457B2 (en) * | 2009-10-06 | 2014-12-16 | Red Hat, Inc. | Caching of nodes in cache cluster |
US8296410B1 (en) * | 2009-11-06 | 2012-10-23 | Carbonite, Inc. | Bandwidth management in a client/server environment |
US8850113B2 (en) * | 2010-02-27 | 2014-09-30 | Cleversafe, Inc. | Data migration between a raid memory and a dispersed storage network memory |
US8832042B2 (en) * | 2010-03-15 | 2014-09-09 | Symantec Corporation | Method and system to scan data from a system that supports deduplication |
JP2011215794A (ja) | 2010-03-31 | 2011-10-27 | Fujitsu Ltd | 分散ストレージシステム及びプログラム |
TW201142646A (en) | 2010-05-21 | 2011-12-01 | xiang-yu Li | Cloud data storage system |
US8898114B1 (en) * | 2010-08-27 | 2014-11-25 | Dell Software Inc. | Multitier deduplication systems and methods |
US8947547B1 (en) * | 2010-09-12 | 2015-02-03 | Thomas Nathan Millikan | Context and content based automated image and media sharing |
US8489812B2 (en) | 2010-10-29 | 2013-07-16 | International Business Machines Corporation | Automated storage provisioning within a clustered computing environment |
US8825972B1 (en) * | 2010-11-19 | 2014-09-02 | Symantec Corporation | Method and system of producing a full backup image using an incremental backup method |
US9489658B2 (en) * | 2011-03-25 | 2016-11-08 | Telcentris, Inc. | Universal communication system |
US8555130B2 (en) * | 2011-10-04 | 2013-10-08 | Cleversafe, Inc. | Storing encoded data slices in a dispersed storage unit |
-
2011
- 2011-06-17 CN CN201110164407.4A patent/CN102833294B/zh active Active
- 2011-09-09 TW TW100132629A patent/TWI528191B/zh not_active IP Right Cessation
-
2012
- 2012-05-31 WO PCT/US2012/040169 patent/WO2012173785A1/en active Application Filing
- 2012-05-31 US US13/576,213 patent/US9774564B2/en active Active
- 2012-05-31 EP EP17171709.3A patent/EP3223165B1/en active Active
- 2012-05-31 EP EP12799809.4A patent/EP2721504B1/en active Active
- 2012-05-31 JP JP2014515852A patent/JP2014517420A/ja active Pending
-
2013
- 2013-01-24 HK HK13101054.6A patent/HK1173873A1/zh unknown
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101605148A (zh) * | 2009-05-21 | 2009-12-16 | 何吴迪 | 云存储的并行系统的架构方法 |
CN101924797A (zh) * | 2010-08-26 | 2010-12-22 | 成都市华为赛门铁克科技有限公司 | 资源下载的处理方法、装置及系统 |
Also Published As
Publication number | Publication date |
---|---|
EP2721504A4 (en) | 2015-08-05 |
JP2014517420A (ja) | 2014-07-17 |
EP2721504A1 (en) | 2014-04-23 |
EP3223165A1 (en) | 2017-09-27 |
WO2012173785A1 (en) | 2012-12-20 |
EP3223165B1 (en) | 2018-10-24 |
HK1173873A1 (zh) | 2013-05-24 |
US9774564B2 (en) | 2017-09-26 |
US20130073691A1 (en) | 2013-03-21 |
TW201301053A (zh) | 2013-01-01 |
CN102833294A (zh) | 2012-12-19 |
EP2721504B1 (en) | 2017-07-19 |
TWI528191B (zh) | 2016-04-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102833294B (zh) | 基于云存储的文件处理方法、系统及服务器集群系统 | |
CN105162878B (zh) | 基于分布式存储的文件分发系统及方法 | |
US9990385B2 (en) | Method and system for collecting and analyzing time-series data | |
CN105245373B (zh) | 一种容器云平台系统的搭建及运行方法 | |
US8601112B1 (en) | Method and system for collecting and analyzing time-series data | |
CN103686206B (zh) | 一种云环境下的视频转码方法和系统 | |
CN103067525B (zh) | 一种基于特征码的云存储数据备份方法 | |
CN103873507A (zh) | 数据分块上传与存储系统及方法 | |
CN106161633B (zh) | 一种基于云计算环境下打包文件的传输方法及系统 | |
US8250171B2 (en) | Content delivery apparatus, content delivery method, and content delivery program | |
CN102355426A (zh) | 实现离线文件传输的方法和系统 | |
CN103873504A (zh) | 数据分块存储至分布式服务器的系统及方法 | |
CN109918349A (zh) | 日志处理方法、装置、存储介质和电子装置 | |
CN103218233A (zh) | Hadoop异构集群中的数据分配策略 | |
US8086629B2 (en) | Content delivery apparatus, content delivery method, and content delivery program | |
CN110703980A (zh) | 一种文件传输方法及装置 | |
CN103780675B (zh) | 一种云盘文件同步方法和装置 | |
CN103634361A (zh) | 下载文件的方法和装置 | |
Upadhyay et al. | Deduplication and compression techniques in cloud design | |
CN109885548A (zh) | 日志查询方法、装置、存储介质和电子装置 | |
CN103823807A (zh) | 一种去除重复数据的方法、装置及系统 | |
CN107346270A (zh) | 基于实时计算的基数估计的方法和系统 | |
EP3803616A1 (en) | Change notifications for object storage | |
CN103248636B (zh) | 离线下载的系统及方法 | |
CN107644017A (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 | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: DE Ref document number: 1173873 Country of ref document: HK |
|
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: GR Ref document number: 1173873 Country of ref document: HK |