用于管理文件的方法和系统的制作方法_2

文档序号:9380327阅读:来源:国知局
TK意图。
[0046] 图8为本发明实现文件管理的系统架构示意图。
【具体实施方式】
[0047] 下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完 整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。以下 对至少一个示例性实施例的描述实际上仅仅是说明性的,决不作为对本发明及其应用或使 用的任何限制。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提 下所获得的所有其他实施例,都属于本发明保护的范围。
[0048] 除非另外具体说明,否则在这些实施例中阐述的部件和步骤的相对布置、数字表 达式和数值不限制本发明的范围。
[0049] 同时,应当明白,为了便于描述,附图中所示出的各个部分的尺寸并不是按照实际 的比例关系绘制的。
[0050] 对于相关领域普通技术人员已知的技术、方法和设备可能不作详细讨论,但在适 当情况下,所述技术、方法和设备应当被视为授权说明书的一部分。
[0051] 在这里示出和讨论的所有示例中,任何具体值应被解释为仅仅是示例性的,而不 是作为限制。因此,示例性实施例的其它示例可以具有不同的值。
[0052] 应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一 个附图中被定义,则在随后的附图中不需要对其进行进一步讨论。
[0053] 图1为本发明用于管理文件的方法一个实施例的示意图。如图1所示,本实施例 的方法步骤包括:
[0054] 步骤101,用户终端在存储文件时,向元数据主服务器发送文件创建请求。
[0055] 步骤102,元数据主服务器在接收到所述用户终端发送的文件创建请求时,从对象 池中选择用于存储所述文件的存储对象,并将所述存储对象的元数据信息发送给所述用户 终端。
[0056] 其中所述元数据信息包括所述存储对象的对象标识信息和对象位置信息。
[0057] 步骤103,所述用户终端在接收到元数据主服务器发送的所述元数据信息时,将写 入请求发送给与所述对象位置信息相关联的对象服务器。
[0058] 其中写入请求包括所述文件和所述对象标识信息。
[0059] 步骤104,对象服务器接收到写入请求后,将所述文件写入到与所述对象标识信息 相对应的数据块中,并更新所述存储对象的头信息。
[0060] 优选的,存储对象的头信息包括存储对象标识、与存储对象标识相对应的空余数 据块、与存储对象标识相对应的已使用数据块比例、数据块与文件的对应关系。
[0061] 基于本发明上述实施例提供的用于管理文件的方法,通过对文件和对象的关系进 行了重新定义,允许一个对象内存储一个或多个文件的数据块,一个文件也可跨多个对象 来存储文件数据块,解决了海量中小文件元数据服务器读写性能要求高的问题,方便用户 将对象存储应用到更加普遍的使用场景。
[0062] 在一个实施例中,对象服务器将所述文件写入到与所述对象标识信息相对应的数 据块中,并更新所述存储对象的头信息的步骤后,还包括:
[0063] 对象服务器向元数据主服务器发送数据写入成功响应,以便元数据主服务器更新 所述存储对象的元数据信息。
[0064] 通过上述更新操作,元数据主服务器可根据对象服务器的操作及时更新存储对象 的元数据信息。
[0065] 在本发明中,文件是以对象中的数据块为基础存储单元。为此,可将对象格式重新 进行定义。在一个实施例中,可将单个对象的格式分为两部分,分别是对象头和对象数据 块。其中对象头如表1所示。
[0067] 表1
[0068] 如表1所示,对象头部分包括基础信息区和数据目录区,对象数据块部分由多个 数据块组成,每个数据块的大小默认为16KB,这些数据块是实际的存储单元。允许一个对象 内存放一个或者多个文件的数据块,如图2所示;一个文件也可以跨多个对象来存储文件 数据块,如图3所示。
[0069] 图4为本发明用于管理文件的方法另一实施例的示意图。在该实施例中,涉及用 户终端如何读取文件。
[0070] 步骤401,用户终端在读取所述文件时,向元数据查询服务器发送文件查询请求。
[0071] 其中元数据查询服务器与元数据主服务器同步更新。
[0072] 步骤402,元数据查询服务器在接收到所述用户终端发送的文件查询请求时,查 询存储所述文件的所述存储对象,并将所述存储对象的所述元数据信息发送给所述用户终 端。
[0073] 步骤402,所述用户终端在接收到元数据查询服务器发送的所述元数据信息时,将 读取请求发送给与所述对象位置信息相关联的对象服务器,其中读取请求包括所述对象标 识息。
[0074] 步骤404,对象服务器读取与所述对象标识信息相对应的数据块信息,并将读取到 的数据块信息发送给所述用户终端。
[0075] 为了提高系统效率,这里采用了分布式部署的模式,由与元数据主服务器同步的 元数据查询服务器负责数据查询。
[0076] 图5为本发明用于管理文件的方法又一实施例的示意图。在该实施例中,涉及用 户终端如何删除文件。
[0077] 步骤501,用户终端在删除所述文件时,向元数据主服务器发送文件查询请求。
[0078] 步骤502,元数据主服务器在接收到所述用户终端发送的文件查询请求时,查询存 储所述文件的所述存储对象,并将所述存储对象的所述元数据信息发送给所述用户终端。
[0079] 步骤503,用户终端在接收到元数据主服务器发送的所述元数据信息时,将删除 请求发送给与所述对象位置信息相关联的对象服务器,其中删除请求包括所述对象标识信 肩、。
[0080] 步骤504,对象服务器接收到删除请求后,对与所述对象标识信息相对应的数据块 进行删除,并更新所述存储对象的头信息。
[0081] 步骤505,对象服务器向元数据主服务器发送数据删除成功响应。
[0082] 步骤506,元数据主服务器更新所述存储对象的元数据信息。
[0083] 图6为本发明用于管理文件的系统一个实施例的示意图。如图6所示,该系统包 括元数据主服务器601、对象服务器602和用户终端603。其中:
[0084] 用户终端603,用于在存储文件时,向元数据主服务器601发送文件创建请求;在 接收到元数据主服务器601发送的所述元数据信息时,将写入请求发送给与所述对象位置 信息相关联的对象服务器602,其中写入请求包括所述文件和所述对象标识信息。
[0085] 元数据主服务器601,用于在接收到所述用户终端603发送的文件创建请求时,从 对象池中选择用于存储所述文件的存储对象,并将所述存储对象的元数据信息发送给所述 用户终端603 ;其中所述元数据信息包括所述存储对象的对象标识信息和对象位置信息。
[0086] 对象服务器602,用于在接收到所述用户终端603发送的写入请求后,将所述文件 写入到与所述对象标识信息相对应的数据块中,并更新所述存储对象的头信息。
[0087] 优选的,存储对象的头信息包括存储对象标识、与存储对象标识相对应的空余数 据块、与存储对象标识相对应的已使用数据块比例、数据块与文件的对应关系。
[0088] 在一个实施例中,对象头信息如表1所示。
[0089] 基于本发明上述实施例提供的用于管理文件的系统,通过对文件和对象的关系进 行了重新定义,允许一个对象内存储一个或多个文件的数据块,一个文件也可跨多个对象 来存储文件数据块,解决了海量中小文件元数据服务器读写性能要求高的问题,方便用户 将对象存储应用到更加普遍的使用场景。
[0090] 为了便于说明,在图6中仅示出了一个用户终端和一个对象服务器。本领域技术 人员可以了解的是,在系统中可包括多个用户终端和多个对象服务器。
[0091] 优选的,对象服务器602还用于在将所述文件写入到与所述对象标识信息相对应 的数据块中,并更新所述存储对象的头信息后,向元数据主服务器601发送数据写入成功 响应,以便元数据主服务器更新所述存储对象的元数据信息。
[0092] 图7为本发明用于管理文件的系统另一实施例的示意图。与图6所示实施例相比, 在图7所示实施例中,系统还包括元数据查询服务器701。其中:
[0093] 用户终端603还用于在读取所述文件时,向元数据查询服务器701发送文件查询 请求,其中元数据查询服务器701与元数据主服务器601同步更新;在接收到元数据查询服 务器701发送的所述元数据信息时,将读取请求发送给与所述对象位置信息相关联的对象 服务器602,其中读取请求包括所述对象标识信息。
[0094] 元数据查询服务器701还用于在接收到所述用户终端603发送的文件查询请求 时,查询存储所述文件的所述存储对象,并将所述存储对象所述元数据信息发送给所述用 户终端603。
[0095] 对象服务器602还用于读取与所述对象标识信息相对应的数据块信息,并将读取 到的数据
当前第2页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1