CN111694521A - 存储文件的方法、装置及系统 - Google Patents
存储文件的方法、装置及系统 Download PDFInfo
- Publication number
- CN111694521A CN111694521A CN202010555398.0A CN202010555398A CN111694521A CN 111694521 A CN111694521 A CN 111694521A CN 202010555398 A CN202010555398 A CN 202010555398A CN 111694521 A CN111694521 A CN 111694521A
- Authority
- CN
- China
- Prior art keywords
- file
- identification information
- object identification
- storage system
- files
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0608—Saving storage space on storage systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0638—Organizing or formatting or addressing of data
- G06F3/0643—Management of files
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/067—Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请是关于一种存储文件的方法及装置,属于通信领域。所述方法包括:云存储系统接收存储请求,所述存储请求包括对象标识信息和待存储的文件集合,所述文件集合包括M个数据类型相同的文件,M为大于1的整数,所述对象标识信息包括所述文件集合对应的N个分类参数,N为大于1的整数;所述云存储系统分配用于存储所述文件集合的对象;所述云存储系统将所述文件集合存储在所述对象中,以及将所述对象标识信息和所述对象的位置信息对应保存在对象标识信息与位置信息的对应关系中。本申请能够减小对存储空间的占用。
Description
技术领域
本申请涉及通信领域,特别涉及一种存储文件的方法、装置及系统。
背景技术
当前各种公有云、私有云服务均提供对象存储服务。在对象存储服务中,有两个主要概念,其中一个为存储桶,另一个对象。一个存储桶包括多个对象,每个对象用于存储数据。
当前往往有大量需要存储的小文件,在存储小文件时,可以将小文件存储在一个对象中,获取该对象的位置信息,该位置信息包括该对象的起始地址和大小。将该对象所在的存储桶的桶序号、该对象在该存储桶中的对象序号和该位置信息对应保存在桶序号、对象序号与位置信息的对应关系。
发明人在实现本申请的过程中,发现上述方式至少存在如下缺陷:
当前有海量的小文件,这样在桶序号、对象序号与位置信息的对应关系中存储每个小文件对应的一条记录,导致该对应关系中包括大量记录,需要大量的存储空间来存储该对应关系。
发明内容
本申请提供了一种存储文件的方法及装置,以减小对存储空间的占用。所述技术方案如下:
一方面,本申请提供了一种存储文件的方法,所述方法包括:
网络设备获取待存储的文件集合,所述文件集合包括M个数据类型相同的文件,M为大于1的整数;
所述网络设备生成对象标识信息,所述对象标识信息包括所述文件集合对应的N个分类参数,N为大于1的整数;
所述网络设备向云存储系统发送存储请求,所述存储请求包括所述对象标识信息和所述文件集合,所述存储请求用于所述云存储系统分配对象,将所述文件集合保存在所述对象,以及保存所述对象标识信息和所述对象的位置信息之间的对应关系。
可选的,所述N个分类参数包括所述数据类型、所述对象所在存储桶的桶标识、存储所述文件集合的时间段和所述网络设备的设备标识。
可选的,在所述文件集合被存储在多个对象情况下,第一对象的对象标识信息还包括所述第一对象的编号,所述第一对象是所述多个对象中的任一个。
可选的,所述网络设备向云存储系统发送存储请求之后,还包括:
所述网络设备接收所述云存储系统发送目标文件在所述对象中的起始存储位置和结束存储位置;
所述网络设备生成所述目标文件的统一资源定位符URL,所述URL包括所述对象的对象标识信息、所述目标文件在所述对象的起始存储位置和结束存储位置。
可选的,所述方法还包括:
所述网络设备接收第一查询请求,所述第一查询请求包括所述目标文件的URL;
所述网络设备向所述云存储系统发送所述URL中包括的对象标识信息和所述目标文件的起始存储位置和结束存储位置;
所述网络设备接收所述目标文件,所述目标文件是所述云存储系统根据所述对象标识信息、所述目标文件的起始存储位置和结束存储位置发送的;
所述网络设备发送第一查询响应,所述第一查询响应包括所述目标文件。
可选的,所述网络设备向云存储系统发送存储请求之后,还包括:
所述网络设备接收第二查询请求,所述第二查询请求包括所述至少一个分类参数,所述N个分类参数包括所述至少一个分类参数;
所述网络设备根据所述至少一个分类参数生成至少一个前缀信息;
所述网络设备从所述云存储系统中获取以目标前缀信息为前缀的对象标识信息,所述目标前缀信息是所述至少一个前缀信息中的任一个;
所述网络设备从所述云存储系统中获取所述对象标识信息对应的对象中保存的文件;
所述网络设备发送第二查询响应,所述第二查询响应包括所述获取的各文件。
另一方面,本申请提供了一种存储文件的方法,所述方法包括:
云存储系统接收存储请求,所述存储请求包括对象标识信息和待存储的文件集合,所述文件集合包括M个数据类型相同的文件,M为大于1的整数,所述对象标识信息包括所述文件集合对应的N个分类参数,N为大于1的整数;
所述云存储系统分配用于存储所述文件集合的对象;
所述云存储系统将所述文件集合存储在所述对象中,以及将所述对象标识信息和所述对象的位置信息对应保存在对象标识信息与位置信息的对应关系中。
可选的,所述方法还包括:
在将目标文件存储在所述对象时,向所述网络设备发送所述目标文件在所述对象中的起始存储位置和结束存储位置,目标文件为所述文件集合中的任一个文件。
可选的,所述N个分类参数包括所述数据类型、所述对象所在存储桶的桶标识、存储所述文件集合的时间段和网络设备的设备标识,所述网络设备是发送所述存储请求的设备。
可选的,在所述文件集合被存储在多个对象情况下,第一对象的标识信息还包括所述第一对象的编号,所述第一对象是所述多个对象中的任一个。
另一方面,本申请提供了一种存储文件的装置,所述装置包括:
获取模块,用于获取待存储的文件集合,所述文件集合包括M个数据类型相同的文件,M为大于1的整数;
生成模块,用于生成对象标识信息,所述对象标识信息包括所述文件集合对应的N个分类参数,N为大于1的整数;
发送模块,用于向云存储系统发送存储请求,所述存储请求包括所述对象标识信息和所述文件集合,所述存储请求用于所述云存储系统分配对象,将所述文件集合保存在所述对象,以及保存所述对象标识信息和所述对象的位置信息之间的对应关系。
可选的,所述N个分类参数包括所述数据类型、所述对象所在存储桶的桶标识、存储所述文件集合的时间段和所述装置的设备标识。
可选的,在所述文件集合被存储在多个对象情况下,第一对象的对象标识信息还包括所述第一对象的编号,所述第一对象是所述多个对象中的任一个。
可选的,所述装置还包括第一接收模块,
所述第一接收模块,用于接收所述云存储系统发送目标文件在所述对象中的起始存储位置和结束存储位置;
所述生成模块,还用于生成所述目标文件的统一资源定位符URL,所述URL包括所述对象的对象标识信息、所述目标文件在所述对象的起始存储位置和结束存储位置。
可选的,所述第一接收模块,还用于接收第一查询请求,所述第一查询请求包括所述目标文件的URL;
所述发送模块,还用于向所述云存储系统发送所述URL中包括的对象标识信息和所述目标文件的起始存储位置和结束存储位置;
所述第一接收模块,还用于接收所述目标文件,所述目标文件是所述云存储系统根据所述对象标识信息、所述目标文件的起始存储位置和结束存储位置发送的;
所述发送模块,还用于发送第一查询响应,所述第一查询响应包括所述目标文件。
可选的,所述装置还包括第二接收模块,
所述第二接收模块,用于接收第二查询请求,所述第二查询请求包括所述至少一个分类参数,所述N个分类参数包括所述至少一个分类参数;
所述生成模块,还用于根据所述至少一个分类参数生成至少一个前缀信息;
所述获取模块,还用于从所述云存储系统中获取以目标前缀信息为前缀的对象标识信息,所述目标前缀信息是所述至少一个前缀信息中的任一个;从所述云存储系统中获取所述对象标识信息对应的对象中保存的文件;
所述发送模块,还用于发送第二查询响应,所述第二查询响应包括所述获取的各文件。
另一方面,本申请提供了一种存储文件的装置,所述装置包括:
接收模块,用于接收存储请求,所述存储请求包括对象标识信息和待存储的文件集合,所述文件集合包括M个数据类型相同的文件,M为大于1的整数,所述对象标识信息包括所述文件集合对应的N个分类参数,N为大于1的整数;
分配模块,用于分配用于存储所述文件集合的对象;
存储模块,用于将所述文件集合存储在所述对象中,以及将所述对象标识信息和所述对象的位置信息对应保存在对象标识信息与位置信息的对应关系中。
可选的,所述装置还包括:
生成模块,用于在将目标文件存储在所述对象时,向所述网络设备发送所述目标文件在所述对象中的起始存储位置和结束存储位置,目标文件为所述文件集合中的任一个文件。
可选的,所述N个分类参数包括所述数据类型、所述对象所在存储桶的桶标识、存储所述文件集合的时间段和网络设备的设备标识,所述网络设备是发送所述存储请求的设备。
可选的,在所述文件集合被存储在多个对象情况下,第一对象的标识信息还包括所述第一对象的编号,所述第一对象是所述多个对象中的任一个。
另一方面,本申请提供了一种存储文件的系统,所述系统包括:上述任意方面所述的装置。
另一方面,本申请提供了一种设备,包括:处理器和存储器。其中,所述处理器以及所述存储器之间可以通过总线系统相连。所述存储器用于存储程序、指令或代码,所述处理器用于执行所述存储器中的程序、指令或代码,完成上述方法。
另一方面,本申请提供了一种计算机程序产品,所述计算机程序产品包括在计算机可读存储介质中存储的计算机程序,并且所述计算程序通过处理器进行加载来实现上述方法。
另一方面,本申请实施例提供了一种非易失性计算机可读存储介质,用于存储计算机程序,所述计算机程序通过处理器进行加载来执行上述方法的指令。
本申请实施例提供的技术方案可以包括以下有益效果:
通过将文件集合中的同类型文件保存在相同对象中,可以减小云存储系统中的对象的数目,进而减小了在对象标识信息与位置信息的对应关系存储的记录数目,减小对存储空间的占用。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本申请。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本申请的实施例,并与说明书一起用于解释本申请的原理。
图1是本申请实施例提供的一种系统架构示意图;
图2是本申请实施例提供的一种存储文件的方法流程图;
图3是本申请实施例提供的一种查询文件的方法流程图;
图4是本申请实施例提供的另一种查询文件的方法流程图;
图5是本申请实施例提供的一种查询文件的装置结构示意图;
图6是本申请实施例四提供的另一种查询文件的装置结构示意图;
图7是本申请实施例四提供的一种查询文件的系统结构示意图;
图8是本申请实施例四提供的一种终端结构示意图。
通过上述附图,已示出本申请明确的实施例,后文中将有更详细的描述。这些附图和文字描述并不是为了通过任何方式限制本申请构思的范围,而是通过参考特定实施例为本领域技术人员说明本申请的概念。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。
参见图1,本申请实施例提供了一种网络架构,包括:
云存储系统和至少一个网络设备,该至少一个网络设备中的每个网络设备与云存储系统之间存在网络连接。
云存储系统采用对象存储方式来存储数据。在云存储系统采用对象存储方式的情况下,云存储系统中的磁盘在逻辑上可以划分为多个存储桶,每个存储桶又可划分为多个对象。
这样网络设备在向云存储系统中存储文件时,可以向云存储系统中的一个存储桶包括的一个对象存储该文件。其中,网络设备向云存储系统中存储文件的详细实现过程,将在后续图2所示的实施例进行详细说明,在此先不介绍。
参见图1,该网络架构还包括终端设备,终端设备建立与某个网络设备之间的网络连接。在终端设备需要查询文件时,可以向网络设备发送查询请求。网络设备从云存储平台查询终端设备所需要的文件,并向终端设备发送查询响应,该查询响应包括查询的文件。上述查询文件的详细实现过程,将在后续图3或图4所示的实施例进行详细说明,在此先不介绍。
可选的,网络设备可以为网关代理节点,该网络架构中可以包括一个或多个网络设备。
可选的,终端设备可以为计算机、手机或平板电脑等设备。
参见图2,本申请实施例提供了一种存储文件的方法,该方法可以应用于图1所示的网络架构,包括:
步骤201:网络设备获取待存储的文件集合,该文件集合包括M个数据类型相同的文件,M为大于1的整数。
可选的,网络设备可能接收到终端设备发送的多个待存储文件或接收到服务器等其他设备发送的多个待存储文件;对接收的待存储文件进行分类,将数据类型相同的文件分为一类,该一类文件即为待存储的文件集合。
可选的,网络设备还可能接收到终端设备发送的用于存储文件的存储桶的桶标识,或者,还可能接收到服务器发送的用于存储文件的存储桶的桶标识。
可选的,待存储的文件集合中的文件可以为小文件或非小文件,所谓小文件是指文件大小小于第一阈值的文件,所谓非小文件是指文件大小大于或等于第一阈值的文件。
例如,假设第一阈值为1KB,则小文件是指文件大小小于1KB的文件,非小文件是指文件大小大于或等于1KB的文件。
对象是云存储系统的磁盘中的一个存储空间,该存储空间的空间大小不超过第二阈值。也就是说一个对象存储的数据量小于或等于第二阈值。
在云存储系统中,每个对象属于一个存储桶,一个存储桶包括一个或多个对象。
终端设备或服务器在存储文件时可以指定用于存储文件的存储桶,也可以不指定用于存储文件的存储桶。
在指定存储桶的情况下,网络设备会接收到该存储桶的桶标识。在未指定存储桶的情况下,网络设备接收不到该存储桶的桶标识。
步骤202:网络设备生成对象标识信息,向云存储系统发送存储请求,该存储请求包括该对象标识信息和文件集合。
如果该文件集合中的M个文件的总文件大小小于或等于第二阈值,表示需要一个对象存储该文件集合中的M个文件。如果该文件集合中的M个文件的总文件大小大于第二阈值,表示需要多个对象存储该文件集合中的M个文件。
可选的,在该文件集合中的M个文件的总文件大小小于或等于第二阈值的情况下,即表示需要一个对象存储该文件集合中的M个文件。本步骤的实现可以为:
网络设备确定用于存储该文件集合的时间段,生成一个对象的对象标识信息;在该时间段内向云存储系统发送存储请求,该存储请求包括该对象标识信息和文件集合。该对象标识信息包括该文件集合对应的N个分类参数,N为大于1的整数,该N个分类参数包括该数据类型、该对象所在存储桶的桶标识、存储该文件集合的时间段和网络设备的设备标识。
例如,假设该文件集合包括音频类型的十个音频文件,且该十个音频文件的总文件大小S1小于第二阈值。网络设备确定用于存储该十个音频文件的时间段为的时间段t11至t12”,生成一个对象的对象标识信息,该对象标识信息包括该对象所在的存储桶的标识ID-bucket、该数据类型“音频”、存储该十个音频文件的时间段“t11至t12”和该网络设备的设备标识IP1,所以该对象标识信息可以表示为ID-bucket-音频-t11至t12-IP1。网络设备在时间段“t11至t12”内向云存储系统发送存储请求,该存储请求包括该对象标识信息和该文件集合。
可选的,在该文件集合中的M个文件的总文件大小大于第二阈值的情况下,即表示需要多个对象存储该文件集合中的M个文件。本步骤的实现可以为:
网络设备将该文件集合划分成Z个子文件集合,每个子文件集合包括的文件的总文件大小小于或等于第二阈值,Z为大于1的整数;确定用于存储每个子文件集合的时间段,得到Z个时间段,该Z个时间段分别与该Z个子文件集合一一对应;生成Z个对象的对象标识信息,该Z个对象标识信息也分别与该Z个子文件集合一一对应;对于任一个子文件集合,与该子文件集合相对应的对象的对象标识信息包括N个分类参数和该对象的编号,该N个分类参数包括该数据类型、该对象所在存储桶的桶标识、存储该子文件集合的时间段和网络设备的设备标识。网络设备向云存储系统发送存储请求,该存储请求包括该Z个子文件集合和该Z个对象标识信息。
可选的,在该存储请求中每个子文件集合与一个对象标识信息相对应。可选的,对于相对应的一个子文件集合和一个对象标识信息,在存储请求中可以使用相邻的两个字段来携带该该一个子文件集合和该一个对象标识信息。即可以使用该两个字段中一个字段携带该一个子文件集合,使用另一个字段携带该一个对象标识信息。
例如,假设该文件集合包括视频类型的十个视频文件,且该十个视频文件的总文件大小S2大于第二阈值,网络设备将该十个视频文件划分成两个子文件集合,第一个子文件集合包括七个视频文件,第二个子文件集合包括三个视频文件。网络设备确定第一子文件集合对应的第一时间段为“t21至t22”,第二子文件集合对应的第二时间段为“t22至t23”。
网络设备生成两个对象的对象标识信息,第一个对象的对象标识信息与第一个子文件集合相对应,第一个对象的对象标识信息包括该网络设备的设备标识IP1、第一个对象所在的存储桶的标识ID-bucket、该数据类型“视频”和第一个子文件集合对应的第一时间段“t21至t22”和第一个对象在该存储桶中的序号number1,第一个对象的对象标识信息可以表示为ID-bucket-视频-t21至t22-IP1-number1;第二个对象的对象标识信息与第二个子文件集合相对应,第二个对象的对象标识信息包括该网络设备的设备标识IP1、第二个对象所在的存储桶的标识ID-bucket、该数据类型“视频”和第二个子文件集合对应的第二时间段“t22至t23”和第二个对象在该存储桶中的序号number2,第二个对象的对象标识信息可以表示为ID-bucket-视频-t22至t23-IP1-number2。网络设备向云存储系统发送存储请求,该存储请求包括第一个子文件集合、第一个对象的对象标识信息、第二个子文件集合和第二个对象的对象标识信息。
可选的,在网络设备接收到存储桶的桶标识的情况下,该对象所在存储桶的桶标识为接收的桶标识。在网络设备未接收到存储桶的桶标识的情况下,该对象所在存储桶的桶标识为默认存储桶的桶标识。
可选的,网络设备在获取到N个分类参数时,确定该N个分类参数包括的每个分类参数对应的级别,按照每个分类参数对应的级别,顺序将每个分类参数组成一个对象标识信息。
例如,可以定义桶标识对应的级别为一级参数,音频和视频对应的级别为二级参数,不同的音频格式(mp3或音乐短片(music video,MV))和不同的视频格式(mp4或音频视频交错格式(audio video interleaved,avi)等)对应的级别为三级参数,时间段对应的级别为四级参数,网络设备的设备标识对应的级别为五级参数,对象的编号对应的级别为六级参数。
所以网络设备在获取到存储桶的标识ID-bucket、数据类型“音频”、存储时间段“t11至t12”和网络设备的设备标识IP1后,确定存储桶的标识ID-bucket对应的级别为一级参数,数据类型“音频”对应的级别为二级参数,存储时间段“t11至t12”对应的级别为四级参数,网络设备的设备标识IP1对应的级别为五级参数。根据每个分类参数对应的级别,将每个分类参数顺序组成一个对象标识信息“ID-bucket-音频-t11至t12-IP1”。
步骤203:云存储系统接收该存储请求,分配对象,将该文件集合存储在该对象中,获取该对象的位置信息。
在该存储请求中包括一个对象的对象标识信息的情况下,表示该文件集合中的M个文件的总文件大小小于或等于第二阈值,需要该一个对象可存储该文件集合中的M个文件。本步骤的实现过程可以为:
云存储系统在云存储系统的磁盘中确定一个对象的起始存储位置,从该起始存储位置开始向云存储系统的磁盘中存储该文件集合中的M文件。获取该对象的位置信息包括该对象的起始存储位置和该对象的大小,该对象的大小可以为该对象内保存的数据的数据总量。
例如,云存储系统接收一个存储请求,该存储请求包括一个对象标识信息和一个文件集合,该一个对象标识信息为ID-bucket-音频-t11至t12-IP1。云存储系统在云存储系统的磁盘中确定一个对象的起始存储位置为P1,从该P1位置开始存储该文件集合包括的十个音频文件。获取该对象的位置信息包括该起始存储位置P1和该对象内保存的数据总量S1,该位置信息可以表示为P1-S1。
在该存储请求中包括Z个对象的对象标识信息的情况下,表示该文件集合中的M个文件的总文件大小大于第二阈值,需要Z个对象可存储该文件集合中的M个文件。本步骤的实现过程可以为:
云存储系统在云存储系统的磁盘中确定Z个对象的起始存储位置,该Z个对象分别与Z个子文件集合一一对应。对于第i个子文件集合,i=1、2、……、Z,第i个子文件集合与第i个对象相对应,以及与第i个对象的对象标识信息相对应。云存储系统从第i个对象的起始存储位置开始向云存储系统的磁盘中存储第i个子文件集合;获取第i个对象的位置信息包括第i个对象的起始存储位置和第i个对象的大小,第i个对象的大小可以为第i个对象内保存的数据的数据总量。
例如,该存储请求包括第一个子文件集合、第一个对象的对象标识信息、第二个子文件集合和第二个对象的对象标识信息。云存储系统在云存储系统的磁盘中确定第一个对象的起始存储位置为P2,从该P2位置开始存储第一个子文件集合中的七个视频文件。获取第一个对象的位置信息包括该起始存储位置P2和第一个对象内保存的数据总量S21,S21是该七个视频文件的总文件大小,第一个对象的位置信息可以表示为P2-S21。
云存储系统在云存储系统的磁盘中确定第二个对象的起始存储位置为P3,从该P3位置开始存储第二个子文件集合中的三个视频文件。获取第二个对象的位置信息包括该起始存储位置P3和第二个对象内保存的数据总量S22,S22是该三个视频文件的总文件大小,第二个对象的位置信息可以表示为P3-S22。
可选的,对于该文件集合中的任一个文件,为了便于说明称为目标文件,云存储系统在将目标文件存储在一个对象时,获取该目标文件在该对象的起始存储位置和结束存储位置,向网络设备发送该目标文件在该对象的起始存储位置和结束存储位置。
网络设备接收该目标文件在该对象的起始存储位置和结束存储位置,生成目标文件的统一资源定位符(uniform resource locator,URL),该URL包括该对象的对象标识信息、该目标文件在该对象的起始存储位置和结束存储位置。
网络设备可以向请求存储该文件集合的终端设备发送目标文件的URL或请求存储该文件集合的服务器发送目标文件的URL。
步骤204:云存储系统将该对象的对象标识信息和位置信息对应保存在标识信息与位置信息的对应关系中。
如果该云存储系统包括一个对象的对象标识信息,则云存储系统获取到该一个对象的位置信息,将该一个对象的对象标识信息和位置信息对应保存在对象标识信息与位置信息的对应关系中。
例如,对于上述第一个例子中获取一个对象的对应标识信息和位置信息,该对应标识信息为“ID-bucket-音频-t11至t12-IP1”,该位置信息可以表示为“P1-S1”,将该对象标识信息和该位置信息存储在如表1所示的对象标识信息与位置信息的对应关系中。
再如,对于上述第二个例子中获取第一个对象的对象标识信息和位置信息,第一个对象的对象标识信息可以表示为“ID-bucket-视频-t21至t22-IP1-number1”,第一个对象的位置信息可以表示为“P2-S21”。将第一个对象的对象标识信息和位置信息存储在如表1所示的对象标识信息与位置信息的对应关系中。
以及,上述第二个例子中获取第二个对象的对象标识信息和位置信息,第二个对象的对象标识信息可以表示为“ID-bucket-视频-t22至t23-IP1-number2”,第二个对象的位置信息可以表示为“P3-S22”。将第二个对象的对象标识信息和位置信息存储在如表1所示的对象标识信息与位置信息的对应关系中。
表1
对象标识信息 | 位置信息 |
ID-bucket-音频-t11至t12-IP1 | P1-S1 |
ID-bucket-视频-t21至t22-IP1-number1 | P2-S21 |
D-bucket-视频-t22至t23-IP1-Inumber2 | P3-S22 |
…… | …… |
在本申请实施例中,由于一个对象中保存有多个文件,这样可以减小用于存储文件集合中的对象数目,从而减小了需要保存记录数目,该记录包括存储该文件集合的对象的标识信息和位置信息。进而减小了在标识信息与位置信息的对应关系存储的记录数目,减小对存储空间的占用。
参见图3,本申请实施例提供了一种查询文件的方法,该方法可以应用于图1所示的网络架构,在该方法中终端设备可以查询一个文件,包括:
步骤301:网络设备接收第一查询请求,第一查询请求包括目标文件的URL,目标文件是终端设备待查询的一个文件。
终端设备需要查询一个文件时,即需要查询目标文件时,可以建立与网络设备之间的网络连接,通过该网络连接向网络设备发送第一查询请求,第一查询请求包括目标文件的URL。
目标文件的URL包括目标文件所在的对象的对象标识信息和该目标文件在该对象中的起始存储位置和结束存储位置。
步骤302:网络设备从目标文件的URL中获取对象的对象标识信息、目标文件的起始存储位置和结束存储位置,向云存储系统发送该对象的对象标识信息,目标文件的起始存储位置和结束存储位置,该对象为云存储系统中存储目标文件的对象。
步骤303:云存储系统接收该对象的对象标识信息,目标文件的起始存储位置和结束存储位置,根据该对象的对象标识信息,从对象标识信息与位置信息的对应关系中获取该对象的位置信息。
该对象的位置信息包括该对象在云存储系统中的起始存储位置和该对象的大小。
步骤304:云存储系统根据该目标文件的起始存储位置和结束存储位置,从该位置信息对应的对象中获取目标文件。
在本步骤中,云存储系统根据该对象的位置信息包括的对该对应的起始存储位置和该对应的大小,在云存储系统的磁盘中确定该对象对应的存储空间。根据目标文件在该对象的起始存储位置和结束存储位置,从该存储空间中读取目标文件。
步骤305:云存储系统向网络设备发送目标文件。
步骤306:网络设备接收目标文件,发送第一查询响应,第一查询响应包括目标文件。
在本申请实施例中,由于目标文件的URL包括目标文件所在对象的对象标识信息和目标文件在该对象中的起始存储位置和结束存储位置,这样云存储系统基于该URL便可确定存储目标文件的对象和该对象中用于存储目标文件的存储空间,从而可以从该存储空间中查询到目标文件,保证了可以在一个对象中存储多个文件,从而可以减小云存储系统中的对象的数目,进而减小了在对象标识信息与位置信息的对应关系存储的记录数目,减小对存储空间的占用。
参见图4,本申请实施例提供了一种查询文件的方法,该方法可以应用于图1所示的网络架构,在该方法中终端设备可以查询属于至少一个类型参数的文件,包括:
步骤401:网络设备接收第二查询请求,第二查询请求包括至少一个分类参数。
终端设备需要查询属于至少一分类参数的文件时,可以建立与网络设备之间的网络连接,通过该网络连接向网络设备发送第二查询请求,第二查询请求包括该至少一个分类参数。
该至少一个分类参数包括存储桶的桶标识。
例如,假设终端设备需要查询视频类型的文件,则终端设备向网络设备发送第二查询请求,第二查询请求包括桶标识ID-bucket和视频。
再如,假设终端设备需要查询音频类型以及在t11至t12时间段内存储的文件,则终端设备向网络设备发送第二查询请求,第二查询请求包括桶标识ID-bucket、音频和t11至t12的时间段。网络设备接收第二查询请求,向云存储系统发送第二查询请求。
步骤402:网络设备根据该至少一个分类参数,生成至少一个前缀信息,每个前缀信息包括该至少一个分类参数,向云存储系统发送该至少一个前缀信息。
网络设备确定该至少一个分类参数中的每个分类参数对应的级别,根据每个分类参数对应的级别,生成至少一个分类参数。
可选的,网络设备根据每个分类参数对应的级别,顺序将每个分类参数组成一个前缀信息。
在每个参数对应的级别中包括第一级别和第二级别时,第一级别和第二级别之间间隔一个或多个级别,网络设备获取位于第一级别和第二级别之间的各级别对应的分类参数,根据各分类参数对应的级别,顺序将该N个分类参数和获取的分类参数组成一个或多个前缀信息。
例如,第二查询请求包括桶标识ID-bucket和视频。网络设备确定桶标识ID-bucket对应的级别为一级参数,视频对应的级别为二级参数,所以顺序将桶标识ID-bucket和视频组成一个前缀信息为“ID-bucket-视频”。
再如,第二查询请求包括桶标识ID-bucket、音频和t11至t12的时间段,网络设备确定桶标识ID-bucket对应的级别为一级参数,音频对应的级别为二级参数,时间段t11至t12对应的级别为四级参数。所以顺序将桶标识ID-bucket、音频和时间段t11至t12组成第一前缀信息为“ID-bucket-音频-t11至t12”。
网络设备还获取位于二级参数和四级参数之间的三级参数对应的分类参数为mp3和MV,所以网络设备还生成第二前缀信息为“ID-bucket-音频-mp3-t11至t12”,以及第三前缀信息为“ID-bucket-音频-MV-t11至t12”。
步骤403:网络设备向云存储系统发送该至少一个前缀信息。
可选的,网络设备可以调用云存储系统的ListObject接口,通过该ListObject接口向云存储系统输入该至少一个前缀信息。
步骤404:云存储系统接收该至少一个前缀信息,获取至少一个对象标识信息,每个对象标识信息的前缀是该至少一个前缀信息中的一个,向网络设备发送该至少一个对象标识信息。
可选的,云存储系统接收该至少一个前缀信息,对于每个前缀信息,从对象标识信息与位置信息的对应关系包括的对象标识信息中查询以该前缀信息为前缀的对象标识信息,向网络设备发送查询的对象标识信息。
步骤405:网络设备接收该至少一个对象标识信息,从云存储系统中获取至少一个对象存储的文件。
对于该至少一个对象标识信息中的任一个对象标识信息,网络设备调用云存储系统的GetObject接口,通过该GetObject接口向云存储系统输入该对象标识信息。云存储系统接收该对象标识信息,根据该对象标识信息,从对象标识信息与位置信息的对应关系中获取对应的位置信息,根据该位置信息获取一个对象中存储的文件,向网络设备发送该对象中存储的文件。
例如,网络设备通过ListObject接口向云存储系统发送前缀信息“ID-bucket-视频”。云存储系统从如上述表1所示的对象标识信息与位置信息的对应关系中查询以该前缀信息为前缀的对象标识信息,包括对象标识信息“ID-bucket-视频-t21至t22-IP1-number1”和“ID-bucket-视频-t22至t23-IP1-number2”,向网络设备发送该两个对象标识信息。
网络设备通过该GetObject接口向云存储系统输入该对象标识信息“ID-bucket-视频-t21至t22-IP1-number1”。云存储系统根据该对象标识信息“ID-bucket-视频-t21至t22-IP1-number1”从如上述表1所示的对象标识信息与位置信息的对应关系获取对应的位置信息“P2-S21”,根据该位置信息包括的第一个对象的存储位置P2和大小S21,在云存储系统中确定该对象对应的存储空间,获取该存储空间中保存的各文件,得到第一个对象中保存的各文件,向网络设备发送第一个对象中保存的文件。
网络设备通过该GetObject接口向云存储系统输入该对象标识信息“ID-bucket-视频-t21至t22-IP1-number2”。云存储系统根据该对象标识信息“ID-bucket-视频-t21至t22-IP1-number2”从如上述表1所示的对象标识信息与位置信息的对应关系获取对应的位置信息“P3-S22”,根据该位置信息包括的第二个对象的存储位置P3和大小S22,在云存储系统中确定该对象对应的存储空间,获取该存储空间中保存的各文件,得到第二个对象中保存的各文件,向网络设备发送第二个对象中保存的文件。
步骤406:网络设备发送第二查询响应,第二查询响应包括获取的各文件。
可选的,云存储系统向网络设备发送第二查询响应,网络设备接收第二查询响应,向终端设备发送第二查询响应。
例如,在步骤403中列举的第一个例子中,网络设备发送第二查询响应,第二查询响应包括第一个对象中存储的文件和第二个对象中存储的文件。
在本申请实施例中,由于对象的标识信息包括N个分类参数,这样终端设备可以使用该N个分类参数中的至少一个分类参数,查询属于至少一个分类参数的文件,从而提高了按分类参数查询文件的效率。由于同一个对象可以保存属于一个分类参数的文件,保证了可以在一个对象中存储多个文件,从而可以减小云存储系统中的对象的数目,进而减小了在标识信息与位置信息的对应关系存储的记录数目,减小对存储空间的占用。
下述为本申请装置实施例,可以用于执行本申请方法实施例。对于本申请装置实施例中未披露的细节,请参照本申请方法实施例。
参见图5,本申请实施例提供了一种存储文件的装置500,所述装置500包括:
获取模块501,用于获取待存储的文件集合,所述文件集合包括M个数据类型相同的文件,M为大于1的整数;
生成模块502,用于生成对象标识信息,所述对象标识信息包括所述文件集合对应的N个分类参数,N为大于1的整数;
发送模块503,用于向云存储系统发送存储请求,所述存储请求包括所述对象标识信息和所述文件集合,所述存储请求用于所述云存储系统分配对象,将所述文件集合保存在所述对象,以及保存所述对象标识信息和所述对象的位置信息之间的对应关系。
可选的,所述N个分类参数包括所述数据类型、所述对象所在存储桶的桶标识、存储所述文件集合的时间段和所述装置的设备标识。
可选的,在所述文件集合被存储在多个对象情况下,第一对象的对象标识信息还包括所述第一对象的编号,所述第一对象是所述多个对象中的任一个。
可选的,所述装置还包括第一接收模块,
所述第一接收模块,用于接收所述云存储系统发送目标文件在所述对象中的起始存储位置和结束存储位置;
所述生成模块502,还用于生成所述目标文件的统一资源定位符URL,所述URL包括所述对象的对象标识信息、所述目标文件在所述对象的起始存储位置和结束存储位置。
15、如权利要求14所述的方法,其特征在于,
所述第一接收模块,还用于接收第一查询请求,所述第一查询请求包括所述目标文件的URL;
所述发送模块503,还用于向所述云存储系统发送所述URL中包括的对象标识信息和所述目标文件的起始存储位置和结束存储位置;
所述第一接收模块,还用于接收所述目标文件,所述目标文件是所述云存储系统根据所述对象标识信息、所述目标文件的起始存储位置和结束存储位置发送的;
所述发送模块503,还用于发送第一查询响应,所述第一查询响应包括所述目标文件。
可选的,所述装置还包括第二接收模块,
所述第二接收模块,用于接收第二查询请求,所述第二查询请求包括所述至少一个分类参数,所述N个分类参数包括所述至少一个分类参数;
所述生成模块502,还用于根据所述至少一个分类参数生成至少一个前缀信息;
所述获取模块501,还用于从所述云存储系统中获取以目标前缀信息为前缀的对象标识信息,所述目标前缀信息是所述至少一个前缀信息中的任一个;从所述云存储系统中获取所述对象标识信息对应的对象中保存的文件;
所述发送模块,还用于发送第二查询响应,所述第二查询响应包括所述获取的各文件。
在本申请实施例中,由于文件的URL包括文件所在对象的对象标识信息和文件在该对象中的起始存储位置和结束存储位置,这样基于该URL便可确定存储文件的对象和该对象中用于存储文件的存储空间,从而可以从该存储空间中查询到目标文件,保证了可以在一个对象中存储多个文件,从而可以减小云存储系统中的对象的数目,进而减小了在对象标识信息与位置信息的对应关系存储的记录数目,减小对存储空间的占用。
参见图6,本申请实施例提供了一种存储文件的装置600,所述装置600包括:
接收模块601,用于接收存储请求,所述存储请求包括对象标识信息和待存储的文件集合,所述文件集合包括M个数据类型相同的文件,M为大于1的整数,所述对象标识信息包括所述文件集合对应的N个分类参数,N为大于1的整数;
分配模块602,用于分配用于存储所述文件集合的对象;
存储模块603,用于将所述文件集合存储在所述对象中,以及将所述对象标识信息和所述对象的位置信息对应保存在对象标识信息与位置信息的对应关系中。
可选的,所述装置600还包括:
生成模块,用于在将目标文件存储在所述对象时,向所述网络设备发送所述目标文件在所述对象中的起始存储位置和结束存储位置,目标文件为所述文件集合中的任一个文件。
可选的,所述N个分类参数包括所述数据类型、所述对象所在存储桶的桶标识、存储所述文件集合的时间段和网络设备的设备标识,所述网络设备是发送所述存储请求的设备。
可选的,在所述文件集合被存储在多个对象情况下,第一对象的标识信息还包括所述第一对象的编号,所述第一对象是所述多个对象中的任一个。
在本申请实施例中,由于在一个对象中存储多个文件,从而可以减小云存储系统中的对象的数目,进而减小了在对象标识信息与位置信息的对应关系存储的记录数目,减小对存储空间的占用。
参见图7,本申请实施例提供了一种存储文件的系统700,所述系统700包括如图5所示的装置500和如图6所示的装置600;如图5所示的装置500为网络设备701,如图6所示的装置600为云存储系统702。
关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
图8示出了本发明一个示例性实施例提供的终端800的结构框图。该终端800可以是便携式移动终端,比如:智能手机、平板电脑、MP3播放器(Moving Picture ExpertsGroup Audio Layer III,动态影像专家压缩标准音频层面3)、MP4(Moving PictureExperts Group Audio Layer IV,动态影像专家压缩标准音频层面4)播放器、笔记本电脑或台式电脑。终端800还可能被称为用户设备、便携式终端、膝上型终端、台式终端等其他名称。
通常,终端800包括有:处理器801和存储器802。
处理器801可以包括一个或多个处理核心,比如4核心处理器、8核心处理器等。处理器801可以采用DSP(Digital Signal Processing,数字信号处理)、FPGA(Field-Programmable Gate Array,现场可编程门阵列)、PLA(Programmable Logic Array,可编程逻辑阵列)中的至少一种硬件形式来实现。处理器801也可以包括主处理器和协处理器,主处理器是用于对在唤醒状态下的数据进行处理的处理器,也称CPU(Central ProcessingUnit,中央处理器);协处理器是用于对在待机状态下的数据进行处理的低功耗处理器。在一些实施例中,处理器801可以在集成有GPU(Graphics Processing Unit,图像处理器),GPU用于负责显示屏所需要显示的内容的渲染和绘制。一些实施例中,处理器801还可以包括AI(Artificial Intelligence,人工智能)处理器,该AI处理器用于处理有关机器学习的计算操作。
存储器802可以包括一个或多个计算机可读存储介质,该计算机可读存储介质可以是非暂态的。存储器802还可包括高速随机存取存储器,以及非易失性存储器,比如一个或多个磁盘存储设备、闪存存储设备。在一些实施例中,存储器802中的非暂态的计算机可读存储介质用于存储至少一个指令,该至少一个指令用于被处理器801所执行以实现本申请中方法实施例终端设备执行的操作。
在一些实施例中,终端800还可选包括有:外围设备接口803和至少一个外围设备。处理器801、存储器802和外围设备接口803之间可以通过总线或信号线相连。各个外围设备可以通过总线、信号线或电路板与外围设备接口803相连。具体地,外围设备包括:射频电路804、触摸显示屏805、摄像头806、音频电路807、定位组件808和电源809中的至少一种。
外围设备接口803可被用于将I/O(Input/Output,输入/输出)相关的至少一个外围设备连接到处理器801和存储器802。在一些实施例中,处理器801、存储器802和外围设备接口803被集成在同一芯片或电路板上;在一些其他实施例中,处理器801、存储器802和外围设备接口803中的任意一个或两个可以在单独的芯片或电路板上实现,本实施例对此不加以限定。
射频电路804用于接收和发射RF(Radio Frequency,射频)信号,也称电磁信号。射频电路804通过电磁信号与通信网络以及其他通信设备进行通信。射频电路804将电信号转换为电磁信号进行发送,或者,将接收到的电磁信号转换为电信号。可选地,射频电路804包括:天线系统、RF收发器、一个或多个放大器、调谐器、振荡器、数字信号处理器、编解码芯片组、用户身份模块卡等等。射频电路804可以通过至少一种无线通信协议来与其它终端进行通信。该无线通信协议包括但不限于:万维网、城域网、内联网、各代移动通信网络(2G、3G、4G及5G)、无线局域网和/或WiFi(Wireless Fidelity,无线保真)网络。在一些实施例中,射频电路804还可以包括NFC(Near Field Communication,近距离无线通信)有关的电路,本申请对此不加以限定。
显示屏805用于显示UI(User Interface,用户界面)。该UI可以包括图形、文本、图标、视频及其它们的任意组合。当显示屏805是触摸显示屏时,显示屏805还具有采集在显示屏805的表面或表面上方的触摸信号的能力。该触摸信号可以作为控制信号输入至处理器801进行处理。此时,显示屏805还可以用于提供虚拟按钮和/或虚拟键盘,也称软按钮和/或软键盘。在一些实施例中,显示屏805可以为一个,设置终端800的前面板;在另一些实施例中,显示屏805可以为至少两个,分别设置在终端800的不同表面或呈折叠设计;在再一些实施例中,显示屏805可以是柔性显示屏,设置在终端800的弯曲表面上或折叠面上。甚至,显示屏805还可以设置成非矩形的不规则图形,也即异形屏。显示屏805可以采用LCD(LiquidCrystal Display,液晶显示屏)、OLED(Organic Light-Emitting Diode,有机发光二极管)等材质制备。
摄像头组件806用于采集图像或视频。可选地,摄像头组件806包括前置摄像头和后置摄像头。通常,前置摄像头设置在终端的前面板,后置摄像头设置在终端的背面。在一些实施例中,后置摄像头为至少两个,分别为主摄像头、景深摄像头、广角摄像头、长焦摄像头中的任意一种,以实现主摄像头和景深摄像头融合实现背景虚化功能、主摄像头和广角摄像头融合实现全景拍摄以及VR(Virtual Reality,虚拟现实)拍摄功能或者其它融合拍摄功能。在一些实施例中,摄像头组件806还可以包括闪光灯。闪光灯可以是单色温闪光灯,也可以是双色温闪光灯。双色温闪光灯是指暖光闪光灯和冷光闪光灯的组合,可以用于不同色温下的光线补偿。
音频电路807可以包括麦克风和扬声器。麦克风用于采集用户及环境的声波,并将声波转换为电信号输入至处理器801进行处理,或者输入至射频电路804以实现语音通信。出于立体声采集或降噪的目的,麦克风可以为多个,分别设置在终端800的不同部位。麦克风还可以是阵列麦克风或全向采集型麦克风。扬声器则用于将来自处理器801或射频电路804的电信号转换为声波。扬声器可以是传统的薄膜扬声器,也可以是压电陶瓷扬声器。当扬声器是压电陶瓷扬声器时,不仅可以将电信号转换为人类可听见的声波,也可以将电信号转换为人类听不见的声波以进行测距等用途。在一些实施例中,音频电路807还可以包括耳机插孔。
定位组件808用于定位终端800的当前地理位置,以实现导航或LBS(LocationBased Service,基于位置的服务)。定位组件808可以是基于美国的GPS(GlobalPositioning System,全球定位系统)、中国的北斗系统或俄罗斯的伽利略系统的定位组件。
电源809用于为终端800中的各个组件进行供电。电源809可以是交流电、直流电、一次性电池或可充电电池。当电源809包括可充电电池时,该可充电电池可以是有线充电电池或无线充电电池。有线充电电池是通过有线线路充电的电池,无线充电电池是通过无线线圈充电的电池。该可充电电池还可以用于支持快充技术。
在一些实施例中,终端800还包括有一个或多个传感器810。该一个或多个传感器810包括但不限于:加速度传感器811、陀螺仪传感器812、压力传感器813、指纹传感器814、光学传感器815以及接近传感器816。
加速度传感器811可以检测以终端800建立的坐标系的三个坐标轴上的加速度大小。比如,加速度传感器811可以用于检测重力加速度在三个坐标轴上的分量。处理器801可以根据加速度传感器811采集的重力加速度信号,控制触摸显示屏805以横向视图或纵向视图进行用户界面的显示。加速度传感器811还可以用于游戏或者用户的运动数据的采集。
陀螺仪传感器812可以检测终端800的机体方向及转动角度,陀螺仪传感器812可以与加速度传感器811协同采集用户对终端800的3D动作。处理器801根据陀螺仪传感器812采集的数据,可以实现如下功能:动作感应(比如根据用户的倾斜操作来改变UI)、拍摄时的图像稳定、游戏控制以及惯性导航。
压力传感器813可以设置在终端800的侧边框和/或触摸显示屏805的下层。当压力传感器813设置在终端800的侧边框时,可以检测用户对终端800的握持信号,由处理器801根据压力传感器813采集的握持信号进行左右手识别或快捷操作。当压力传感器813设置在触摸显示屏805的下层时,由处理器801根据用户对触摸显示屏805的压力操作,实现对UI界面上的可操作性控件进行控制。可操作性控件包括按钮控件、滚动条控件、图标控件、菜单控件中的至少一种。
指纹传感器814用于采集用户的指纹,由处理器801根据指纹传感器814采集到的指纹识别用户的身份,或者,由指纹传感器814根据采集到的指纹识别用户的身份。在识别出用户的身份为可信身份时,由处理器801授权该用户执行相关的敏感操作,该敏感操作包括解锁屏幕、查看加密信息、下载软件、支付及更改设置等。指纹传感器814可以被设置终端800的正面、背面或侧面。当终端800上设置有物理按键或厂商Logo时,指纹传感器814可以与物理按键或厂商Logo集成在一起。
光学传感器815用于采集环境光强度。在一个实施例中,处理器801可以根据光学传感器815采集的环境光强度,控制触摸显示屏805的显示亮度。具体地,当环境光强度较高时,调高触摸显示屏805的显示亮度;当环境光强度较低时,调低触摸显示屏805的显示亮度。在另一个实施例中,处理器801还可以根据光学传感器815采集的环境光强度,动态调整摄像头组件806的拍摄参数。
接近传感器816,也称距离传感器,通常设置在终端800的前面板。接近传感器816用于采集用户与终端800的正面之间的距离。在一个实施例中,当接近传感器816检测到用户与终端800的正面之间的距离逐渐变小时,由处理器801控制触摸显示屏805从亮屏状态切换为息屏状态;当接近传感器816检测到用户与终端800的正面之间的距离逐渐变大时,由处理器801控制触摸显示屏805从息屏状态切换为亮屏状态。
本领域技术人员可以理解,图8中示出的结构并不构成对终端800的限定,可以包括比图示更多或更少的组件,或者组合某些组件,或者采用不同的组件布置。
本领域技术人员在考虑说明书及实践这里公开的申请后,将容易想到本申请的其它实施方案。本申请旨在涵盖本申请的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本申请的一般性原理并包括本申请未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本申请的真正范围和精神由下面的权利要求指出。
应当理解的是,本申请并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本申请的范围仅由所附的权利要求来限制。
Claims (13)
1.一种存储文件的方法,其特征在于,所述方法包括:
网络设备获取待存储的文件集合,所述文件集合包括M个数据类型相同的文件,M为大于1的整数;
所述网络设备生成对象标识信息,所述对象标识信息包括所述文件集合对应的N个分类参数,N为大于1的整数;
所述网络设备向云存储系统发送存储请求,所述存储请求包括所述对象标识信息和所述文件集合,所述存储请求用于所述云存储系统分配对象,将所述文件集合保存在所述对象,以及保存所述对象标识信息和所述对象的位置信息之间的对应关系。
2.如权利要求1所述的方法,其特征在于,所述N个分类参数包括所述数据类型、所述对象所在存储桶的桶标识、存储所述文件集合的时间段和所述网络设备的设备标识。
3.如权利要求2所述的方法,其特征在于,在所述文件集合被存储在多个对象情况下,第一对象的对象标识信息还包括所述第一对象的编号,所述第一对象是所述多个对象中的任一个。
4.如权利要求1至3任一项所述的方法,其特征在于,所述网络设备向云存储系统发送存储请求之后,还包括:
所述网络设备接收所述云存储系统发送目标文件在所述对象中的起始存储位置和结束存储位置;
所述网络设备生成所述目标文件的统一资源定位符URL,所述URL包括所述对象的对象标识信息、所述目标文件在所述对象的起始存储位置和结束存储位置。
5.如权利要求4所述的方法,其特征在于,所述方法还包括:
所述网络设备接收第一查询请求,所述第一查询请求包括所述目标文件的URL;
所述网络设备向所述云存储系统发送所述URL中包括的对象标识信息和所述目标文件的起始存储位置和结束存储位置;
所述网络设备接收所述目标文件,所述目标文件是所述云存储系统根据所述对象标识信息、所述目标文件的起始存储位置和结束存储位置发送的;
所述网络设备发送第一查询响应,所述第一查询响应包括所述目标文件。
6.如权利要求1至3任一项所述的方法,其特征在于,所述网络设备向云存储系统发送存储请求之后,还包括:
所述网络设备接收第二查询请求,所述第二查询请求包括所述至少一个分类参数,所述N个分类参数包括所述至少一个分类参数;
所述网络设备根据所述至少一个分类参数生成至少一个前缀信息;
所述网络设备从所述云存储系统中获取以目标前缀信息为前缀的对象标识信息,所述目标前缀信息是所述至少一个前缀信息中的任一个;
所述网络设备从所述云存储系统中获取所述对象标识信息对应的对象中保存的文件;
所述网络设备发送第二查询响应,所述第二查询响应包括所述获取的各文件。
7.一种存储文件的方法,其特征在于,所述方法包括:
云存储系统接收存储请求,所述存储请求包括对象标识信息和待存储的文件集合,所述文件集合包括M个数据类型相同的文件,M为大于1的整数,所述对象标识信息包括所述文件集合对应的N个分类参数,N为大于1的整数;
所述云存储系统分配用于存储所述文件集合的对象;
所述云存储系统将所述文件集合存储在所述对象中,以及将所述对象标识信息和所述对象的位置信息对应保存在对象标识信息与位置信息的对应关系中。
8.如权利要求7所述的方法,其特征在于,所述方法还包括:
在将目标文件存储在所述对象时,向所述网络设备发送所述目标文件在所述对象中的起始存储位置和结束存储位置,目标文件为所述文件集合中的任一个文件。
9.如权利要求7或8所述的方法,其特征在于,所述N个分类参数包括所述数据类型、所述对象所在存储桶的桶标识、存储所述文件集合的时间段和网络设备的设备标识,所述网络设备是发送所述存储请求的设备。
10.如权利要求7或8所述的方法,其特征在于,在所述文件集合被存储在多个对象情况下,第一对象的标识信息还包括所述第一对象的编号,所述第一对象是所述多个对象中的任一个。
11.一种存储文件的装置,其特征在于,所述装置包括:
获取模块,用于获取待存储的文件集合,所述文件集合包括M个数据类型相同的文件,M为大于1的整数;
生成模块,用于生成对象标识信息,所述对象标识信息包括所述文件集合对应的N个分类参数,N为大于1的整数;
发送模块,用于向云存储系统发送存储请求,所述存储请求包括所述对象标识信息和所述文件集合,所述存储请求用于所述云存储系统分配对象,将所述文件集合保存在所述对象,以及保存所述对象标识信息和所述对象的位置信息之间的对应关系。
12.一种存储文件的装置,其特征在于,所述装置包括:
接收模块,用于接收存储请求,所述存储请求包括对象标识信息和待存储的文件集合,所述文件集合包括M个数据类型相同的文件,M为大于1的整数,所述对象标识信息包括所述文件集合对应的N个分类参数,N为大于1的整数;
分配模块,用于分配用于存储所述文件集合的对象;
存储模块,用于将所述文件集合存储在所述对象中,以及将所述对象标识信息和所述对象的位置信息对应保存在对象标识信息与位置信息的对应关系中。
13.一种存储文件的系统,其特征在于,所述系统包括:如权利要求11和12所述的装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010555398.0A CN111694521B (zh) | 2020-06-17 | 2020-06-17 | 存储文件的方法、装置及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010555398.0A CN111694521B (zh) | 2020-06-17 | 2020-06-17 | 存储文件的方法、装置及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111694521A true CN111694521A (zh) | 2020-09-22 |
CN111694521B CN111694521B (zh) | 2022-08-05 |
Family
ID=72481846
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010555398.0A Active CN111694521B (zh) | 2020-06-17 | 2020-06-17 | 存储文件的方法、装置及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111694521B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112306972A (zh) * | 2020-11-02 | 2021-02-02 | 西安博康硕达网络科技有限公司 | 一种基于云存储的文件生成方法和装置 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104462362A (zh) * | 2014-12-08 | 2015-03-25 | 曙光信息产业(北京)有限公司 | 一种数据存储、查询、加载方法及装置 |
CN105224532A (zh) * | 2014-05-28 | 2016-01-06 | 腾讯科技(深圳)有限公司 | 数据处理方法及装置 |
CN106537386A (zh) * | 2014-07-18 | 2017-03-22 | 微软技术许可有限责任公司 | 识别用于数据写操作的文件 |
CN109254733A (zh) * | 2018-09-04 | 2019-01-22 | 北京百度网讯科技有限公司 | 用于存储数据的方法、装置和系统 |
CN109271113A (zh) * | 2018-09-28 | 2019-01-25 | 武汉烽火众智数字技术有限责任公司 | 一种基于云存储的数据管理系统及方法 |
US20200167238A1 (en) * | 2018-11-23 | 2020-05-28 | Hewlett Packard Enterprise Development Lp | Snapshot format for object-based storage |
-
2020
- 2020-06-17 CN CN202010555398.0A patent/CN111694521B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105224532A (zh) * | 2014-05-28 | 2016-01-06 | 腾讯科技(深圳)有限公司 | 数据处理方法及装置 |
CN106537386A (zh) * | 2014-07-18 | 2017-03-22 | 微软技术许可有限责任公司 | 识别用于数据写操作的文件 |
CN104462362A (zh) * | 2014-12-08 | 2015-03-25 | 曙光信息产业(北京)有限公司 | 一种数据存储、查询、加载方法及装置 |
CN109254733A (zh) * | 2018-09-04 | 2019-01-22 | 北京百度网讯科技有限公司 | 用于存储数据的方法、装置和系统 |
CN109271113A (zh) * | 2018-09-28 | 2019-01-25 | 武汉烽火众智数字技术有限责任公司 | 一种基于云存储的数据管理系统及方法 |
US20200167238A1 (en) * | 2018-11-23 | 2020-05-28 | Hewlett Packard Enterprise Development Lp | Snapshot format for object-based storage |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112306972A (zh) * | 2020-11-02 | 2021-02-02 | 西安博康硕达网络科技有限公司 | 一种基于云存储的文件生成方法和装置 |
Also Published As
Publication number | Publication date |
---|---|
CN111694521B (zh) | 2022-08-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110659127A (zh) | 一种处理任务的方法、装置及系统 | |
CN111857793B (zh) | 网络模型的训练方法、装置、设备及存储介质 | |
CN111858382A (zh) | 应用程序测试方法、装置、服务器、系统及存储介质 | |
CN111290896A (zh) | 服务器压力的测试方法、装置、设备及介质 | |
CN108848492B (zh) | 用户身份识别卡的启用方法、装置、终端及存储介质 | |
CN110569220A (zh) | 游戏资源文件的展示方法、装置、终端及存储介质 | |
CN110535890B (zh) | 文件上传的方法和装置 | |
CN113051015A (zh) | 页面渲染方法、装置、电子设备及存储介质 | |
CN110234036B (zh) | 一种播放多媒体文件的方法、装置及系统 | |
CN111625315A (zh) | 页面显示方法、装置、电子设备及存储介质 | |
CN111192072A (zh) | 用户分群方法及装置、存储介质 | |
CN112612539B (zh) | 数据模型卸载方法、装置、电子设备及存储介质 | |
CN111064657B (zh) | 关注账户分组的方法、装置、系统 | |
CN111694521B (zh) | 存储文件的方法、装置及系统 | |
CN110086814B (zh) | 一种数据获取的方法、装置及存储介质 | |
CN111324293B (zh) | 一种存储系统、存储数据的方法、读取数据的方法及装置 | |
CN111008083A (zh) | 页面通信方法、装置、电子设备及存储介质 | |
CN112181915A (zh) | 执行业务的方法、装置、终端和存储介质 | |
CN111580892A (zh) | 一种业务组件调用的方法、装置、终端和存储介质 | |
CN112597417B (zh) | 页面更新方法、装置、电子设备及存储介质 | |
CN109101158A (zh) | 导入歌曲列表的方法、装置及存储介质 | |
CN110851435B (zh) | 一种存储数据的方法及装置 | |
CN109618018B (zh) | 用户头像显示方法、装置、终端、服务器及存储介质 | |
CN110519319B (zh) | 一种分裂分区的方法及装置 | |
CN113076452A (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 |