CN106202367B - 一种对象信息的处理方法及装置 - Google Patents
一种对象信息的处理方法及装置 Download PDFInfo
- Publication number
- CN106202367B CN106202367B CN201610533341.4A CN201610533341A CN106202367B CN 106202367 B CN106202367 B CN 106202367B CN 201610533341 A CN201610533341 A CN 201610533341A CN 106202367 B CN106202367 B CN 106202367B
- Authority
- CN
- China
- Prior art keywords
- area
- subregion
- information
- storage
- address
- 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
-
- 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
-
- 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
-
- 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/11—File system administration, e.g. details of archiving or snapshots
- G06F16/113—Details of archiving
-
- 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/14—Details of searching files based on file metadata
- G06F16/148—File search processing
-
- 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/17—Details of further file system functions
- G06F16/1727—Details of free space management performed by the file system
Abstract
本发明实施例公开了一种对象信息的处理方法及装置,该对象信息的处理方法包括:获取信息创建请求,该信息创建请求携带目标对象的第一地址标识,该目标对象包括子目录或子文件;根据该第一地址标识确定该目标对象所属的父目录的第二地址标识;根据该第二地址标识查找对应的信息存储区,该信息存储区用于存储该父目录的元数据;根据该第一地址标识对该信息存储区进行数据更新,以在该元数据中创建该父目录与该目标对象的关联关系。上述对象信息的处理方法能快速建立对象存储系统的目录层次结构,操作简单,处理效率高。
Description
技术领域
本发明涉及计算机领域,具体涉及一种对象信息的处理方法及装置。
背景技术
对象存储系统,是与传统块存储、文件存储并列的一种存储模型,其结合了附网存储和存储区域网的优点,已成为网络存储领域研究的热点。
对象存储系统由用户终端、元数据服务器、对象存储设备和互连网络组成。大部分的对象存储系统,出于性能的考虑,往往采用扁平的数据组织结构,每个用户可以把它的存储空间划分为若干个“容器”(Bucket),然后往每个容器里放对象(比如目录对象或文件对象),对象不能直接放到根存储空间里,必须放到某个容器下面,且不能嵌套,也就是说,容器下面不能再放一层容器,只能放对象。普通的对象存储,虽然能满足大部分互联网应用,但是由于这种存储方式不具有目录结构,用户若需要遍历容器下的对象,往往需要自己记录,比如用结构化查询语言(microsoft structure quest language,mysql)等关系型数据库记录存储的文件列表,操作方法繁琐,遍历效率低。
发明内容
本发明实施例提供一种对象信息的处理方法及装置,以解决现有对象存储系统由于不具有目录结构导致难以直接遍历目录下的文件列表,遍历效率低的技术问题。
本发明实施例提供一种对象信息的处理方法,包括:
获取信息创建请求,所述信息创建请求携带目标对象的第一地址标识,所述目标对象包括子目录或子文件;
根据所述第一地址标识确定所述目标对象所属的父目录的第二地址标识;
根据所述第二地址标识查找对应的信息存储区,所述信息存储区用于存储所述父目录的元数据;
根据所述第一地址标识对所述信息存储区进行数据更新,以在所述元数据中创建所述父目录与所述目标对象的关联关系。
相应的,本发明实施例还提供一种对象信息的处理装置,包括:
获取模块,用于获取信息创建请求,所述信息创建请求携带目标对象的第一地址标识,所述目标对象包括子目录或子文件;
确定模块,用于根据所述第一地址标识确定所述目标对象所属的父目录的第二地址标识;
查找模块,用于根据所述第二地址标识查找对应的信息存储区,所述信息存储区用于存储所述父目录的元数据;
创建模块,用于根据所述第一地址标识对所述信息存储区进行数据更新,以在所述元数据中创建所述父目录与所述目标对象的关联关系。
本发明所述的对象信息的处理方法及装置,通过获取信息创建请求,该信息创建请求携带目标对象的第一地址标识,并根据该第一地址标识确定该目标对象所属的父目录的第二地址标识,之后,根据该第二地址标识查找对应的信息存储区,并根据该第一地址标识对该信息存储区进行数据更新,能快速建立对象存储系统的目录层次结构,操作简单,创建效率高。
附图说明
下面结合附图,通过对本发明的具体实施方式详细描述,将使本发明的技术方案及其它有益效果显而易见。
图1a是本发明实施例提供的对象信息的处理系统的场景示意图;
图1b是本发明实施例提供的对象信息的处理方法的流程图;
图2a是本发明实施例提供的对象信息的处理方法的另一流程图;
图2b是本发明实施例提供的父目录下增加子文件的演示示意图。
图3a是本发明实施例提供的对象信息的处理装置的结构示意图;
图3b是本发明实施例提供的对象信息的处理装置的另一结构示意图。
图4是本发明实施例提供的服务器的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明实施例提供一种对象信息的处理方法、装置和系统。
参见图1a,该对象信息的处理系统可以包括服务器,其可以集成本发明实施例所提供的任一种对象信息的处理装置。该服务器主要应用于对象存储系统,其可以是单个集成服务器,也可以是多个服务器。此外,该对象信息的处理系统还可以包括其他的设备,比如用户终端等,该用户终端和服务器之间通过网络进行连接。
其中,服务器可以获取信息创建请求,该信息创建请求携带目标对象的第一地址标识,该目标对象包括子目录或子文件,根据该第一地址标识确定该目标对象所属父目录的第二地址标识,并根据该第二地址标识查找对应的信息存储区,该信息存储区用于存储该父目录的元数据,之后根据该第一地址标识对该信息存储区进行数据更新,以在该元数据中创建该父目录与该目标对象的关联关系。其中,该第一地址标识和第二地址标识可以为对象在服务器中的存储路径信息,该第二地址标识可以为以“/”结尾的存储路径信息,该元数据主要用于描述对象数据的属性信息,通过存储路径信息可以唯一定位到一个对象的元数据。当用户终端通过网络向该服务器上传待存储文件时,服务器会根据该待存储文件在其内的存储路径信息判断是否是目标对象,若是,则服务器会生成该信息创建请求,并根据该存储路径信息对该目标对象所属父目录的信息存储区进行数据更新,以建立该目标对象与该父目录的关联关系,实现对象存储系统中目录层次结构的创建。
以下将分别进行详细说明。需说明的是,以下实施例的序号不作为对本发明实施例优选顺序的限定。
实施例一、
本实施例将从对象信息的处理装置的角度进行描述,该对象信息的处理装置具体可以集成在服务器等设备中。
如图1b所示,该对象信息的处理方法的具体流程可以如下:
S101、获取信息创建请求,该信息创建请求携带目标对象的第一地址标识,该目标对象可以包括子目录或子文件等。
本实施例中,该第一地址标识主要指该目标对象在服务器中的存储路径信息。具体的,若服务器当前存储的对象是子目录或子文件(也即目标对象)时,其会自动生成该信息创建请求。
需要说明的是,可以认为存储路径信息以“/”结尾的对象为父目录或子目录,存储路径信息不是以“/”结尾的对象为文件或子文件,通常一个父目录下可以存放多个子目录和子文件,该父目录可以归属于更上一级目录,也可以不归属于任何目录(比如该父目录为根目录)。该父目录的存储路径信息一般是其子目录或子文件的存储路径信息的前缀部分,比如,若存储路径信息为W:/a/b的对象为目标对象,则该目标对象所属父目录对应的存储路径信息为W:/a/,该父目录所属上一级目录(也即父目录的父目录)对应的存储路径信息为W:/。
由于并非所有的存储对象均是目标对象,比如存储路径信息为W:/的对象由于不存在更上一级目录(父目录),故该对象不是子目录或子文件,也即该对象不是目标对象,因此,在生成信息创建请求之前,该服务器还需对存储对象是否是目标对象进行判断,只有当该存储对象存在更上一级目录(父目录)时,才可以判定是目标对象,此时,可以生成该信息创建请求。
S102、根据该第一地址标识确定该目标对象所属的父目录的第二地址标识。
本实施例中,该第二地址标识可以是父目录的存储路径信息。由于子目录或子文件通常是存放在父目录之下的,故两者的存储路径信息存在很大关联,通常可以将该第一地址标识的前缀部分确定为该第二地址标识。
S103、根据该第二地址标识查找对应的信息存储区,该信息存储区用于存储该父目录的元数据。
本实施例中,该元数据Metadata主要用于描述对象数据的属性,其可以用来支持如指示存储位置、历史数据、资源查找以及文件记录等功能。需要说明的是,服务器在存储每一对象的时候,都会基于该对象的存储路径信息建立该对象的元数据,故通过存储路径信息(也即地址标识)可以定位到相应的信息存储区。
S104、根据该第一地址标识对该信息存储区进行数据更新,以在该元数据中创建该父目录与该目标对象的关联关系。
本实施例中,为方便查找,该信息存储区除了存放父目录的元数据之外,还可以建立多个指定的区域来存放该父目录与该目标对象的关联关系。
例如,该信息存储区可以包括第一区域和第二区域,此时,上述步骤S104具体可以包括:
(11)根据该第一地址标识确定该第一区域中的目标子区域,并将该第一地址标识存储在该目标子区域中,以对该第一区域进行数据更新。
进一步地,该第一区域可以包括已建立的多个存储子区域,该第二区域可以包括已存储的多个指针,每一指针指向一个存储子区域,此时,上述“根据该第一地址标识确定该第一区域中的目标子区域”的步骤具体可以包括:
根据该第一地址标识从该第一区域中查找对应的存储子区域;
检测该查找到的存储子区域当前的剩余容量;
根据该剩余容量确定该第一区域中的目标子区域。
容易理解的是,该指针是编程语言中的一个对象,利用地址,它的值可以直接指向位于服务器中另一个地方的值。本实施例中,该存储子区域与指针之间是一一对应的关系,通过指针可以找到所需的存储子区域,其中,该存储子区域用于存储地址标识,每一存储子区域可以是一段连续的存储块,里面存储了若干地址标识,该地址标识可以按照预设顺序进行排列,该预设顺序可以根据实际应用需求而定,比如可以按照字典顺序从小到大排列,此时,该指针可以按照所指向的存储子区域中最小的地址标识的字典顺序排序。该目标子区域可以是已建立的存储子区域,也可以是待建立的存储子区域,具体可以根据该查找到的存储子区域的剩余容量而决定,该剩余容量可以包括已存满和未存满。
例如,上述“根据该剩余容量确定该第一区域中的目标子区域”的步骤具体可以包括:
当该剩余容量指示已存满时,在该第一区域中创建一个新存储子区域;按照预设策略将该查找到的存储子区域中的数据部分移动到该新存储子区域中;根据该第一地址标识从该查找到的存储子区域和新存储子区域中选择一个作为目标子区域;
当该剩余容量指示未存满时,将该查找到的存储子区域作为目标子区域。
本实施例中,该预设策略可以为均分,也即使该查找到的存储子区域和新存储子区域中存储的地址标识数量大致相等,这样可最大程度的减少新存储子区域的创建频率。
具体的,假设每一存储子区域可以存储的地址标识数量为N,则当该查找到的存储子区域已存储了N个地址标识时,该剩余容量即指示已存满,此时,若需要存储第N+1个地址标识(即该第一地址标识),则可以在该第一区域中创建一个新存储子区域,并将该查找到的存储子区域内存储的N/2个地址标识移动到新存储子区域中。若每一存储子区域中的地址标识均是按字典顺序排列的,则可以根据该第一地址标识在字典中的顺序在该查找到的存储子区域和新存储子区域中选择一个作为目标子区域进行插入。当然,若该查找到的存储子区域中没有存储N个地址标识,则该剩余容量指示未存满,此时,可以直接将该查找到的存储子区域作为目标子区域。
(12)根据该第一区域中更新后的数据对该第二区域进行数据更新。
本实施例中,由于该第二区域存储的是第一区域中存储子区域的指针,故当该第一区域中存储子区域的数量未发生变化时,不需要对该第二区域进行数据更新。当该第一区域中存储子区域的数量有所增加,也即建立了一个新存储子区域时,需要在第二区域中添加相应的指针,此时,上述步骤(12)具体可以包括:
创建该新存储子区域的指针,并将该指针存储在该第二区域中。
本实施例中,可以根据该新存储子区域中已存储的地址标识以及该新存储子区域的位置信息建立该指针。
需要指出的是,在最开始的时候,该父目录下是没有存储任何子文件和子目录的,此时,服务器可以在该父目录的信息存储区中建立该第一区域和第二区域,并且,该第一区域中建立有第一个存储子区域,其内存储0个地址标识,而该第二区域内存储有指向该第一个存储子区域的第一个指针。当在该父目录下新增子目录或子文件的时候,该子目录或子文件的地址标识都往该第一个存储子区域中存储,并且按一定顺序排列,直到其剩余容量指示已存满,才开始建立第二个存储子区域,并且该第一个存储子区域中存储的部分地址标识会移动到第二个存储子区域中,以使该第一个存储子区域和第二个存储子区域可以同时存储新的地址标识,与此同时,该第二区域内会增加指向该第二个存储子区域的第二个指针。同样的方法可以建立第三个直至第M个存储子区域,以及第三个直至第M个指针,此处不再赘述。
若每一子文件或子目录在存储时,都按照上述步骤S101-S104在相应元数据中建立该子文件或子目录与其父目录的关联关系,则后续用户可以根据实际需求对该父目录进行遍历操作,也即,在根据该第一地址标识对该信息存储区进行数据更新之后,该对象信息的处理方法还可以包括:
当需要对该父目录进行遍历操作时,获取该父目录的第二地址标识;
根据该第二地址标识查找对应的信息存储区;
向终端发送遍历条件设置请求,以使该终端根据该遍历条件设置请求反馈相应的设置信息;
根据该设置信息从该信息存储区中获取对应的数据,以遍历该父目录中存储的对象,该对象包括子目录或子文件。
本实施例中,该终端可以为电脑、手机或者平板电脑等设备。该遍历条件可以根据用户的实际需求而定,比如可以为预设遍历范围,预设遍历条数,或者遍历所有内容等等。该遍历条件可以通过终端内的预置接口传送至服务器,该预置接口可以是应用界面的指定接口。
例如,上述“根据该设置信息从该信息存储区中获取对应的数据”的步骤具体可以包括:
根据该设置信息从该信息存储区的第二区域中获取对应的指针;
根据该指针从该信息存储区的第一区域中查找对应的存储子区域;
根据该设置信息从该存储子区域中获取对应的数据。
本实施例中,当服务器接收到终端反馈的设置信息,比如预设遍历范围时,可以先根据该预设遍历范围找到对应的指针,再根据该指针找到对应的存储子区域,然后从该存储子区域中选出属于该预设遍历范围内的地址标识。
此外,当在元数据中建立好该目标对象与父目录之间的关联关系后,若后续用户在对象存储系统中删除了该目标对象,则相应的也要删除该关联关系,也即,在根据该第一地址标识对该信息存储区进行数据更新之后,该对象信息的处理方法还可以包括:
当该目标对象被删除时,获取该目标对象的第一地址标识。
根据该第一地址标识确定信息存储区。
根据该第一地址标识在该信息存储区的第一区域中进行查找,得到目标子区域。
检测该目标子区域当前的存储状态。
根据该存储状态删除该信息存储区中对应的数据。
本实施例中,该存储状态可以包括已存储一个数据和已存储多个数据。该信息存储区的确定方法具体可以参见上述步骤S101-S103,此处不再赘述。该目标子区域的查找方法可以根据实际需求而定,比如,若该第一区域中存储的地址标识是按字典顺序从小到大排列的,则该查找方法可以为二分查找法。
例如,上述“根据该存储状态删除该信息存储区中对应的数据”的步骤具体可以包括:
当该存储状态指示已存储一个数据时,将该目标子区域从该第一区域中删除,将该目标子区域对应的指针从该第二区域中删除;
当该存储状态指示已存储多个数据时,将该第二地址标识从该目标子区域中删除。
本实施例中,当该目标子区域中只存储一个数据(也即该第一地址标识)时,若将该第一地址标识进行删除,此时该目标子区域的存储为空,为避免浪费空间,应同时将该目标子区域以及该目标子区域对应的指针进行删除。当该目标子区域中存储了多个数据(也即包括该第一地址标识在内的多个地址标识)时,由于删除了该第一地址标识后,该目标子区域的存储不为空,故无需再进行其他的删除操作。
由上可知,本实施例提供的对象信息的处理方法,通过获取信息创建请求,该信息创建请求携带目标对象的第一地址标识,并根据该第一地址标识确定该目标对象所属的父目录的第二地址标识,之后,根据该第二地址标识查找对应的信息存储区,并根据该第一地址标识对该信息存储区进行数据更新,能快速建立对象存储系统的目录层次结构,从而实现目录下文件列表的遍历功能,操作简单,遍历效率高。
实施例二、
根据实施例一所描述的方法,以下将举例作进一步详细说明。
在本实施例中,将以对象信息的处理装置具体集成在服务器中,该服务器是对象存储系统的服务器,其可以是单个集成服务器,也可以是多个服务器为例进行说明。
如图2a和图2b所示,一种对象信息的处理方法,具体流程可以如下:
S201、服务器获取信息创建请求,该信息创建请求携带目标对象的第一地址标识,该目标对象包括子目录或子文件。
譬如,当该目标对象为子目录时,该第一地址标识可以为W:/a/m/,当该目标对象为子文件时,该第一地址标识可以为W:/a/m/x。需要说明的是,由于本实施例中对于子目录和子文件的处理方法是一样的,为描述方便,本实施例均以该目标对象为子文件为例进行描述。
S202、服务器根据该第一地址标识确定该目标对象所属的父目录的第二地址标识。
譬如,可以根据该第一地址标识W:/a/m/x的前缀部分确定该子目录所属父目录的第二地址标识为W:/a/m/。
S203、服务器根据该第二地址标识查找对应的信息存储区,该信息存储区用于存储该父目录的元数据,其中,该信息存储区包括第一区域和第二区域,该第一区域包括已建立的多个存储子区域,该第二区域包括已存储的多个指针,每一指针指向一个存储子区域。
譬如,服务器根据该第二地址标识W:/a/m/查找到的信息存储区可以为A,其中,A包括第一区域和第二区域,且该第一区域中建立有多个存储子区域,每一存储子区域存储有若干个地址标识,该地址标识均按照字典顺序从小到大排序。该第二区域中存储有多个指针,该多个指针按照所指向的存储子区域中最小的地址标识的字典顺序排序。
S204、服务器根据该第一地址标识从该第一区域中查找对应的存储子区域,并检测该查找到的存储子区域当前的剩余容量。
譬如,若第一区域中某一存储子区域An中存储有地址标识W:/a/m/w和W:/a/m/y,则按照字典顺序,服务器根据该第一地址标识W:/a/m/x查找到的存储子区域即为该An。
S205、服务器根据该剩余容量确定该第一区域中的目标子区域,并将该第一地址标识存储在该目标子区域中,以对该第一区域进行数据更新。
譬如,该目标子区域可以是已建立的存储子区域,也可以是待建立的存储子区域,具体可以根据该查找到的存储子区域的剩余容量而决定,该剩余容量可以包括已存满和未存满。
本实施例中,上述“服务器根据该剩余容量确定该第一区域中的目标子区域”的步骤具体可以包括:
当该剩余容量指示已存满时,在该第一区域中创建一个新存储子区域;按照预设策略将该查找到的存储子区域中的数据部分移动到该新存储子区域中;根据该第一地址标识从该查找到的存储子区域和新存储子区域中选择一个作为目标子区域;
当该剩余容量指示未存满时,将该查找到的存储子区域作为目标子区域。
譬如,假设每一存储子区域的容量为N,当该存储子区域An内已存储了N个地址标识时,该剩余容量指示已存满,此时,服务器会创建一个新存储子区域,并将An中后N/2个地址标识移动到该新存储子区域中,具体请参见图2b。若该移动的N/2个地址标识中包括地址标识W:/a/m/w,则按照字典顺序,根据该第一地址标识W:/a/m/x确定的目标子区域即为该新存储子区域,若剩下的N/2个地址标识中包括该地址标识W:/a/m/w,则将该查找到的存储子区域作为该目标子区域。当该存储子区域An内未存储N个地址标识时,该剩余容量指示未存满,此时,服务器可以直接将An作为目标子区域。
S206、服务器根据该第一区域中更新后的数据对该第二区域进行数据更新。
本实施例中,当该第一区域中创建了一个新存储子区域时,则需要对该第二区域进行数据更新,此时,上述步骤S206具体可以包括:
服务器创建该新存储子区域的指针,并将该指针存储在该第二区域中。
譬如,服务器可以根据该新存储子区域中已存储的N/2个地址标识以及该新存储子区域的位置信息建立该指针。
S207、当需要对该父目录进行遍历操作时,服务器获取该父目录的第二地址标识,并根据该第二地址标识查找对应的信息存储区。
譬如,当服务器接收到终端发送的携带第二地址标识W:/a/m/的遍历请求时,可以根据该第二地址标识W:/a/m/查找到信息存储区A。
S208、服务器向终端发送遍历条件设置请求,以使该终端根据该遍历条件设置请求反馈相应的设置信息。
譬如,服务器可以通过网络向终端发送遍历条件设置请求,终端接收到该请求后,可以提供输入框给用户输入设置信息,比如,用户可以通过输入框设置遍历范围或遍历条数,等等,之后终端可以将该设置信息发送至服务器。
S209、服务器根据该设置信息从该信息存储区中获取对应的数据,以遍历该父目录中存储的对象,该对象包括子目录或子文件。
例如,上述步骤S209具体可以包括:
服务器根据该设置信息从该信息存储区的第二区域中获取对应的指针;
服务器根据该指针从该信息存储区的第一区域中查找对应的存储子区域;
服务器根据该设置信息从该存储子区域中获取对应的数据。
譬如,当该设置信息为遍历W:/a/m/c-W:/a/m/s范围内的所有地址标识时,从第二区域中获取的指针可能有2个,且每个指针所指向的存储子区域可能存储了10个地址标识,之后,服务器根据该遍历范围从指针指向的存储子区域中获取的地址标识可能总共只有5个,比如可以为W:/a/m/d、W:/a/m/h、W:/a/m/j、W:/a/m/p和W:/a/m/r。
S210、当该目标对象被删除时,服务器获取该目标对象的第一地址标识,并根据该第一地址标识确定信息存储区。
譬如,当用户删除了该子文件时,服务器会根据该子文件的第一地址标识W:/a/m/x确定第二地址标识W:/a/m/,并根据第二地址标识W:/a/m/查找到信息存储区A,其中该信息存储区A为该子文件所属父目录的元数据存储区。
S211、服务器根据该第一地址标识在该信息存储区的第一区域中进行查找,得到目标子区域。
譬如,服务器可以通过二分查找在该第一区域中找到该第一地址标识W:/a/m/x所在的存储子区域,也即该目标子区域.
S212、服务器检测该目标子区域当前的存储状态,并根据该存储状态删除该信息存储区中对应的数据。
本实施例中,上述“服务器根据该存储状态删除该信息存储区中对应的数据”的步骤具体可以包括:
当该存储状态指示已存储一个数据时,服务器将该目标子区域从该第一区域中删除,将该目标子区域对应的指针从该第二区域中删除;
当该存储状态指示已存储多个数据时,服务器将该第二地址标识从该目标子区域中删除。
譬如,当该目标子区域中只存储了第一地址标识W:/a/m/x时,在删除W:/a/m/x的同时,也需要删除该目标子区域以及该目标子区域对应的指针。当该目标子区域中存储了W:/a/m/x和W:/a/m/s时,只需删除W:/a/m/x即可。
需要说明的是,上述步骤S207-S209和S210-S212之间不存在先后关系,其可以是并列步骤。
由上可知,本实施例提供的对象信息的处理方法,通过获取信息创建请求,该信息创建请求携带目标对象的第一地址标识,并根据该第一地址标识确定该目标对象所属的父目录的第二地址标识,接着,根据该第二地址标识查找对应的信息存储区,该信息存储区用于存储该父目录的元数据,其中,该信息存储区包括第一区域和第二区域,该第一区域包括已建立的多个存储子区域,该第二区域包括已存储的多个指针,每一指针指向一个存储子区域,之后,根据该第一地址标识从该第一区域中查找对应的存储子区域,并检测该查找到的存储子区域当前的剩余容量,最后,根据该剩余容量确定该第一区域中的目标子区域,将该第一地址标识存储在该目标子区域中,以对该第一区域进行数据更新,并根据该第一区域中更新后的数据对该第二区域进行数据更新,能克服对象存储没有目录结构的缺点,快速建立对象存储系统的目录层次结构。在该目录层次结构建好后,当该目标对象被删除时,可以获取该目标对象的第一地址标识,并根据该第一地址标识确定信息存储区,接着,根据该第一地址标识在该信息存储区的第一区域中进行查找,得到目标子区域,并检测该目标子区域当前的存储状态,根据该存储状态删除该信息存储区中对应的数据,能根据用户的实际操作对该目录层次结构进行更新,方法简单。当需要对该父目录进行遍历操作时,通过获取该父目录的第二地址标识,并根据该第二地址标识查找对应的信息存储区,之后,向终端发送遍历条件设置请求,以使该终端根据该遍历条件设置请求反馈相应的设置信息,并根据该设置信息从该信息存储区中获取对应的数据,以遍历该父目录中存储的对象,能利用建立好的目录层次结构实现目录下文件的遍历功能,遍历效率高,用户体验性好。
实施例三、
为了更好地实施以上方法,本发明实施例还提供一种对象信息的处理装置,如图3a所示,该对象信息的处理装置可以包括获取模块10、确定模块20、查找模块30和创建模块40,如下:
(1)获取模块10
获取模块10,用于获取信息创建请求,该信息创建请求携带目标对象的第一地址标识,该目标对象包括子目录或子文件。
本实施例中,该第一地址标识主要指该目标对象在服务器中的存储路径信息。具体的,若服务器当前存储的对象是子目录或子文件(也即目标对象)时,其会自动生成该信息创建请求。
需要说明的是,可以认为存储路径信息以“/”结尾的对象为父目录或子目录,存储路径信息不是以“/”结尾的对象为文件或子文件,通常一个父目录下可以存放多个子目录和子文件,该父目录可以归属于更上一级目录,也可以不归属于任何目录(比如该父目录为根目录)。该父目录的存储路径信息一般是其子目录或子文件的存储路径信息的前缀部分,比如,若存储路径信息为W:/a/b的对象为目标对象,则该目标对象所属父目录对应的存储路径信息为W:/a/,该父目录所属上一级目录(也即父目录的父目录)对应的存储路径信息为W:/。
由于并非所有的存储对象均是目标对象,比如存储路径信息为W:/的对象由于不存在更上一级目录(父目录),故该对象不是子目录或子文件,也即该对象不是目标对象,因此,在生成信息创建请求之前,该服务器还需对存储对象是否是目标对象进行判断,只有当该存储对象存在更上一级目录(父目录)时,才可以判定是目标对象,此时,可以生成该信息创建请求
(2)确定模块20
确定模块20,用于根据该第一地址标识确定该目标对象所属的父目录的第二地址标识。
本实施例中,该第二地址标识可以是父目录的存储路径信息。由于子目录或子文件通常是存放在父目录之下的,故两者的存储路径信息存在很大关联,通常确定模块20可以将该第一地址标识的前缀部分确定为该第二地址标识。
(3)查找模块30
查找模块30,用于根据该第二地址标识查找对应的信息存储区,该信息存储区用于存储该父目录的元数据。
本实施例中,该元数据Metadata主要用于描述对象数据的属性,其可以用来支持如指示存储位置、历史数据、资源查找以及文件记录等功能。需要说明的是,服务器在存储每一对象的时候,都会基于该对象的存储路径信息建立该对象的元数据,故查找模块30通过存储路径信息(也即地址标识)可以定位到相应的信息存储区。
(4)创建模块40
创建模块40,用于根据该第一地址标识对该信息存储区进行数据更新,以在该元数据中创建该父目录与该目标对象的关联关系。
本实施例中,为方便查找,该信息存储区除了存放父目录的元数据之外,创建模块40还可以在该信息存储区中建立多个指定的区域来存放该父目录与该目标对象的关联关系。
例如,该信息存储区可以包括第一区域和第二区域,该创建模块40具体可以包括第一更新子模块和第二更新子模块,其中:
第一更新子模块,用于根据该第一地址标识确定该第一区域中的目标子区域,并将该第一地址标识存储在该目标子区域中,以对该第一区域进行数据更新;
第二更新子模块,用于根据该第一区域中更新后的数据对该第二区域进行数据更新。
进一步地,该第一区域可以包括已建立的多个存储子区域,该第二区域可以包括已存储的多个指针,每一指针指向一个该存储子区域,此时,该第一更新子模块具体可以包括:
查找单元,用于根据该第一地址标识从该第一区域中查找对应的存储子区域;
检测单元,用于检测该查找到的存储子区域当前的剩余容量;
确定单元,用于根据该剩余容量确定该第一区域中的目标子区域。
容易理解的是,该指针是编程语言中的一个对象,利用地址,它的值直接指向位于服务器中另一个地方的值。本实施例中,该存储子区域与指针之间是一一对应的关系,通过指针可以找到所需的存储子区域,其中,该存储子区域用于存储地址标识,每一存储子区域可以是一段连续的存储块,里面存储了若干地址标识,该地址标识可以按照预设顺序进行排列,比如可以按照字典顺序从小到大排列,该指针可以按照所指向的存储子区域中最小的地址标识的字典顺序排序。该目标子区域可以是已建立的存储子区域,也可以是待建立的存储子区域,具体可以根据该查找到的存储子区域的剩余容量而决定,该剩余容量可以包括已存满和未存满,也即,该确定单元具体可以用于:
当该剩余容量指示已存满时,在该第一区域中创建一个新存储子区域;按照预设策略将该查找到的的存储子区域中的数据部分移动到该新存储子区域中;根据该第一地址标识从该查找到的的存储子区域和新存储子区域中选择一个作为目标子区域。
本实施例中,该预设策略可以为均分,也即使该查找到的存储子区域和新存储子区域中存储的地址标识数量大致相等,这样可最大程度的减少新存储子区域的创建频率。
具体的,假设每一存储子区域可以存储的地址标识数量为N,则当该查找单元查找到的存储子区域已存储了N个地址标识时,该剩余容量即指示已存满,此时,若需要存储第N+1个地址标识(即该第一地址标识),则确定单元可以在该第一区域中创建一个新存储子区域,并将该查找到的存储子区域内存储的N/2个地址标识移动到新存储子区域中。若每一存储子区域中的地址标识均是按字典顺序排列的,则确定单元可以根据该第一地址标识在字典中的顺序在该查找到的存储子区域和新存储子区域中选择一个作为目标子区域进行插入。
此时,由于该第二区域存储的是第一区域中存储子区域的指针,故当该第一区域中存储子区域的数量有所增加,也即确定单元建立了一个新存储子区域时,第二更新子模块需要在第二区域中添加相应的指针,也即此时,该第二更新子模块具体可以用于:
创建该新存储子区域的指针,并将该指针存储在该第二区域中。
本实施例中,该第二更新子模块可以根据该新存储子区域中已存储的地址标识以及该新存储子区域的位置信息建立该指针。
当然,该确定单元具体还可以用于:
当该剩余容量指示未存满时,将该查找到的存储子区域作为目标子区域。
本实施例中,若该查找到的存储子区域中没有存储N个地址标识,则该剩余容量指示未存满,此时,确定单元可以直接将该查找到的存储子区域作为目标子区域。此时,由于该第一区域中存储子区域的数量未发生变化,故该第二更新子模块不需要对该第二区域进行数据更新。
需要指出的是,在最开始的时候,该父目录下是没有存储任何子文件和子目录的,此时,创建模块40可以在该父目录的信息存储区中建立该第一区域和第二区域,并且,该第一区域中建立有第一个存储子区域,其内存储0个地址标识,而该第二区域内存储有指向该第一个存储子区域的第一个指针。当在该父目录下新增子目录或子文件的时候,该子目录或子文件的地址标识都往该第一个存储子区域中存储,并且按一定顺序排列,直到其剩余容量指示已存满,创建模块40才开始建立第二个存储子区域,并且该第一个存储子区域中存储的部分地址标识会移动到第二个存储子区域中,以使该第一个存储子区域和第二个存储子区域可以同时存储新的地址标识,与此同时,该第二区域内会增加指向该第二个存储子区域的第二个指针。同样的方法可以建立第三个直至第M个存储子区域,以及第三个直至第M个指针,此处不再赘述。
若每一子文件或子目录在存储时,创建模块40都在相应元数据中建立该子文件或子目录与其父目录的关联关系,则后续用户可以根据实际需求对该父目录进行遍历操作,也即,请参阅图3b,该对象信息的处理装置还可以包括遍历模块50,该遍历模块50具体可以包括第二获取子模块、第二查找子模块、发送子模块和第三获取子模块,其中:
第二获取子模块,用于在该创建模块40根据该第一地址标识对该信息存储区进行数据更新之后,当需要对该父目录进行遍历操作时,获取该父目录的第二地址标识;
第二查找子模块,用于根据该第二地址标识查找对应的信息存储区;
发送子模块,用于向终端发送遍历条件设置请求,以使该终端根据该遍历条件设置请求反馈相应的设置信息;
第三获取子模块,用于根据该设置信息从该信息存储区中获取对应的数据,以遍历该父目录中存储的对象,该对象包括子目录或子文件。
本实施例中,该终端可以为电脑、手机或者平板电脑等设备。该遍历条件可以根据用户的实际需求而定,比如可以为预设遍历范围,预设遍历条数,或者遍历所有内容等等。该遍历条件可以通过终端内的预置接口传送至服务器,该预置接口可以是应用界面的指定接口。
例如,该第三获取子模块具体可以用于:
根据该设置信息从该信息存储区的第二区域中获取对应的指针;
根据该指针从该信息存储区的第一区域中查找对应的存储子区域;
根据该设置信息从该存储子区域中获取对应的数据。
本实施例中,当接收到终端反馈的设置信息,比如预设遍历范围时,第三获取子模块可以先根据该预设遍历范围找到对应的指针,再根据该指针找到对应的存储子区域,然后从该存储子区域中选出属于该预设遍历范围内的地址标识。
此外,当创建模块40在元数据中建立好该目标对象与父目录之间的关联关系后,若后续用户在对象存储系统中删除了该目标对象,则相应的也要删除该关联关系,也即,该对象信息的处理装置还可以包括删除模块60,该删除模块60具体可以包括第一获取子模块、确定子模块、第一查找子模块、检测子模块和删除子模块,其中:
第一获取子模块,用于在该创建模块40根据该第一地址标识对该信息存储区进行数据更新之后,当该目标对象被删除时,获取该目标对象的第一地址标识;
确定子模块,用于根据该第一地址标识确定信息存储区;
第一查找子模块,用于根据该第一地址标识在该信息存储区的第一区域中进行查找,得到目标子区域;
检测子模块,用于检测该目标子区域当前的存储状态;
删除子模块,用于根据该存储状态删除该信息存储区中对应的数据。
本实施例中,该存储状态可以包括已存储一个数据和已存储多个数据。该信息存储区的确定方法具体可以参见上述确定模块20和查找模块30所执行的步骤,此处不再赘述。该第一查找子模块查找目标子区域的方法可以根据实际需求而定,比如,若该第一区域中存储的地址标识是按字典顺序从小到大排列的,则该第一查找子模块所使用的查找方法可以为二分查找法。
例如,该删除子模块具体可以用于:
当该存储状态指示已存储一个数据时,将该目标子区域从该第一区域中删除,将该目标子区域对应的指针从该第二区域中删除;
当该存储状态指示已存储多个数据时,将该第二地址标识从该目标子区域中删除。
本实施例中,当该目标子区域中只存储了一个数据(也即该第一地址标识)时,若该删除子模块将该第一地址标识进行删除,此时该目标子区域的存储为空,为避免浪费空间,应同时将该目标子区域以及该目标子区域对应的指针进行删除。当该目标子区域中存储了多个数据(也即包括该第一地址标识在内的多个地址标识)时,由于该删除子模块删除了该第一地址标识后,该目标子区域的存储不为空,故无需再进行其他的删除操作。
具体实施时,以上各个单元可以作为独立的实体来实现,也可以进行任意组合,作为同一或若干个实体来实现,以上各个单元的具体实施可参见前面的方法实施例,在此不再赘述。
由上可知,本实施例提供的对象信息的处理装置,通过获取模块10获取信息创建请求,该信息创建请求携带目标对象的第一地址标识,并经由确定模块20根据该第一地址标识确定该目标对象所属的父目录的第二地址标识,之后,通过查找模块30根据该第二地址标识查找对应的信息存储区,创建模块40根据该第一地址标识对该信息存储区进行数据更新,能快速建立对象存储系统的目录层次结构,操作简单,处理效率高。
实施例四、
此外,本发明实施例还提供一种对象信息的处理系统,包括本发明实施例提供的任一种对象信息的处理装置,具体可参见实施例三,其中,该对象信息的处理装置可以集成在服务器等设备中,例如,可以如下:
服务器,用于获取信息创建请求,该信息创建请求携带目标对象的第一地址标识,该目标对象包括子目录或子文件;根据该第一地址标识确定该目标对象所属的父目录的第二地址标识;根据该第二地址标识查找对应的信息存储区,该信息存储区用于存储该父目录的元数据;根据该第一地址标识对该信息存储区进行数据更新,以在该元数据中创建该父目录与该目标对象的关联关系。
此外,可选的,该对象信息的处理系统还可以包括其他的设备,比如,还可以包括用户终端,该用户终端,可以根据用户的输入操作生成相应的设置信息,并将该设置信息发送至服务器等。
以上各个设备的具体操作可参见前面的实施例,在此不再赘述。
由于该对象信息的处理系统可以包括本发明实施例所提供的任一种对象信息的处理装置,因此,可以实现本发明实施例所提供的任一种对象信息的处理装置所能实现的有益效果,详见前面的实施例,在此不再赘述。
实施例五、
本发明实施例还提供一种服务器,该服务器可以集成本发明实施例所提供的任一种对象信息的处理装置,如图4所示,其示出了本发明实施例所涉及的服务器的结构示意图,具体来讲:
该服务器可以包括一个或者一个以上处理核心的处理器71、一个或一个以上计算机可读存储介质的存储器72、射频(Radio Frequency,RF)电路73、电源74、输入单元75、以及显示单元76等部件。本领域技术人员可以理解,图4中示出的服务器结构并不构成对服务器的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。其中:
处理器71是该服务器的控制中心,利用各种接口和线路连接整个服务器的各个部分,通过运行或执行存储在存储器72内的软件程序和/或模块,以及调用存储在存储器72内的数据,执行服务器的各种功能和处理数据,从而对服务器进行整体监控。可选的,处理器71可包括一个或多个处理核心;优选的,处理器71可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器71中。
存储器72可用于存储软件程序以及模块,处理器71通过运行存储在存储器72的软件程序以及模块,从而执行各种功能应用以及数据处理。存储器72可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据服务器的使用所创建的数据等。此外,存储器72可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。相应地,存储器72还可以包括存储器控制器,以提供处理器71对存储器72的访问。
RF电路73可用于收发信息过程中,信号的接收和发送,特别地,将基站的下行信息接收后,交由一个或者一个以上处理器71处理;另外,将涉及上行的数据发送给基站。通常,RF电路73包括但不限于天线、至少一个放大器、调谐器、一个或多个振荡器、用户身份模块(SIM)卡、收发信机、耦合器、低噪声放大器(LNA,Low Noise Amplifier)、双工器等。此外,RF电路73还可以通过无线通信与网络和其他设备通信。所述无线通信可以使用任一通信标准或协议,包括但不限于全球移动通讯系统(GSM,Global System of Mobilecommunication)、通用分组无线服务(GPRS,General Packet Radio Service)、码分多址(CDMA,Code Division Multiple Access)、宽带码分多址(WCDMA,Wideband CodeDivision Multiple Access)、长期演进(LTE,Long Term Evolution)、电子邮件、短消息服务(SMS,Short Messaging Service)等。
服务器还包括给各个部件供电的电源74(比如电池),优选的,电源74可以通过电源管理系统与处理器71逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。电源74还可以包括一个或一个以上的直流或交流电源、再充电系统、电源故障检测电路、电源转换器或者逆变器、电源状态指示器等任意组件。
该服务器还可包括输入单元75,该输入单元75可用于接收输入的数字或字符信息,以及产生与用户设置以及功能控制有关的键盘、鼠标、操作杆、光学或者轨迹球信号输入。具体地,在一个具体的实施例中,输入单元75可包括触敏表面以及其他输入设备。触敏表面,也称为触摸显示屏或者触控板,可收集用户在其上或附近的触摸操作(比如用户使用手指、触笔等任何适合的物体或附件在触敏表面上或在触敏表面附近的操作),并根据预先设定的程式驱动相应的连接装置。可选的,触敏表面可包括触摸检测装置和触摸控制器两个部分。其中,触摸检测装置检测用户的触摸方位,并检测触摸操作带来的信号,将信号传送给触摸控制器;触摸控制器从触摸检测装置上接收触摸信息,并将它转换成触点坐标,再送给处理器71,并能接收处理器71发来的命令并加以执行。此外,可以采用电阻式、电容式、红外线以及表面声波等多种类型实现触敏表面。除了触敏表面,输入单元75还可以包括其他输入设备。具体地,其他输入设备可以包括但不限于物理键盘、功能键(比如音量控制按键、开关按键等)、轨迹球、鼠标、操作杆等中的一种或多种。
该服务器还可包括显示单元76,该显示单元76可用于显示由用户输入的信息或提供给用户的信息以及服务器的各种图形用户接口,这些图形用户接口可以由图形、文本、图标、视频和其任意组合来构成。显示单元76可包括显示面板,可选的,可以采用液晶显示器(LCD,Liquid Crystal Display)、有机发光二极管(OLED,Organic Light-EmittingDiode)等形式来配置显示面板。进一步的,触敏表面可覆盖显示面板,当触敏表面检测到在其上或附近的触摸操作后,传送给处理器71以确定触摸事件的类型,随后处理器71根据触摸事件的类型在显示面板上提供相应的视觉输出。虽然在图4中,触敏表面与显示面板是作为两个独立的部件来实现输入和输入功能,但是在某些实施例中,可以将触敏表面与显示面板集成而实现输入和输出功能。
尽管未示出,服务器还可以包括摄像头、蓝牙模块等,在此不再赘述。具体在本实施例中,服务器中的处理器71会按照如下的指令,将一个或一个以上的应用程序的进程对应的可执行文件加载到存储器72中,并由处理器71来运行存储在存储器72中的应用程序,从而实现各种功能,如下:
获取信息创建请求,该信息创建请求携带目标对象的第一地址标识,该目标对象包括子目录或子文件;
根据该第一地址标识确定该目标对象所属的父目录的第二地址标识;
根据该第二地址标识查找对应的信息存储区,该信息存储区用于存储该父目录的元数据;
根据该第一地址标识对该信息存储区进行数据更新,以在该元数据中创建该父目录与该目标对象的关联关系。
以上各操作的实现方法具体可参见上述实施例,此处不再赘述。
由上述可知,本实施例提供的服务器,通过获取信息创建请求,该信息创建请求携带目标对象的第一地址标识,并根据该第一地址标识确定该目标对象所属的父目录的第二地址标识,之后,根据该第二地址标识查找对应的信息存储区,并根据该第一地址标识对该信息存储区进行数据更新,能快速建立对象存储系统的目录层次结构,实现目录下文件列表的遍历功能,操作简单,遍历效率高。
本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:只读存储器(ROM,Read Only Memory)、随机存取记忆体(RAM,RandomAccess Memory)、磁盘或光盘等。
以上对本发明实施例所提供的一种对象信息的处理方法、装置和系统进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
Claims (15)
1.一种对象信息的处理方法,其特征在于,包括:
获取信息创建请求,所述信息创建请求携带目标对象的第一地址标识,所述目标对象包括子目录或子文件;
根据所述第一地址标识确定所述目标对象所属的父目录的第二地址标识;
根据所述第二地址标识查找对应的信息存储区,所述信息存储区用于存储所述父目录的元数据,所述信息存储区包括第一区域和第二区域;
根据所述第一地址标识确定所述第一区域中的目标子区域,并将所述第一地址标识存储在所述目标子区域中,以对所述第一区域进行数据更新;
根据所述第一区域中更新后的数据对所述第二区域进行数据更新,以在所述元数据中创建所述父目录与所述目标对象的关联关系。
2.根据权利要求1所述的对象信息的处理方法,其特征在于,所述第一区域包括已建立的多个存储子区域,所述第二区域包括已存储的多个指针,每一指针指向一个所述存储子区域,所述根据所述第一地址标识确定所述第一区域中的目标子区域,包括:
根据所述第一地址标识从所述第一区域中查找对应的存储子区域;
检测所述查找到的存储子区域当前的剩余容量;
根据所述剩余容量确定所述第一区域中的目标子区域。
3.根据权利要求2所述的对象信息的处理方法,其特征在于,
所述根据所述剩余容量确定所述第一区域中的目标子区域,包括:当所述剩余容量指示已存满时,在所述第一区域中创建一个新存储子区域;按照预设策略将所述查找到的存储子区域中的数据部分移动到所述新存储子区域中;根据所述第一地址标识从所述查找到的存储子区域和新存储子区域中选择一个作为目标子区域;
所述根据所述第一区域中更新后的数据对所述第二区域进行数据更新,包括:创建所述新存储子区域的指针,并将所述指针存储在所述第二区域中。
4.根据权利要求2所述的对象信息的处理方法,其特征在于,在根据所述第一地址标识对所述信息存储区进行数据更新之后,所述对象信息的处理方法还包括:
当所述目标对象被删除时,获取所述目标对象的第一地址标识;
根据所述第一地址标识确定信息存储区;
根据所述第一地址标识在所述信息存储区的第一区域中进行查找,得到目标子区域;
检测所述目标子区域当前的存储状态;
根据所述存储状态删除所述信息存储区中对应的数据。
5.根据权利要求4所述的对象信息的处理方法,其特征在于,所述根据所述存储状态删除所述信息存储区中对应的数据,包括:
当所述存储状态指示已存储一个数据时,将所述目标子区域从所述第一区域中删除,将所述目标子区域对应的指针从所述第二区域中删除;
当所述存储状态指示已存储多个数据时,将所述第二地址标识从所述目标子区域中删除。
6.根据权利要求2所述的对象信息的处理方法,其特征在于,在根据所述第一地址标识对所述信息存储区进行数据更新之后,所述对象信息的处理方法还包括:
当需要对所述父目录进行遍历操作时,获取所述父目录的第二地址标识;
根据所述第二地址标识查找对应的信息存储区;
向终端发送遍历条件设置请求,以使所述终端根据所述遍历条件设置请求反馈相应的设置信息;
根据所述设置信息从所述信息存储区中获取对应的数据,以遍历所述父目录中存储的对象,所述对象包括子目录或子文件。
7.根据权利要求6所述的对象信息的处理方法,其特征在于,所述根据所述设置信息从所述信息存储区中获取对应的数据,包括:
根据所述设置信息从所述信息存储区的第二区域中获取对应的指针;
根据所述指针从所述信息存储区的第一区域中查找对应的存储子区域;
根据所述设置信息从所述存储子区域中获取对应的数据。
8.一种对象信息的处理装置,其特征在于,包括:
获取模块,用于获取信息创建请求,所述信息创建请求携带目标对象的第一地址标识,所述目标对象包括子目录或子文件;
确定模块,用于根据所述第一地址标识确定所述目标对象所属的父目录的第二地址标识;
查找模块,用于根据所述第二地址标识查找对应的信息存储区,所述信息存储区用于存储所述父目录的元数据,所述信息存储区包括第一区域和第二区域;
创建模块,包括:第一更新子模块,用于根据所述第一地址标识确定所述第一区域中的目标子区域,并将所述第一地址标识存储在所述目标子区域中,以对所述第一区域进行数据更新;第二更新子模块,用于根据所述第一区域中更新后的数据对所述第二区域进行数据更新,以在所述元数据中创建所述父目录与所述目标对象的关联关系。
9.根据权利要求8所述的对象信息的处理装置,其特征在于,所述第一区域包括已建立的多个存储子区域,所述第二区域包括已存储的多个指针,每一指针指向一个所述存储子区域,所述第一更新子模块具体包括:
查找单元,用于根据所述第一地址标识从所述第一区域中查找对应的存储子区域;
检测单元,用于检测所述查找到的存储子区域当前的剩余容量;
确定单元,用于根据所述剩余容量确定所述第一区域中的目标子区域。
10.根据权利要求9所述的对象信息的处理装置,其特征在于,
所述确定单元具体用于:当所述剩余容量指示已存满时,在所述第一区域中创建一个新存储子区域;按照预设策略将所述查找到的存储子区域中的数据部分移动到所述新存储子区域中;根据所述第一地址标识从所述查找到的存储子区域和新存储子区域中选择一个作为目标子区域;
所述第二更新子模块具体用于:创建所述新存储子区域的指针,并将所述指针存储在所述第二区域中。
11.根据权利要求9所述的对象信息的处理装置,其特征在于,所述对象信息的处理装置还包括删除模块,所述删除模块具体包括:
第一获取子模块,用于在所述创建模块根据所述第一地址标识对所述信息存储区进行数据更新之后,当所述目标对象被删除时,获取所述目标对象的第一地址标识;
确定子模块,用于根据所述第一地址标识确定信息存储区;
第一查找子模块,用于根据所述第一地址标识在所述信息存储区的第一区域中进行查找,得到目标子区域;
检测子模块,用于检测所述目标子区域当前的存储状态;
删除子模块,用于根据所述存储状态删除所述信息存储区中对应的数据。
12.根据权利要求11所述的对象信息的处理装置,其特征在于,所述删除子模块具体用于:
当所述存储状态指示已存储一个数据时,将所述目标子区域从所述第一区域中删除,将所述目标子区域对应的指针从所述第二区域中删除;
当所述存储状态指示已存储多个数据时,将所述第二地址标识从所述目标子区域中删除。
13.根据权利要求9所述的对象信息的处理装置,其特征在于,所述对象信息的处理装置还包括遍历模块,所述遍历模块具体包括:
第二获取子模块,用于在所述创建模块根据所述第一地址标识对所述信息存储区进行数据更新之后,当需要对所述父目录进行遍历操作时,获取所述父目录的第二地址标识;
第二查找子模块,用于根据所述第二地址标识查找对应的信息存储区;
发送子模块,用于向终端发送遍历条件设置请求,以使所述终端根据所述遍历条件设置请求反馈相应的设置信息;
第三获取子模块,用于根据所述设置信息从所述信息存储区中获取对应的数据,以遍历所述父目录中存储的对象,所述对象包括子目录或子文件。
14.根据权利要求13所述的对象信息的处理装置,其特征在于,所述第三获取子模块具体用于:
根据所述设置信息从所述信息存储区的第二区域中获取对应的指针;
根据所述指针从所述信息存储区的第一区域中查找对应的存储子区域;
根据所述设置信息从所述存储子区域中获取对应的数据。
15.一种计算机可读存储介质,其存储有计算机程序,其特征在于,当所述计算机程序在计算机上运行时,使得所述计算机执行如权利要求1-7中任意一项所述的对象信息的处理方法。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610533341.4A CN106202367B (zh) | 2016-07-07 | 2016-07-07 | 一种对象信息的处理方法及装置 |
EP17823494.4A EP3483737A4 (en) | 2016-07-07 | 2017-06-08 | METHOD AND DEVICE FOR PROCESSING OBJECT INFORMATION AND STORAGE MEDIUM |
PCT/CN2017/087551 WO2018006682A1 (zh) | 2016-07-07 | 2017-06-08 | 对象信息的处理方法、装置及存储介质 |
US16/207,570 US11281632B2 (en) | 2016-07-07 | 2018-12-03 | Object information processing method and apparatus, and storage medium |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610533341.4A CN106202367B (zh) | 2016-07-07 | 2016-07-07 | 一种对象信息的处理方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106202367A CN106202367A (zh) | 2016-12-07 |
CN106202367B true CN106202367B (zh) | 2019-03-05 |
Family
ID=57472891
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610533341.4A Active CN106202367B (zh) | 2016-07-07 | 2016-07-07 | 一种对象信息的处理方法及装置 |
Country Status (4)
Country | Link |
---|---|
US (1) | US11281632B2 (zh) |
EP (1) | EP3483737A4 (zh) |
CN (1) | CN106202367B (zh) |
WO (1) | WO2018006682A1 (zh) |
Families Citing this family (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106202367B (zh) | 2016-07-07 | 2019-03-05 | 腾讯科技(深圳)有限公司 | 一种对象信息的处理方法及装置 |
CN106685708B (zh) * | 2016-12-16 | 2020-02-21 | 华为技术有限公司 | 一种服务关系的确定方法、装置及系统 |
CN107229713A (zh) * | 2017-05-27 | 2017-10-03 | 灵犀智数(北京)科技发展有限公司 | 一种对象存储方法及装置 |
CN108021472B (zh) * | 2017-11-28 | 2021-02-02 | 厦门市美亚柏科信息股份有限公司 | ReFS文件系统的格式化恢复方法及存储介质 |
CN108491163B (zh) * | 2018-03-19 | 2022-01-04 | 腾讯科技(深圳)有限公司 | 一种大数据处理方法、装置和存储介质 |
CN109471838B (zh) * | 2018-10-19 | 2020-05-22 | 北京字节跳动网络技术有限公司 | 目录文档的操作方法、装置、电子设备、可读存储介质 |
CN111522780B (zh) * | 2019-02-01 | 2024-01-30 | 华为技术有限公司 | 一种记录文件创建者信息的方法及终端 |
CN110321325A (zh) * | 2019-06-21 | 2019-10-11 | 腾讯科技(深圳)有限公司 | 文件索引节点查找方法、终端、服务器、系统及存储介质 |
CN110532058B (zh) * | 2019-07-26 | 2022-07-15 | 济南浪潮数据技术有限公司 | 容器集群服务的管理方法、装置、设备及可读存储介质 |
CN110765073B (zh) * | 2019-09-11 | 2022-06-07 | 厦门卫星定位应用股份有限公司 | 分布式存储系统的文件管理方法、介质、设备及装置 |
CN111258959A (zh) * | 2020-01-10 | 2020-06-09 | 北京猎豹移动科技有限公司 | 一种数据获取方法、数据提供方法及装置 |
CN111291055B (zh) * | 2020-02-25 | 2023-03-14 | 北京奇艺世纪科技有限公司 | 数据存储方法及装置、数据处理方法及装置、电子设备 |
CN111488405B (zh) * | 2020-04-16 | 2022-02-18 | 北京字节跳动网络技术有限公司 | 一种信息更新方法及装置 |
CN112073738B (zh) * | 2020-08-11 | 2021-10-22 | 北京城市网邻信息技术有限公司 | 一种信息的处理方法和装置 |
CN111966633B (zh) * | 2020-08-14 | 2024-04-09 | 北京百度网讯科技有限公司 | 用于查询目录下子节点的方法、装置、电子设备及介质 |
CN112035709A (zh) * | 2020-08-25 | 2020-12-04 | 上海中通吉网络技术有限公司 | 资源目录的编排方法、高速读取方法、装置和设备 |
CN112989323B (zh) * | 2021-02-03 | 2024-02-13 | 成都欧珀通信科技有限公司 | 进程检测方法、装置、终端及存储介质 |
CN115544046B (zh) * | 2022-11-25 | 2023-03-10 | 成都交大光芒科技股份有限公司 | 一种对象数据的分层更新方法、装置、设备和存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103108047A (zh) * | 2013-02-06 | 2013-05-15 | 浪潮电子信息产业股份有限公司 | 一种对象存储系统元数据缓存的优化方法 |
CN104123359A (zh) * | 2014-07-17 | 2014-10-29 | 江苏省邮电规划设计院有限责任公司 | 一种分布式对象存储系统的资源管理方法 |
CN105404653A (zh) * | 2015-10-30 | 2016-03-16 | 无锡清华信息科学与技术国家实验室物联网技术中心 | 一种全分布式文件索引及协作编辑机制的实现方法 |
CN105653545A (zh) * | 2014-11-10 | 2016-06-08 | 阿里巴巴集团控股有限公司 | 在页面中提供业务对象信息的方法及装置 |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020078066A1 (en) * | 2000-12-18 | 2002-06-20 | David Robinson | Data storage system including a file system for managing multiple volumes |
US7228320B2 (en) * | 2004-11-17 | 2007-06-05 | Hitachi, Ltd. | System and method for creating an object-level snapshot in a storage system |
JP5029513B2 (ja) * | 2008-06-30 | 2012-09-19 | ソニー株式会社 | 情報処理装置、情報処理装置の制御方法、およびプログラム |
CN101719141B (zh) * | 2009-12-24 | 2011-09-07 | 成都市华为赛门铁克科技有限公司 | 基于目录对象的文件处理方法和系统 |
CN102110146B (zh) * | 2011-02-16 | 2012-11-14 | 清华大学 | 基于键值key-value存储的分布式文件系统元数据管理方法 |
US9317511B2 (en) * | 2012-06-19 | 2016-04-19 | Infinidat Ltd. | System and method for managing filesystem objects |
CN103902632B (zh) * | 2012-12-31 | 2018-01-02 | 华为技术有限公司 | 键值存储系统中构建文件系统的方法、装置及电子设备 |
US9311326B2 (en) * | 2013-04-12 | 2016-04-12 | Alterante, Inc. | Virtual file system for automated data replication and review |
CN104239316B (zh) * | 2013-06-13 | 2018-09-07 | 深圳市腾讯计算机系统有限公司 | 查找对象的方法及装置 |
CN104754001A (zh) * | 2013-12-30 | 2015-07-01 | 方正宽带网络服务股份有限公司 | 云存储系统和数据存储方法 |
US9495478B2 (en) * | 2014-03-31 | 2016-11-15 | Amazon Technologies, Inc. | Namespace management in distributed storage systems |
CN106202367B (zh) * | 2016-07-07 | 2019-03-05 | 腾讯科技(深圳)有限公司 | 一种对象信息的处理方法及装置 |
-
2016
- 2016-07-07 CN CN201610533341.4A patent/CN106202367B/zh active Active
-
2017
- 2017-06-08 WO PCT/CN2017/087551 patent/WO2018006682A1/zh unknown
- 2017-06-08 EP EP17823494.4A patent/EP3483737A4/en not_active Ceased
-
2018
- 2018-12-03 US US16/207,570 patent/US11281632B2/en active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103108047A (zh) * | 2013-02-06 | 2013-05-15 | 浪潮电子信息产业股份有限公司 | 一种对象存储系统元数据缓存的优化方法 |
CN104123359A (zh) * | 2014-07-17 | 2014-10-29 | 江苏省邮电规划设计院有限责任公司 | 一种分布式对象存储系统的资源管理方法 |
CN105653545A (zh) * | 2014-11-10 | 2016-06-08 | 阿里巴巴集团控股有限公司 | 在页面中提供业务对象信息的方法及装置 |
CN105404653A (zh) * | 2015-10-30 | 2016-03-16 | 无锡清华信息科学与技术国家实验室物联网技术中心 | 一种全分布式文件索引及协作编辑机制的实现方法 |
Also Published As
Publication number | Publication date |
---|---|
US11281632B2 (en) | 2022-03-22 |
EP3483737A1 (en) | 2019-05-15 |
EP3483737A4 (en) | 2019-05-15 |
US20190102341A1 (en) | 2019-04-04 |
WO2018006682A1 (zh) | 2018-01-11 |
CN106202367A (zh) | 2016-12-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106202367B (zh) | 一种对象信息的处理方法及装置 | |
US11388220B2 (en) | Image distribution method and apparatus, and image obtaining method and apparatus | |
CN105490919B (zh) | 消息撤回方法和装置 | |
WO2018010527A1 (zh) | 数据处理方法、装置、系统及存储介质 | |
US10757065B2 (en) | Domain name resolution method, device and system, and storage medium | |
JP2019502190A (ja) | 情報プッシュ方法、デバイス及びシステム並びにコンピュータ記憶媒体 | |
CN104516888B (zh) | 多维数据的权限查询方法及装置 | |
CN104572819A (zh) | 一种垃圾数据的清理方法和系统 | |
CN106714274B (zh) | 接入点连接方法及装置 | |
CN104142868A (zh) | 建立连接的方法及装置 | |
CN103455583B (zh) | 虚拟目录建立方法、装置及电子设备 | |
CN104111927A (zh) | 信息分类的方法、设备和系统 | |
CN104516887A (zh) | 一种网页数据搜索方法、装置和系统 | |
US20240089313A1 (en) | File sending method and apparatus, and electronic device | |
CN104239316B (zh) | 查找对象的方法及装置 | |
CN106953898A (zh) | 一种获取软件包的方法和装置 | |
CN104731439A (zh) | 一种手势封装和任务执行方法、装置 | |
CN105205066A (zh) | 一种图片查找方法和装置 | |
CN106777019B (zh) | 一种HBase系统的监控方法及监控服务器 | |
CN104636455A (zh) | 应用程序映射信息的获取方法及装置 | |
CN104965825A (zh) | 一种数据处理的方法及终端 | |
CN107153715A (zh) | 在页面上添加文件的方法及装置 | |
CN104135464A (zh) | 一种联运中网页应用的帐号信息处理方法、装置和系统 | |
CN115065609A (zh) | B端SaaS系统混合部署方法及系统 | |
CN103617036A (zh) | 一种显示插件的方法、装置及终端设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | 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 | ||
TR01 | Transfer of patent right | ||
TR01 | Transfer of patent right |
Effective date of registration: 20230712 Address after: 518057 Tencent Building, No. 1 High-tech Zone, Nanshan District, Shenzhen City, Guangdong Province, 35 floors Patentee after: TENCENT TECHNOLOGY (SHENZHEN) Co.,Ltd. Patentee after: TENCENT CLOUD COMPUTING (BEIJING) Co.,Ltd. Address before: 2, 518000, East 403 room, SEG science and Technology Park, Zhenxing Road, Shenzhen, Guangdong, Futian District Patentee before: TENCENT TECHNOLOGY (SHENZHEN) Co.,Ltd. |