CN109951514B - 基于云存储的文件处理方法、系统及计算机设备 - Google Patents
基于云存储的文件处理方法、系统及计算机设备 Download PDFInfo
- Publication number
- CN109951514B CN109951514B CN201910040715.2A CN201910040715A CN109951514B CN 109951514 B CN109951514 B CN 109951514B CN 201910040715 A CN201910040715 A CN 201910040715A CN 109951514 B CN109951514 B CN 109951514B
- Authority
- CN
- China
- Prior art keywords
- file
- slice
- slicing
- data
- web server
- 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
- 238000003672 processing method Methods 0.000 title claims abstract description 29
- 238000012545 processing Methods 0.000 claims description 34
- 238000004422 calculation algorithm Methods 0.000 claims description 30
- 230000006870 function Effects 0.000 claims description 20
- 238000000034 method Methods 0.000 claims description 11
- 238000004590 computer program Methods 0.000 claims description 10
- 238000004806 packaging method and process Methods 0.000 claims description 7
- 238000004364 calculation method Methods 0.000 claims description 5
- 230000005540 biological transmission Effects 0.000 claims description 3
- 239000002699 waste material Substances 0.000 abstract description 4
- 238000005516 engineering process Methods 0.000 abstract description 3
- 238000010586 diagram Methods 0.000 description 7
- 238000004891 communication Methods 0.000 description 2
- 238000007796 conventional method Methods 0.000 description 2
- 125000004122 cyclic group Chemical group 0.000 description 2
- 238000013500 data storage Methods 0.000 description 2
- 230000010354 integration Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 230000009897 systematic effect Effects 0.000 description 2
- 230000008094 contradictory effect Effects 0.000 description 1
- 238000013523 data management Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 239000002184 metal Substances 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
Images
Classifications
-
- 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/13—File access structures, e.g. distributed indices
-
- 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
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)
- Information Transfer Between Computers (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明实施例提供了一种基于云存储的文件处理方法,包括:向WEB服务器发送文件上传请求;接收所述服务器集群经由所述WEB服务器返回的的文件ID;对所述新文件进行切片,并为每个切片文件分配切片序号;根据每个切片文件的文件数据、文件ID、切片序号计算每个切片文件的切片ID,所述切片ID用于标识所述切片文件与待上传新文件的唯一对应关系;将所述切片文件数据包上传给WEB服务器,以通过所述WEB服务器将所述切片文件数据包中的每个切片文件的切片数据发送到所述服务器集群中的对应服务终端上进行存储。本发明实施例通过改进后的切片数据上传技术,避免资源浪费的同时,还避免了待上传文件和切片文件不一致的问题,有效保障了上传数据的正确性。
Description
技术领域
本发明实施例涉及计算机数据处理领域,尤其涉及一种基于云存储的文件处理方法、系统、计算机设备及计算机可读存储介质。
背景技术
云存储是指通过集群应用、网格技术或分布式文件系统等功能,将网络中大量不同类型的存储设备通过应用软件集合在一起,实现协同工作,共同对外提供数据存储和业务访问功能。即当云计算系统运算和处理的核心是大量数据的存储和管理时,云计算系统就需要配置大量的存储设备,此时的云计算系统就转变为一个云存储系统,所以云存储系统就是一个以数据存储和管理为核心的云计算系统。这个存储系统由多个存储设备组成,通过集群功能、分布式文件系统或类似网格计算等功能联合起来协同工作,并通过一定的应用软件或应用接口,为用户提供一定类型的存储服务和访问服务。
现有的云存储方案一般是基于整个文件上传或基于切片数据上传。均存在一定的技术缺陷:(1)基于整个文件上传,容易造成资源的浪费,例如,当用户上传了一个较大的文件后,如果只修改了该文件的一小部分,此时仍需要重传整个文件;(2)基于切片数据上传,容易造成因误操作造成上传故障,例如,如果人为或系统的误操作把不同的待上传文件与切片文件对应关系弄混了,就有可能会出现待上传新文件与切片文件不一致的问题。
发明内容
有鉴于此,本发明实施例的目的是提供一种基于云存储的文件处理方法、系统、计算机设备及计算机可读存储介质,解决现有技术资源浪费和上传故障的技术问题。
为实现上述目的,本发明实施例提供了一种基于云存储的文件处理方法,包括以下步骤:
向WEB服务器发送文件上传请求,所述文件上传请求用于请求向服务器集群上传新文件;
接收所述服务器集群经由所述WEB服务器返回的的文件ID,所述文件ID 为所述服务器集群为所述新文件生成的;
对所述新文件进行切片,并为每个切片文件分配切片序号;
根据每个切片文件的文件数据、文件ID、切片序号计算每个切片文件的切片ID,所述切片ID用于标识所述切片文件与待上传新文件的唯一对应关系;
封装切片文件数据包,所述切片文件数据包中包含文件ID、每个切片文件的切片ID、每个切片文件的切片序号、每个切片文件的切片数据;及
将所述切片文件数据包上传给所述WEB服务器,以通过所述WEB服务器将所述切片文件数据包中的每个切片文件的切片数据发送到所述服务器集群中的对应服务终端上进行存储,其中,所述服务器集群用于保存所述文件ID、每个切片文件的切片ID及每个切片文件的切片序号的对应关系。
优选地,根据每个切片文件的文件数据、文件ID、切片序号计算每个切片文件的切片ID的步骤,包括:
将每个切片文件对应的文件数据、文件ID以及切片序号串接成字符串,及
根据每个切片对应的字符串,通过散列算法计算每个切片文件的切片ID。
优选地,根据每个切片文件的文件数据、文件ID、切片序号计算每个切片文件的切片ID的步骤,包括:
根据每个切片文件的文件数据,通过散列算法计算每个切片文件的切片初始值;及
根据每个切片对应的切片初始值、文件ID以及切片序号,通过散列算法计算每个切片文件的切片ID。
优选地,当计算机设备需要下载文件时,所述方法包括以下步骤:
向所述WEB服务器发送文件下载请求,所述文件下载请求中包含所述计算机设备请求下载文件的文件ID;
接收所述WEB服务器基于所述文件下载请求从所述服务器集群对应的服务终端上获取的每个切片文件,其中,每个切片文件包括文件ID、每个切片文件的切片ID、每个切片文件的切片序号、每个切片文件的切片数据;
根据每个切片文件中的切片序号,将接收到的切片文件组成所述请求下载的文件。
为实现上述目的,本发明实施例还提供了基于云存储的文件处理系统,包括:
发送模块,用于向WEB服务器发送文件上传请求,所述文件上传请求用于请求向服务器集群上传新文件;
接收模块,用于接收所述服务器集群经由所述WEB服务器返回的的文件 ID,所述文件ID为所述服务器集群为所述新文件生成的;
切片模块,用于对所述新文件进行切片,并为每个切片文件分配切片序号;
计算模块,用于根据每个切片文件的文件数据、文件ID、切片序号计算每个切片文件的切片ID,所述切片ID用于标识所述切片文件与待上传新文件的唯一对应关系;
封装模块,用于封装切片文件数据包,所述切片文件数据包中包含文件ID、每个切片文件的切片ID、每个切片文件的切片序号、每个切片文件的切片数据;及
文件上传模块,用于将所述切片文件数据包上传所述WEB服务器,以通过所述WEB服务器将所述切片文件数据包中的每个切片文件的切片数据发送到所述服务器集群中的对应服务终端上进行存储,其中,所述服务器集群用于保存所述文件ID、每个切片文件的切片ID及每个切片文件的切片序号的对应关系。
为实现上述目的,本发明实施例还提供了一种计算机设备,所述计算机设备存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被处理器执行时实现如上所述的基于云存储的文件处理方法的步骤。
为实现上述目的,本发明实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质内存储有计算机程序,所述计算机程序可被至少一个处理器所执行,以使所述至少一个处理器执行如上所述的基于云存储的文件处理方法的步骤。
为实现上述目的,本发明实施例还提供了基于云存储的文件处理系统,包括:
WEB服务器,用于接收计算机设备发送的文件上传请求,所述文件上传请求用于请求向服务器集群上传新文件,并向所述计算机设备返回所述服务器集群为所述新文件生成的文件ID;
所述计算机设备,用于对所述新文件进行切片,并为每个切片文件分配切片序号;用于根据每个切片文件的文件数据、文件ID、切片序号计算每个切片文件的切片ID,所述切片ID用于标识所述切片文件与待上传新文件的唯一对应关系;以及用于将切片文件数据包上传给所述WEB服务器,所述切片文件数据包中包含文件ID、每个切片文件的切片ID、每个切片文件的切片序号、每个切片文件的切片数据;
WEB服务器,还用于将所述切片文件数据包中的每个切片文件的切片数据发送到所述服务器集群;
所述服务器集群,用于将每个切片文件的切片数据存储到对应的服务终端上,其中,所述服务器集群保存所述文件ID、每个切片文件的切片ID及每个切片文件的切片序号的对应关系。
优选地,所述计算机设备还用于:
将每个切片文件对应的文件数据、文件ID以及切片序号串接成字符串;及根据每个切片对应的字符串,通过散列算法计算每个切片文件的切片ID;或
根据每个切片文件的文件数据,通过散列算法计算每个切片文件的切片初始值;及根据每个切片对应的切片初始值、文件ID以及切片序号,通过散列算法计算每个切片文件的切片ID。
优选地,
所述计算机设备,还用于向所述WEB服务器发送文件下载请求,所述文件下载请求中包含计算机设备请求下载文件的文件ID;
所述WEB服务器,还用于将所述文件下载请求发送给所述服务器集群;
所述服务器集群,还用于向所述WEB服务器发送存储与所述文件ID对应的文件的每个切片文件的服务终端的地址;
所述WEB服务器,还用于根据所述服务终端的地址从对应的服务终端上获取每个切片文件,其中,每个切片文件包括文件ID、每个切片文件的切片ID、每个切片文件的切片序号、每个切片文件的切片数据;
所述WEB服务器,还用于将每个切片文件分别传送给计算机设备;
所述计算机设备,还用于根据每个切片文件中的切片序号,将接收到的切片文件组成所述请求下载的文件。
本发明实施例提供的基于云存储的文件处理方法、系统、计算机设备及计算机可读存储介质,每个切片文件的切片ID的计算依据为“每个切片文件的文件数据、文件ID、切片序号”三者相结合,每个切片ID都能保证该切片ID、该切片文件、待上传新文件之前的唯一对应关系,即使因为人为或系统的误操作把不同的待上传文件与切片文件对应关系弄混了,也不会出现待上传新文件与切片文件不一致的问题。
可知,由于本发明实施例通过改进后的切片数据上传技术,避免整个文件重复上传而导致资源浪费,还避免了待上传文件和切片文件不一致的问题,有效保障了上传数据的正确性。
附图说明
图1为本发明基于云存储的文件处理方法实施例一的运行环境图。
图2为本发明基于云存储的文件处理方法实施例一的流程示意图。
图3为本发明基于云存储的文件处理方法实施例一中的文件接收步骤的流程示意图。
图4为本发明基于云存储的文件处理方法实施例三的流程示意图。
图5为本发明基于云存储的文件处理方法实施例三中的文件接收步骤的流程示意图。
图6为本发明基于云存储的文件处理系统实施例四的程序模块示意图。
图7为本发明计算机设备实施例五的硬件结构示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
需要说明的是,在本发明中涉及“第一”、“第二”等的描述仅用于描述目的,而不能理解为指示或暗示其相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。另外,各个实施例之间的技术方案可以相互结合,但是必须是以本领域普通技术人员能够实现为基础,当技术方案的结合出现相互矛盾或无法实现时应当认为这种技术方案的结合不存在,也不在本发明要求的保护范围之内。
图1所示,为本发明实施例之运行环境图。文件处理系统1000中包括多个执行主体,所述多个执行主体包括:
计算机设备2,可为用于具备上网功能的任意类型的设备。例如,个人数字助理(PersonalDigital Assistant,PDA)、智能手机、笔记型电脑、上网本、个人计算机及其他类似设备;
WEB服务器4,用于与计算机设备2通信;
服务器集群6,服务器集群6进一步包括至少一个服务集群整合端(ServiceManager)、每个集群服务整合端下可以连接若干服务分配端(Service Master)、每个服务分配端下可以连接若干服务终端(Service Worker),所述服务终端用于存储2计算机设备上传的数据文件。
以下将基于文件处理系统1000(包括计算机设备2、WEB服务器4、服务器集群6等多个执行主体),对实施例一中的文件处理方法进行示例性描述。
实施例一
参阅图2,示出了本发明实施例一之文件处理方法的步骤流程图。可以理解,本方法实施例中的流程图不用于对执行步骤的顺序进行限定。具体如下。
步骤S100,计算机设备2发送文件上传请求至WEB服务器4中。
所述文件上传请求用于请求向服务器集群6上传新文件。
步骤S102,WEB服务器4将所述文件上传请求转发至服务器集群6。
步骤S104,服务器集群6为所述新文件生成的文件ID。
步骤S106,服务器集群6件所述文件ID发送至WEB服务器4。
步骤S108,WEB服务器4将所述文件ID转发至计算机设备2。
步骤S110,计算机设备2对所述新文件进行切片,并为每个切片文件分配切片序号。
示例性的,每个切片文件的切片序号可以为数字1、2、3等,也可以是字母是A、B、C等,也可以是其他数字、其他字母或其他类型的字符或文字等,用于表明每个切片文件彼此之间的顺序关系。
步骤S112,计算机设备2根据每个切片文件的文件数据、文件ID、切片序号计算每个切片文件的切片ID,所述切片ID用于标识所述切片文件与待上传新文件的唯一对应关系。
在示例性的实施例中,所述步骤S112包括:
步骤S112A1,计算机设备2将每个切片文件对应的文件数据、文件ID以及切片序号串接成字符串;
步骤S112A2,计算机设备2根据每个切片对应的字符串,通过散列算法计算每个切片文件的切片ID。
需要说明的是,字符串中三者的顺序可以根据需要进行调整,比如:可以调整为每个切片文件的文件数据、每个切片文件的切片序号、文件ID,也可以调整为文件ID、每个切片文件的切片序号、每个切片文件的文件数据等其他顺序。
所述散列算法可以是MD5(Message Digest Algorithm)、SHA(Secure HashAlgorithm)、MAC(Message Authentication Code)、CRC(Cyclic Redundancy Check)等,具体计算过程可以是:对每个切片文件的文件数据、文件ID、每个切片文件的切片序号三者串接成的字符串执行散列(Hash)函数的摘要运算,以得到摘要运算结果,将此摘要运算结果作为每个切片文件的切片ID。亦即,每个切片文件的切片ID=Hash函数(每个切片文件的文件数据、文件ID、每个切片文件的切片序号),因为Hash函数是现有技术,所以就不作详细描述。
在示例性的实施例中,所述步骤S112包括:
步骤S112B1,计算机设备2根据每个切片文件的文件数据,通过散列算法计算每个切片文件的切片初始值;
步骤S112B2,计算机设备2根据每个切片对应的切片初始值、文件ID以及切片序号,通过散列算法计算每个切片文件的切片ID。
举例而言,每个切片文件的切片初始值=MD5函数(每个切片文件的文件数据),每个切片文件的切片ID=SHA函数(每个切片文件的切片初始值、文件ID、每个切片文件的切片序号),因为MD5函数与Hash函数是现有技术,所以就不作详细描述。
步骤S114,计算机设备2将切片文件数据包上传给WEB服务器4。
所述切片文件数据包中包含文件ID、每个切片文件的切片ID、每个切片文件的切片序号、每个切片文件的切片数据。
步骤S116,WEB服务器4将所述切片文件数据包中的每个切片文件的切片数据发送到服务器集群6。
步骤S118,服务器集群6将每个切片文件的切片数据存储到对应的服务终端上。其中,服务器集群6用于保存所述文件ID、每个切片文件的切片ID及每个切片文件的切片序号的对应关系。
步骤S120,服务器集群6将存储完成的通知消息返回给WEB服务器4。
步骤S122,WEB服务器4件所述通知消息转发至计算机设备2。
在示例性的实施例中,如图3所示,所述文件处理方法还可以包括文件下载步骤S124。具体如下。
步骤S124A,计算机设备向WEB服务器4发送文件下载请求,所述文件下载请求中包含计算机设备2请求下载文件的文件ID;
步骤S124B,WEB服务器4将所述文件下载请求发送给服务器集群6;
步骤S124C,服务器集群6向WEB服务器4发送存储与所述文件ID对应的文件的每个切片文件的服务终端的地址;
步骤S124D,WEB服务器4根据所述服务终端的地址从对应的服务终端上获取每个切片文件,其中,每个切片文件包括文件ID、每个切片文件的切片ID、每个切片文件的切片序号、每个切片文件的切片数据;
步骤S124E,WEB服务器4将每个切片文件分别传送给计算机设备;
步骤S124F,计算机设备根据每个切片文件中的切片序号,将接收到的切片文件组成所述请求下载的文件。
可以理解:(1)本实施例中每个切片文件的切片ID的计算依据为“每个切片文件的文件数据、文件ID、切片序号”三者相结合,每个切片ID都能保证该切片ID、该切片文件、待上传新文件之前的唯一对应关系,即使因为人为或系统的误操作把不同的待上传文件与切片文件对应关系弄混了,也不会出现待上传新文件与切片文件不一致的问题;(2)当计算机设备2需要下载文件时,本实施例中的WEB服务器4会先将每个切片文件分别传送给计算机设备2,计算机设备再根据每个切片文件中的切片序号,将接收到的切片文件组成所述请求下载的文件,这样“将文件分片发送”可以优化网络带宽的利用,且传送性能更加优化。
实施例二
继续参阅图1,本实施例用于对文件处理系统1000进行示例性描述。
文件处理系统1000包括计算机设备2、WEB服务器4、服务器集群6。
WEB服务器4,用于接收计算机设备2发送的文件上传请求,所述文件上传请求用于请求向服务器集群6上传新文件,并向计算机设备4返回服务器集群6为所述新文件生成的文件ID。
计算机设备2,用于对所述新文件进行切片,并为每个切片文件分配切片序号;用于根据每个切片文件的文件数据、文件ID、切片序号计算每个切片文件的切片ID,所述切片ID用于标识所述切片文件与待上传新文件的唯一对应关系;以及用于将切片文件数据包上传给WEB服务器,所述切片文件数据包中包含文件ID、每个切片文件的切片ID、每个切片文件的切片序号、每个切片文件的切片数据。
在示例性的实施例中,根据每个切片文件的文件数据、文件ID、切片序号计算每个切片文件的切片ID,进一步包括:计算机设备2将每个切片文件对应的文件数据、文件ID以及切片序号串接成字符串;计算机设备2根据每个切片对应的字符串,通过散列算法计算每个切片文件的切片ID。
在另一示例性的实施例中,根据每个切片文件的文件数据、文件ID、切片序号计算每个切片文件的切片ID,进一步包括:计算机设备2根据每个切片文件的文件数据,通过散列算法计算每个切片文件的切片初始值;计算机设备2 根据每个切片对应的切片初始值、文件ID以及切片序号,通过散列算法计算每个切片文件的切片ID。
WEB服务器4,还用于将所述切片文件数据包中的每个切片文件的切片数据发送到服务器集群6。
服务器集群6,用于将每个切片文件的切片数据存储到对应的服务终端上,其中,所述服务器集群保存所述文件ID、每个切片文件的切片ID及每个切片文件的切片序号的对应关系。
在示例性的实施例中:
计算机设备2,还用于向WEB服务器4发送文件下载请求,所述文件下载请求中包含计算机设备2请求下载文件的文件ID;
WEB服务器4,还用于将所述文件下载请求发送给服务器集群6;
服务器集群6,还用于向WEB服务器4发送存储与所述文件ID对应的文件的每个切片文件的服务终端的地址;
WEB服务器4,还用于根据所述服务终端的地址从对应的服务终端上获取每个切片文件,其中,每个切片文件包括文件ID、每个切片文件的切片ID、每个切片文件的切片序号、每个切片文件的切片数据;
WEB服务器4,还用于将每个切片文件分别传送给计算机设备;
计算机设备2,还用于根据每个切片文件中的切片序号,将接收到的切片文件组成所述请求下载的文件。
以下将以计算机设备2为执行主体,对实施例三中的文件处理方法进行示例性描述。
实施例三
参阅图4,示出了本发明实施例三之文件处理方法的步骤流程图。可以理解,本方法实施例中的流程图不用于对执行步骤的顺序进行限定。具体如下。
步骤S200,向WEB服务器发送文件上传请求,所述文件上传请求用于请求向服务器集群上传新文件。
步骤S202,接收服务器集群经由WEB服务器返回的的文件ID,所述文件 ID为服务器集群为所述新文件生成的。
步骤S204,对所述新文件进行切片,并为每个切片文件分配切片序号。
步骤S206,根据每个切片文件的文件数据、文件ID、切片序号计算每个切片文件的切片ID,所述切片ID用于标识所述切片文件与待上传新文件的唯一对应关系。
在示例性的实施例中,所述步骤S206包括:
步骤S206A1,将每个切片文件对应的文件数据、文件ID以及切片序号串接成字符串;
步骤S206A2,根据每个切片对应的字符串,通过散列算法计算每个切片文件的切片ID。
需要说明的是,字符串中三者的顺序可以根据需要进行调整,比如:可以调整为每个切片文件的文件数据、每个切片文件的切片序号、文件ID,也可以调整为文件ID、每个切片文件的切片序号、每个切片文件的文件数据等其他顺序。
所述散列算法可以是MD5(Message Digest Algorithm)、SHA(Secure HashAlgorithm)、MAC(Message Authentication Code)、CRC(Cyclic Redundancy Check)等,具体计算过程可以是:对每个切片文件的文件数据、文件ID、每个切片文件的切片序号三者串接成的字符串执行散列(Hash)函数的摘要运算,以得到摘要运算结果,将此摘要运算结果作为每个切片文件的切片ID。亦即,每个切片文件的切片ID=Hash函数(每个切片文件的文件数据、文件ID、每个切片文件的切片序号),因为Hash函数是现有技术,所以就不作详细描述。
在示例性的实施例中,所述步骤S206包括:
步骤S206B1,根据每个切片文件的文件数据,通过散列算法计算每个切片文件的切片初始值;
步骤S206B2,根据每个切片对应的切片初始值、文件ID以及切片序号,通过散列算法计算每个切片文件的切片ID。
举例而言,每个切片文件的切片初始值=MD5函数(每个切片文件的文件数据),每个切片文件的切片ID=SHA函数(每个切片文件的切片初始值、文件ID、每个切片文件的切片序号),因为MD5函数与Hash函数是现有技术,所以就不作详细描述。
步骤S208,封装切片文件数据包,所述切片文件数据包中包含文件ID、每个切片文件的切片ID、每个切片文件的切片序号、每个切片文件的切片数据。
步骤S210,将所述切片文件数据包上传给WEB服务器,以通过WEB服务器将所述切片文件数据包中的每个切片文件的切片数据发送到服务器集群中的对应服务终端上进行存储,其中,服务器集群用于保存所述文件ID、每个切片文件的切片ID及每个切片文件的切片序号的对应关系。
在示例性的实施例中,如图5所示,所述文件处理方法还可以包括文件下载步骤S212。具体如下。
步骤S212A,向WEB服务器发送文件下载请求,所述文件下载请求中包含计算机设备请求下载文件的文件ID;
步骤S212B,接收WEB服务器基于所述文件下载请求从服务器集群对应的服务终端上获取的每个切片文件,其中,每个切片文件包括文件ID、每个切片文件的切片ID、每个切片文件的切片序号、每个切片文件的切片数据;
步骤S212C,根据每个切片文件中的切片序号,将接收到的切片文件组成所述请求下载的文件。
实施例四
请继续参阅图6,示出了本发明基于云存储的文件处理系统实施例四的程序模块示意图。
需要说明的是,图1所示的文件处理系统1000为多个执行主体构成的外部架构系统。本实施例中所述的文件处理系统20为由一个或多个程序模块组成的软件集合。
在本实施例中,基于云存储的文件处理系统20可以包括或被分割成一个或多个程序模块,一个或者多个程序模块被存储于存储介质中,并由一个或多个处理器所执行,以完成本发明,并可实现上述基于云存储的文件处理方法。本发明实施例所称的程序模块是指能够完成特定功能的一系列计算机程序指令段,比程序本身更适合于描述基于云存储的文件处理系统20在存储介质中的执行过程。以下描述将具体介绍本实施例各程序模块的功能:
发送模块200,用于向WEB服务器发送文件上传请求,所述文件上传请求用于请求向服务器集群上传新文件。
接收模块202,用于接收所述服务器集群经由所述WEB服务器返回的的文件ID,所述文件ID为所述服务器集群为所述新文件生成的。
切片模块204,用于对所述新文件进行切片,并为每个切片文件分配切片序号。
计算模块206,用于根据每个切片文件的文件数据、文件ID、切片序号计算每个切片文件的切片ID,所述切片ID用于标识所述切片文件与待上传新文件的唯一对应关系。
在示例性的实施例中,计算模块206,还用于将每个切片文件对应的文件数据、文件ID以及切片序号串接成字符串,及根据每个切片对应的字符串,通过散列算法计算每个切片文件的切片ID。
在示例性的实施例中,计算模块206,还用于根据每个切片文件的文件数据,通过散列算法计算每个切片文件的切片初始值;及根据每个切片对应的切片初始值、文件ID以及切片序号,通过散列算法计算每个切片文件的切片ID。
封装模块208,用于封装切片文件数据包,所述切片文件数据包中包含文件ID、每个切片文件的切片ID、每个切片文件的切片序号、每个切片文件的切片数据。
文件上传模块210,用于将所述切片文件数据包上传给WEB服务器,以通过所述WEB服务器将所述切片文件数据包中的每个切片文件的切片数据发送到所述服务器集群中的对应服务终端上进行存储,其中,所述服务器集群用于保存所述文件ID、每个切片文件的切片ID及每个切片文件的切片序号的对应关系。
在示例性的实施例中,还包括文件接收模块212,用于:向所述WEB服务器发送文件下载请求,所述文件下载请求中包含所述计算机设备请求下载文件的文件ID;接收所述WEB服务器基于所述文件下载请求从所述服务器集群对应的服务终端上获取的每个切片文件,其中,每个切片文件包括文件ID、每个切片文件的切片ID、每个切片文件的切片序号、每个切片文件的切片数据;根据每个切片文件中的切片序号,将接收到的切片文件组成所述请求下载的文件。
实施例五
参阅图7,是本发明实施例五之计算机设备的硬件架构示意图。本实施例中,所述计算机设备2是一种能够按照事先设定或者存储的指令,自动进行数值计算和/或信息处理的设备。该计算机设备2可以是个人数字助理(Personal Digital Assistant,PDA)、智能手机、笔记型电脑、上网本、个人计算机及其他类似设备等。如图所示,所述计算机设备2至少包括,但不限于,可通过系统总线相互通信连接存储器21、处理器22、网络接口23、以及基于云存储的文件处理系统20。其中:
本实施例中,存储器21至少包括一种类型的计算机可读存储介质,所述可读存储介质包括闪存、硬盘、多媒体卡、卡型存储器(例如,SD或DX存储器等)、随机访问存储器(RAM)、静态随机访问存储器(SRAM)、只读存储器 (ROM)、电可擦除可编程只读存储器(EEPROM)、可编程只读存储器 (PROM)、磁性存储器、磁盘、光盘等。在一些实施例中,存储器21可以是计算机设备2的内部存储单元,例如该计算机设备2的硬盘或内存。在另一些实施例中,存储器21也可以是计算机设备2的外部存储设备,例如该计算机设备20上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字 (Secure Digital,SD)卡,闪存卡(Flash Card)等。当然,存储器21还可以既包括计算机设备2的内部存储单元也包括其外部存储设备。本实施例中,存储器21通常用于存储安装于计算机设备2的操作系统和各类应用软件,例如实施例四的基于云存储的文件处理系统20的程序代码等。此外,存储器21还可以用于暂时地存储已经输出或者将要输出的各类数据。
处理器22在一些实施例中可以是中央处理器(Central Processing Unit, CPU)、控制器、微控制器、微处理器、或其他数据处理芯片。该处理器22通常用于控制计算机设备2的总体操作。本实施例中,处理器22用于运行存储器 21中存储的程序代码或者处理数据,例如运行基于云存储的文件处理系统20,以实现实施例三的基于云存储的文件处理方法。
所述网络接口23可包括无线网络接口或有线网络接口,该网络接口23通常用于在所述计算机设备2与其他电子装置之间建立通信连接。例如,所述网络接口23用于通过网络将所述计算机设备2与外部终端相连,在所述计算机设备2与外部终端之间的建立数据传输通道和通信连接等。所述网络可以是企业内部网(Intranet)、互联网(Internet)、全球移动通讯系统(Global System of Mobile communication,GSM)、宽带码分多址(WidebandCode Division Multiple Access, WCDMA)、4G网络、5G网络、蓝牙(Bluetooth)、Wi-Fi等无线或有线网络。
需要指出的是,图7仅示出了具有部件20-23的计算机设备2,但是应理解的是,并不要求实施所有示出的部件,可以替代的实施更多或者更少的部件。
在本实施例中,存储于存储器21中的所述基于云存储的文件处理系统20 还可以被分割为一个或者多个程序模块,所述一个或者多个程序模块被存储于存储器21中,并由一个或多个处理器(本实施例为处理器22)所执行,以完成本发明。
例如,图6示出了所述实现基于云存储的文件处理系统20实施例四的程序模块示意图,该实施例中,所述基于云存储的文件处理系统20可以被划分为发送模块200、接收模块202、切片模块204、计算模块206、封装模块208、文件上传模块210和文件接收模块212。其中,本发明所称的程序模块是指能够完成特定功能的一系列计算机程序指令段,比程序更适合于描述所述基于云存储的文件处理系统20在所述计算机设备2中的执行过程。所述程序模块200-212 的具体功能在实施例四中已有详细描述,在此不再赘述。
实施例六
本实施例还提供一种计算机可读存储介质,如闪存、硬盘、多媒体卡、卡型存储器(例如,SD或DX存储器等)、随机访问存储器(RAM)、静态随机访问存储器(SRAM)、只读存储器(ROM)、电可擦除可编程只读存储器 (EEPROM)、可编程只读存储器(PROM)、磁性存储器、磁盘、光盘、服务器、App应用商城等等,其上存储有计算机程序,程序被处理器执行时实现相应功能。本实施例的计算机可读存储介质用于存储基于云存储的文件处理系统 20,被处理器执行时实现实施例三的基于云存储的文件处理方法。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
Claims (10)
1.一种基于云存储的文件处理方法,应用于计算机设备中,其特征在于,所述方法包括:
向WEB服务器发送文件上传请求,所述文件上传请求用于请求向服务器集群上传新文件;
接收所述服务器集群经由所述WEB服务器返回的文件ID,所述文件ID为所述服务器集群为所述新文件生成的;
对所述新文件进行切片,并为每个切片文件分配切片序号;
根据每个切片文件的文件数据、切片文件所在文件的文件ID、切片序号计算每个切片文件的切片ID,所述切片ID用于标识所述切片文件与待上传新文件的唯一对应关系;其中,计算每个切片文件的切片ID,包括:对每个切片文件的文件数据、切片文件所在文件的文件ID、每个切片文件的切片序号三者串接成的字符串执行散列函数的摘要运算,以得到摘要运算结果,将此摘要运算结果作为每个切片文件的切片ID;
封装切片文件数据包,所述切片文件数据包中包含文件ID、每个切片文件的切片ID、每个切片文件的切片序号、每个切片文件的切片数据;及
将所述切片文件数据包上传给所述WEB服务器,以通过所述WEB服务器将所述切片文件数据包中的每个切片文件的切片数据发送到所述服务器集群中的对应服务终端上进行存储,其中,所述服务器集群用于保存每个切片文件所在文件的文件ID、每个切片文件的切片ID及每个切片文件的切片序号的对应关系。
2.根据权利要求1所述的基于云存储的文件处理方法,其特征在于,根据每个切片文件的文件数据、文件ID、切片序号计算每个切片文件的切片ID的步骤,包括:
将每个切片文件对应的文件数据、文件ID以及切片序号串接成字符串,及
根据每个切片对应的字符串,通过散列算法计算每个切片文件的切片ID。
3.根据权利要求1所述的基于云存储的文件处理方法,其特征在于,根据每个切片文件的文件数据、文件ID、切片序号计算每个切片文件的切片ID的步骤,包括:
根据每个切片文件的文件数据,通过散列算法计算每个切片文件的切片初始值;及
根据每个切片对应的切片初始值、文件ID以及切片序号,通过散列算法计算每个切片文件的切片ID。
4.根据权利要求1~3任意一项所述的基于云存储的文件处理方法,其特征在于,当计算机设备需要下载文件时,所述方法包括以下步骤:
向所述WEB服务器发送文件下载请求,所述文件下载请求中包含所述计算机设备请求下载文件的文件ID;
接收所述WEB服务器基于所述文件下载请求从所述服务器集群对应的服务终端上获取的每个切片文件,其中,每个切片文件包括文件ID、每个切片文件的切片ID、每个切片文件的切片序号、每个切片文件的切片数据;
根据每个切片文件中的切片序号,将接收到的切片文件组成所述请求下载的文件。
5.一种基于云存储的文件处理系统,应用于计算机设备中,其特征在于,所述系统包括:
发送模块,用于向WEB服务器发送文件上传请求,所述文件上传请求用于请求向服务器集群上传新文件;
接收模块,用于接收所述服务器集群经由所述WEB服务器返回的文件ID,所述文件ID为所述服务器集群为所述新文件生成的;
切片模块,用于对所述新文件进行切片,并为每个切片文件分配切片序号;
计算模块,用于根据每个切片文件的文件数据、切片文件所在文件的文件ID、切片序号计算每个切片文件的切片ID,所述切片ID用于标识所述切片文件与待上传新文件的唯一对应关系;其中,计算每个切片文件的切片ID,包括:对每个切片文件的文件数据、切片文件所在文件的文件ID、每个切片文件的切片序号三者串接成的字符串执行散列函数的摘要运算,以得到摘要运算结果,将此摘要运算结果作为每个切片文件的切片ID;
封装模块,用于封装切片文件数据包,所述切片文件数据包中包含文件ID、每个切片文件的切片ID、每个切片文件的切片序号、每个切片文件的切片数据;及
文件上传模块,用于将所述切片文件数据包上传给所述WEB服务器,以通过所述WEB服务器将所述切片文件数据包中的每个切片文件的切片数据发送到所述服务器集群中的对应服务终端上进行存储,其中,所述服务器集群用于保存每个切片文件所在文件的文件ID、每个切片文件的切片ID及每个切片文件的切片序号的对应关系。
6.一种计算机设备,所述计算机设备存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至4中任一项所述的基于云存储的文件处理方法的步骤。
7.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质内存储有计算机程序,所述计算机程序可被至少一个处理器所执行,以使所述至少一个处理器执行如权利要求1至4中任一项所述的基于云存储的文件处理方法的步骤。
8.一种基于云存储的文件处理系统,其特征在于,所述系统包括:
WEB服务器,用于接收计算机设备发送的文件上传请求,所述文件上传请求用于请求向服务器集群上传新文件,并向所述计算机设备返回所述服务器集群为所述新文件生成的文件ID;
所述计算机设备,用于对所述新文件进行切片,并为每个切片文件分配切片序号;用于根据每个切片文件的文件数据、切片文件所在文件的文件ID、切片序号计算每个切片文件的切片ID,所述切片ID用于标识所述切片文件与待上传新文件的唯一对应关系;以及用于将切片文件数据包上传给所述WEB服务器,所述切片文件数据包中包含文件ID、每个切片文件的切片ID、每个切片文件的切片序号、每个切片文件的切片数据;其中,计算每个切片文件的切片ID,包括:对每个切片文件的文件数据、切片文件所在文件的文件ID、每个切片文件的切片序号三者串接成的字符串执行散列函数的摘要运算,以得到摘要运算结果,将此摘要运算结果作为每个切片文件的切片ID;
WEB服务器,还用于将所述切片文件数据包中的每个切片文件的切片数据发送到所述服务器集群;
所述服务器集群,用于将每个切片文件的切片数据存储到对应的服务终端上,其中,所述服务器集群保存每个切片文件所在文件的文件ID、每个切片文件的切片ID及每个切片文件的切片序号的对应关系。
9.根据权利要求8所述的基于云存储的文件处理系统,其特征在于,所述计算机设备还用于:
将每个切片文件对应的文件数据、文件ID以及切片序号串接成字符串;及根据每个切片对应的字符串,通过散列算法计算每个切片文件的切片ID;或
根据每个切片文件的文件数据,通过散列算法计算每个切片文件的切片初始值;及根据每个切片对应的切片初始值、文件ID以及切片序号,通过散列算法计算每个切片文件的切片ID。
10.根据权利要求8或9所述的基于云存储的文件处理系统,其特征在于,
所述计算机设备,还用于向所述WEB服务器发送文件下载请求,所述文件下载请求中包含计算机设备请求下载文件的文件ID;
所述WEB服务器,还用于将所述文件下载请求发送给所述服务器集群;
所述服务器集群,还用于向所述WEB服务器发送存储与所述文件ID对应的文件的每个切片文件的服务终端的地址;
所述WEB服务器,还用于根据所述服务终端的地址从对应的服务终端上获取每个切片文件,其中,每个切片文件包括文件ID、每个切片文件的切片ID、每个切片文件的切片序号、每个切片文件的切片数据;
所述WEB服务器,还用于将每个切片文件分别传送给计算机设备;
所述计算机设备,还用于根据每个切片文件中的切片序号,将接收到的切片文件组成所述请求下载的文件。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910040715.2A CN109951514B (zh) | 2019-01-16 | 2019-01-16 | 基于云存储的文件处理方法、系统及计算机设备 |
PCT/CN2019/117772 WO2020147403A1 (zh) | 2019-01-16 | 2019-11-13 | 基于云存储的文件处理方法、系统及计算机设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910040715.2A CN109951514B (zh) | 2019-01-16 | 2019-01-16 | 基于云存储的文件处理方法、系统及计算机设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109951514A CN109951514A (zh) | 2019-06-28 |
CN109951514B true CN109951514B (zh) | 2022-03-25 |
Family
ID=67007281
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910040715.2A Active CN109951514B (zh) | 2019-01-16 | 2019-01-16 | 基于云存储的文件处理方法、系统及计算机设备 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN109951514B (zh) |
WO (1) | WO2020147403A1 (zh) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109951514B (zh) * | 2019-01-16 | 2022-03-25 | 平安科技(深圳)有限公司 | 基于云存储的文件处理方法、系统及计算机设备 |
CN111629075B (zh) * | 2020-08-03 | 2020-12-18 | 腾讯科技(深圳)有限公司 | 一种数据下载方法和相关装置 |
CN112383614A (zh) * | 2020-11-11 | 2021-02-19 | 常州微亿智造科技有限公司 | 文件传输方法和装置 |
CN112637341B (zh) * | 2020-12-22 | 2022-12-13 | 平安银行股份有限公司 | 文件上传方法、装置、电子设备及存储介质 |
CN113507516A (zh) * | 2021-07-06 | 2021-10-15 | 深圳海付移通科技有限公司 | 文件服务方法、接入服务器、计算机设备和存储介质 |
CN115412543A (zh) * | 2022-04-24 | 2022-11-29 | 联通沃悦读科技文化有限公司 | 一种基于MapReduce的超大文件批量上传方法 |
CN115643453B (zh) * | 2022-12-23 | 2023-03-21 | 北京安锐卓越信息技术股份有限公司 | 视频上传方法、系统、用户终端、服务器及存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101141627A (zh) * | 2007-10-23 | 2008-03-12 | 深圳市迅雷网络技术有限公司 | 一种流媒体文件的存储系统及方法 |
CN102833294A (zh) * | 2011-06-17 | 2012-12-19 | 阿里巴巴集团控股有限公司 | 基于云存储的文件处理方法、系统及服务器集群系统 |
US20140337661A1 (en) * | 2010-06-22 | 2014-11-13 | Cleversafe, Inc. | Cooperative storage system utilizing dispersed storage |
CN107528926A (zh) * | 2017-10-11 | 2017-12-29 | 郑州云海信息技术有限公司 | 一种文件上传方法和系统 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
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 |
CN103197987A (zh) * | 2012-01-04 | 2013-07-10 | 中兴通讯股份有限公司 | 一种数据备份的方法、数据恢复的方法及系统 |
US20180322901A1 (en) * | 2017-05-03 | 2018-11-08 | Hey Platforms DMCC | Copyright checking for uploaded media |
CN108111585B (zh) * | 2017-12-15 | 2021-08-31 | 成都波霎科技有限公司 | 基于区块链的分布式存储方法 |
CN109951514B (zh) * | 2019-01-16 | 2022-03-25 | 平安科技(深圳)有限公司 | 基于云存储的文件处理方法、系统及计算机设备 |
-
2019
- 2019-01-16 CN CN201910040715.2A patent/CN109951514B/zh active Active
- 2019-11-13 WO PCT/CN2019/117772 patent/WO2020147403A1/zh active Application Filing
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101141627A (zh) * | 2007-10-23 | 2008-03-12 | 深圳市迅雷网络技术有限公司 | 一种流媒体文件的存储系统及方法 |
US20140337661A1 (en) * | 2010-06-22 | 2014-11-13 | Cleversafe, Inc. | Cooperative storage system utilizing dispersed storage |
CN102833294A (zh) * | 2011-06-17 | 2012-12-19 | 阿里巴巴集团控股有限公司 | 基于云存储的文件处理方法、系统及服务器集群系统 |
CN107528926A (zh) * | 2017-10-11 | 2017-12-29 | 郑州云海信息技术有限公司 | 一种文件上传方法和系统 |
Also Published As
Publication number | Publication date |
---|---|
WO2020147403A1 (zh) | 2020-07-23 |
CN109951514A (zh) | 2019-06-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109951514B (zh) | 基于云存储的文件处理方法、系统及计算机设备 | |
CN109918205B (zh) | 一种边缘设备调度方法、系统、装置及计算机存储介质 | |
CN110505162B (zh) | 消息传输方法、装置及电子设备 | |
CN109391673B (zh) | 一种管理更新文件的方法、系统及终端设备 | |
CN111756674B (zh) | 网络通信方法、系统、设备及计算机可读存储介质 | |
CN110599354B (zh) | 线上对账方法、系统、计算机设备和计算机可读存储介质 | |
CN110572422B (zh) | 数据下载方法、装置、设备和介质 | |
CN111915019A (zh) | 联邦学习方法、系统、计算机设备和存储介质 | |
WO2004019161A2 (en) | Method and apparatus for managing resources stored on a communication device | |
CN112422450B (zh) | 计算机设备、服务请求的流量控制方法及装置 | |
CN113190778A (zh) | 业务数据推送方法、系统、计算机设备及计算机存储介质 | |
CN111880864B (zh) | 基于http的模型调用方法、系统、计算机设备和存储介质 | |
CN111885197A (zh) | 基于物联网的数据传输方法、装置、云平台和计算机设备 | |
CN111885184A (zh) | 高并发场景下热点访问关键字处理方法和装置 | |
CN112422497A (zh) | 消息传递方法、装置及计算机设备 | |
CN112559154A (zh) | 消息发送量增长的优化方法、系统、设备及可读存储介质 | |
CN110502482B (zh) | 用户操作界面配置方法、系统及数据操作方法 | |
CN112087475B (zh) | 一种云平台组件应用的消息推送方法、装置及消息服务器 | |
CN112969198A (zh) | 数据传输方法、终端及存储介质 | |
CN111158716B (zh) | 版本升级调用方法、装置、计算机系统及可读存储介质 | |
CN112559027A (zh) | 功能组件的创建与管理方法、系统、设备及可读存储介质 | |
CN112527780B (zh) | Redis集群的创建与管理方法、系统、计算机设备和存储介质 | |
CN112583926B (zh) | 短连切换方法、系统、计算机设备和存储介质 | |
CN114615325A (zh) | 消息推送方法、装置、计算机设备及存储介质 | |
CN112416619A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |