一种分布式计算文件管理方法、系统及其装置的制作方法

文档序号:6574510阅读:169来源:国知局
专利名称:一种分布式计算文件管理方法、系统及其装置的制作方法
技术领域
本发明涉及网络技术领域,特别是涉及一种分布式计算文件管理方法、 系统及其装置。
背景技术
随着互联网技术的飞速发展,对于互联网上存在海量信息的处理就成为 了难题。如果要在单机上处理这些数据量非常庞大的信息,就需要有很强的 处理能力和端口能力,然而一方面这种高性能单机价格不菲,而且这种依靠 单机的处理模式也是有限度的。因此人们提出了分布式计算的概念,利用互 联网上有很多互连计算机的空闲资源来处理互联网上的海量信息。而在分布式计算中比较重要方面就是分布式存储,由于数据量的不断增加,单机已经不能满足存储的需要,需要专门的设备来存储数据;同时数据 的使用已经不仅仅局限于一个地方, 一种系统的应用,而是对多个用户,多 个系统的共享。因此分布式存储既能存储大容量的数据信息,又能满足对多 系统、多用户的实时共享。现有技术是将文件存储在专门的高速存储设备上,系统提供访问文件的 接口。用户通过这些系统提供的接口来访问文件,通过高速的、可靠的存储 设备来达到快速对文件的读、写操作。但是如果文件非常大,以及文件读写 非常频繁,效率就纟艮低。这是为了通用而牺牲了性能。现有技术还提出一种针对特定场合的分布式文件处理方法,将文件按照 块的方式保存在分布式节点机器上,通过一台主控机器保存文件元数据信息 (文件包含多少块,各个块分别分布在哪个节点上)来进行分布式计算文件 的存储。当用户读取文件时,先从主控机器上读取文件的块信息,然后根据 块信息从分布式节点中读取文件数据;用户写入文件时,先从主控机器上读 取文件信息,然后根据负载均衡,选择一个文件存放的节点;最后用户将文件数据写入到分布式节点中。但是这种方法只能允许用户顺序的读写,并且 用户还根据文件各个块的分布情况编写相应的分布式代码,对用户来说是十 分烦瑣的,因此增加了用户的工作量。发明内容本发明要解决的问题是提供一种分布式计算文件管理方法、系统及其装 置,降^f氐分布式计算的复杂度,减轻用户的工作量。为达到上述目的,本发明的实施例的技术方案提出一种分布式计算文件管理方法,包括以下步骤向主服务器的全局文件注册;当需要对所述全局 文件进行处理时,从所述主服务器调取所述全局文件的元数据;根据所述全其中,在所述将全局文件包含的文件从各个节点取回后,还包括以下步 骤将所述从各个分布式节点取回的文件合并。其中,所述全局文件的元数据具体包括全局文件包含的文件及所述文件与分布式节点的对应关系。其中,所述从主服务器调取全局文件的元数据具体包括以下步骤向所述主服务器发送读取所述全局文件的请求;所述服务器根据所述请求将所述 全局文件的元数据取出后下发。其中,所述向主服务器的全局文件注册,具体包括以下步骤各个分布 式节点将所述分布式节点上的本地文件向所述主服务器注册;所述主服务器 才艮据所述分布式节点上的本地文件注册信息4I"改所述全局文件元数据。本发明的实施例的技术方案还提出一种分布式计算文件管理系统,包括 客户端、主服务器和分布式节点,所述主服务器,用于对全局文件的元数据 进行管理,并在所述客户端需要对所述全局文件进行处理时,将所述全局文 件的元数据信息下发给所述客户端;所述分布式节点,用于将所述分布式节 点上的本地文件注册到所述主服务器的全局文件上,并在接收所述客户端请 求后将所述本地文件下发给所述客户端。其中,所述主服务器包括全局文件管理模块和全局文件下发模块,所述全局文件管理模块用于对全局文件的元数据进行管理;所述全局文件下发模 块用于在所述客户端需要对所述全局文件进行处理时,将所述全局文件管理 模块中的全局文件元数据信息下发给所述客户端其中,所述主服务器还包括注册接收模块,用于接收所述分布式节点向 所述主服务器发送的注册信息,并将所述注册信息传给所述全局文件管理模 块。其中,所述分布式节点包括注册上报模块和文件数据下发模块,所述注 册上报模块用于将所述分布式节点上的本地文件注册到所述主服务器的全局 文件上;所述文件数据下发模块用于在接收所述客户端请求后将所述本地文 件下发给所述客户端。其中,在所述向主服务器的全局文件注册之前,还包括以下步骤设定 各个分布式节点上的本地文件与全局文件的对应关系。本发明的实施例的技术方案还提出一种主服务器,包括全局文件管理模 块和全局文件下发模块,所述全局文件管理模块用于对全局文件的元数据进 行管理;所述全局文件下发模块用于在所述客户端需要对所述全局文件进行 处理时,将所述全局文件管理模块中的全局文件元数据信息下发给所述客户其中,主服务器还包括注册接收模块,用于接收所述分布式节点向所述 主服务器发送的注册信息,并将所述注册信息传给所述全局文件管理模块。本发明实施例的技术方案实现了用户只对全局文件进行操作,而不需要 编写分布式的相关代码,又可以利用多台机器的分布式来提高文件读取的性能的分布式计算文件管理方法。通过该管理方法,用户只需要知道一个全局 文件,而不需要知道这个全局文件有哪些文件构成,又保存在哪些分布式节 点上,对于用户来说,则降低了分布式计算的复杂度,减轻了用户的工作量。


图l为本发明实施例分布式计算文件管理系统结构图;图2为本发明实施例另一种分布式计算文件管理系统的结构图;图3为本发明实施例分布式计算文件管理方法的流程图;图4为本发明实施例以网站日志处理系统为例的分布式计算文件管理方法的流程图;图5为本发明实施例对分布式计算文件修改的流程图;图6为本发明实施例一种在分布式节点上对分布式计算文件修改的流程图。
具体实施方式
下面结合附图和实施例,对本发明的具体实施方式
作进一步详细描述 本发明核心思想在于通过定义一种全局文件,该全局文件由很多分布 在各个分布式节点上的本地文件构成。该全局文件的信息储存在主服务器 上的全局文件的元数据中,全局文件的信息包括全局文件的名称、全局 文件包含哪些文件,及包含的这些文件与各个分布式节点的对应关系。并 且该全局文件包含的文件是由分布式节点自动向主服务器注册形成的,用 户只知道该全局文件是用来干什么或处理什么数据的,而不用知道该全局 文件中包含哪些文件等细节问题。因此通过该全局文件可以隐藏分布式处 理的文件处理细节,并在读取文件时利用分布式系统的多个分布式节点并 行处理的优点提高访问速度。如图l所示,为本发明实施例分布式计算文件管理系统结构图, 该分布式计算文件管理系统包括主服务器1、分布式节点2和客户端3, 主服务器1用于对全局文件的元数据进行管理,并在客户端3需要对全局文 件进行处理时,将全局文件的元数据信息下发给客户端3;分布式节点2用于 将分布式节点2上的本地文件注册到主服务器1上的全局文件,并在接^)t^ 户端3请求后将分布式节点2上的本地文件下发给客户端3。针对上述分布式计算文件管理系统分布式文件管理过程如下,首先分布 式节点2调用注册接口,依据预先设定的对应关系通过TCP/IP协议将本地文 件注册到一个全局文件上,该预先设定的对应关系可以由用户根据需要设定, 并且分布式节点2上的本地文件可以对应多个全局文件;主服务器1管理各个分布式节点2上本地文件的注册信息,即全局文件的元数据,该元数据包 括全局文件包含哪些文件,这些文件与其存在的分布式节点2的对应关系; 当客户端3需要调取全局文件进行处理时,则调用读取文件接口向主服务器1 发送查询某个全局文件元数据的请求;主服务器1根据客户端3请求查询的 全局文件名称,通过TCP/IP协议将该全局文件的元数据下发给客户端3;客 户端3根据传回的全局文件的元数据信息从各个分布式节点2将该全局文件 包含的文件全部取回并合并,组合成一个全局文件。其中,主服务器1包括全局文件下发模块11、全局文件管理模块12和注 册接收模块13,全局文件管理模块12用于对全局文件的元数据进行管理;全 局文件下发模块11用于在客户端3需要对全局文件进行处理时,将全局文件 管理模块12中的全局文件元数据信息下发给客户端3;注册接收模块13,用 于接收分布式节点2向主服务器1发送的注册信息,并将该注册信息传给全 局文件管理模块12。其中,分布式节点2包括注册上才艮模块21和文件数据下发^^块22,注册 上报模块21用于将分布式节点2上的本地文件注册到主服务器1上的全局文 件;文件数据下发模块22用于在接收客户端3请求后将本地文件下发给客户 ^fii/ 3 。如图2所示,为本发明实施例另一种分布式计算文件管理系统的结构图, 该系统将上述实施例中客户端3也视为分布式节点2。该分布式计算文件管理系统包括主服务器1和分布式节点2,主服务器1 用于对全局文件的元数据进行管理,并当需要对全局文件进行处理时,将全 局文件的元数据信息下发给分布式节点2;分布式节点2用于将分布式节点2 上的本地文件注册到主服务器1上的全局文件;文件数据下发模块22用于在 接收其它分布式节点2请求后将本地文件下发。针对上述分布式计算文件管理系统分布式文件管理过程如下,首先分布 式节点2调用注册接口,依据预先设定的对应关系通过TCP/IP协议将本地文 件注册到一个全局文件上,该预先设定的对应关系可以由用户根据需要设定, 并且分布式节点2上的本地文件可以对应多个全局文件;主服务器1管理各个分布式节点2上本地文件的注册信息,即全局文件的元数据,该元数据包 括全局文件包含哪些文件,这些文件与其存在的分布式节点2的对应关系;当需要调取全局文件进行处理时,则调用读取文件接口向主服务器1发送奎 询某个全局文件元数据的请求;主服务器1根据请求查询的全局文件名称, 通过TCP/IP协议将该全局文件的元数据下发给分布式节点2;分布式节点2 根据传回的全局文件的元数据信息从各个分布式节点2将该全局文件包含的 文件全部取回并合并,组合成一个全局文件。其中,主服务器1包括全局文件下发模块11、全局文件管理模块12和注 册接收模块13,全局文件管理模块12用于对全局文件的元数据进行管理;全 局文件下发模块11用于在需要对全局文件进行处理时,将全局文件管理模块 12中的全局文件元数据信息下发;注册接收模块13,用于接收分布式节点2 向主服务器1发送的注册信息,并将该注册信息传给全局文件管理模块12。其中,分布式节点2包括注册上报模块21和文件数据下发模块22,注册 上报模块21用于将分布式节点2上的本地文件注册到主服务器1上的全局文 件;文件数据下发模块22用于在接收其它分布式节点2请求后将本地文件下 发。如图3所示,为本发明实施例分布式计算文件管理方法的流程图,包括 以下步骤步骤S301,向主服务器的全局文件注册;分布式节点调用注册接口,服务器根据注册信息修改全局文件的元数据;该预先设定的对应关系可以 由用户根据需要设定,并且分布式节点上的本地文件可以对应多个全局文 件;例如假设整个分布式系统有2个分布式节点, 一个主服务器。分布 式节点m上有本地文件al, a2共2个文件,分布式节点2有本地文件bl, b2 共2个文件;用户根据需要将分布式节点1上的本地文件al设为与全局文 件filel和全局文件file2对应;将分布式节点m上的本地文件a2设为与 全局文件fUel对应;将分布式节点n上的本地文件bl也设为与全局文件 filel对应,并将分布式节点n上的本地文件b2设为与全局文件file2对应,根据上述预设的对应关系,分布式节点m调用注册接口通过TCP/IP 协议,向主服务器发送注册指令,将al文件注册为全局文件filel,并将 al文件注册为全局文件file2,将a2文件注册为全局文件f ilel;同时, 分布式节点n调用注册接口通过TCP/IP协议,向主服务器发送注册指令, 将bl文件注册为全局文件f ilel,并将b2文件注册为全局文件f ile2。通 过上述注册过程,目前主服务器上存在2个全局文件分别为filel和 f ile2,其中全局文件f ilel包括分布式节点m上的al和a2以及分布式节 点2上的bl,全局文件file2包括分布式节点m上的al和分布式节点n 上的b2。主服务器管理各个分布式节点上本地文件的注册信息,即全局文件 的元数据,该元数据包括全局文件包含哪些文件,这些文件与其存在的分布 式节点的对应关系;对于上述实施例,全局文件filel的元数据包括al、 a2 和bl,以及al、 a2和bl与分布式节点的对应关系。步骤S302,当需要对全局文件进行处理时,从主服务器调取全局文件的 元数据。当客户端需要调取全局文件进行处理时,则调用读取文件接口,向 主服务器发送查询某个全局文件元数据的请求;主服务器根据请求查询的全 局文件名称,通过TCP/IP协议将该全局文件的元数据下发。其中,注册全局 文件的客户端和读取全局文件的客户端可以不是同一个客户端,并且客户 端在读取全局文件时并不知道全局文件包括什么,只有在主服务器将全局 文件的元数据下发后,客户端才根据全局文件的元数据知道全局文件包括 哪些文件。步骤S303,根据全局文件的元数据将全局文件包含的文件从各个分布式 节点取回;对于上述实施例,则将al、 a2从分布式节点m上取回,将bl 从分布式节点n上取回。如图4所示,为本发明实施例以网站日志处理系统为例的分布式计算 文件管理方法的流程图,包括以下步骤步骤S401,根据需要设定分布式节点上的本地文件与全局文件的对应 关系,例如对于网站日志处理系统则需要分布式节点 一上的本地文件 news, log (新闻日志),节点二上的本地文件club, log (倶乐部日志),节点三上的本i也文件bbs. log ( i仑坛日志),节点四上的本i也文件search, log (搜索日志),以及节点五上的本地文件blog. log (博客日志),这些各个 节点上的本地文件共同构成了该网站日志处理所需要的全局文件 cookie.log。步骤S402,依据上述步骤设定的对应关系各个分布式节点向主服务器 的全局文件注册,例如分布式节点一发现本地文件有news, log存在,则调 用注册接口并通过TCP/IP协议将本地文件news, log向主服务器注册,主 服务器根据上述步骤设定的对应关系将news, log注册到全局文件 cookie.log; 贝寸以》匕类4,分另'j将club, log 、 bbs. log、 search.log和 blog. log向主服务器注册,主服务器根据上述步骤设定的对应关系将上述 本地文件向全局文件cookie, log注册。这样对于使用者来说只要知道全局 文件cookie, log是处理网站日志的文件就可以了 ,而不需要知道全局文件 cookie, log究竟包括什么文件、以及这些文件与分布式节点的对应关系。步骤S403,如果用户在分布式系统客户端上需要对上述网络日志进行 统计处理,则调用读取文件接口,向主服务器发送查询全局文件cookie, log 元数据的请求;主服务器根据请求查询的全局文件cookie, log,通过TCP/IP 协议将该全局文件的元数据下发给客户端,即将全局文件cookie, log包含的 文件news, log、 club, log、 bbs. log、 search, log和blog. log, 以及这些 文件与分布式节点的对应关系下发给客户端。其中,注册全局文件的客户端和读取全局文件的客户端可以不是同一个客户端,并且客户端在读取全 局文件时并不知道全局文件包括什么,只有在主服务器将全局文件的元数步骤S404,客户端根据上述下发的全局文件的元数据信息,从其它节 点上将全局文件cookie, log包含的文件news, log、 club, log、 bbs. log、 search, log和blog. log取回后合并。例如通过TCP/IP协议从分布式节点 一上取回news, log(新闻日志),从节点二上取回club, log(倶乐部日志), 并以此类推。这样用户需要的处理网络日志的所有文件都集中到了用户所 使用的客户端上以供用户使用。如图5所示,为本发明实施例对分布式计算文件修改的流程图,以图4 实施例为例对全局文件cookie, log进4亍修改,包括以下步骤步骤S501,根据需要设定分布式节点上的本地文件与全局文件的对应 关系。步骤S502,依据上述步骤设定的对应关系,各个分布式节点向主服务 器的全局文件注册。分布式节点一发现本地文件有news, log存在,则调用 注册接口并通过TCP/IP协议将本地文件news, log向主服务器注册,主服 务器根据上述步骤设定的对应关系将news, log注册到全局文件 cookie.log;贝'J以jt匕类才,分另'J将club, log 、 bbs. log、 search.log和 blog. log向主服务器注册,主服务器根据上述步骤设定的对应关系将上述 本地文件向全局文件cookie, log注册。这样对于4吏用者来i兌只要知道全局 文件cookie, log是处理网站日志的文件就可以了 ,而不需要知道全局文件 cookie, log究竟包括什么文件、以及这些文件与分布式节点的对应关系。步骤S503,如果用户在分布式节点上需要对全局文件cookie, log进 行修改,则调用读取文件接口,向主服务器发送查询全局文件cookie, log 元数据的请求;主服务器根据请求查询的全局文件cookie, log,通过TCP/IP 协议将该全局文件的元数据下发给客户端,即将全局文件cookie, log包含的 文件news, log、 club, log、 bbs. log、 search, log和blog. log, 以及这些 文件与分布式节点的对应关系下发给客户端。步骤S504,分布式节点根据步骤S503下发的全局文件的元数据信息, 从其它节点上将全局文件cookie, log包含的文件news, log、 club, log、 bbs. log、 search, log和blog. log取回后合并。例如通过TCP/IP协议从 分布式节点一上取回news, log(新闻日志),从节点二上取回club, log(倶 乐部日志),并以此类推。步骤S505,在分布式节点上对全局文件cookie, log进行修改。 步骤S506,根据预先设定的对应关系,将全局文件cookie, log作为 该分布式节点上的本地文件向主服务器上的与cookie.log对应的全局文 件进行注册。如图6所示,为本发明实施例一种在分布式节点上对分布式计算文件 《奮改的流程图,以图4实施例为例对全局文件cookie, log中存在与分布式 节点一上的本地文件news, log (新闻日志)在分布式节点一上进行修改, 包括以下步骤步骤S601,根据需要设定分布式节点上的本地文件与全局文件的对应 关系。步骤S602,依据上述步骤设定的对应关系向主服务器的全局文件注 册。分布式节点一发现本地文件有news, log存在,则调用注册接口并通过 TCP/IP协议将本地文件news, log向主服务器注册,主服务器根据上述步 骤i殳定的对应关系将news, log注册到全局文件cookie, log;则以此类推 分另'J将club, log、 bbs. log、 search, log和blog. log向主月l务器;;主册,主 服务器根据上述步骤设定的对应关系将上述本地文件向全局文件 cookie, log注册。这样对于使用者来说只要知道全局文件cookie, log是 处理网站日志的文件就可以了 ,而不需要知道全局文件cookie, log究竟包 括什么文件、以及这些文件与分布式节点的对应关系。步骤S603,对分布式节点一上的news, log进行修改。 步骤S604,分布式节点一重新向主服务器的全局文件注册。 本发明实施例通过为用户设定的全局文件实现了用户只对全局文件进行 操作,而不需要编写分布式的相关代码,又可以利用多台机器的分布式来提高文件读取的性能的分布式计算文件管理方法。通过该管理方法,用户只需 要知道一个全局文件,而不需要知道这个全局文件有哪些文件构成,又保存 在哪些分布式节点上。对于用户来说,则降低了分布式计算的复杂度,减轻 了用户的工作量。以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的 普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进 和润饰,这些改进和润饰也应视为本发明的保护范围。
权利要求
1. 一种分布式计算文件管理方法,其特征在于,包括以下步骤向主服务器的全局文件注册;当需要对所述全局文件进行处理时,从所述主服务器调取所述全局文件的元数据;根据所述全局文件的元数据将所述全局文件包含的文件从各个分布式节点取回。
2、 如权利要求1所述分布式计算文件管理方法,其特征在于,在所述将 全局文件包含的文件从各个节点取回后,还包括以下步骤将所述从各个分布式节点取回的文件合并。
3、 如权利要求1所述分布式计算文件管理方法,其特征在于,所述全局 文件的元数据具体包括全局文件包含的文件及所述文件与分布式节点的对 应关系。
4、 如权利要求1所述分布式计算文件管理方法,其特征在于,所述从主 服务器调取全局文件的元数据具体包括以下步骤向所述主服务器发送读取所述全局文件的请求; 所述服务器根据所述请求将所述全局文件的元数据取出后下发。
5、 如权利要求1所述分布式计算文件管理方法,其特征在于,所述向主 服务器的全局文件注册,具体包括以下步骤各个分布式节点将所述分布式节点上的本地文件向所述主服务器注册; 所述主服务器根据所述分布式节点上的本地文件的注册信息修改所述全 局文件元数据。
6、 如权利要求l所述分布式计算文件管理方法,其特征在于,在所述向 主服务器的全局文件注册之前,还包括以下步骤设定各个分布式节点上的本地文件与全局文件的对应关系。
7、 一种分布式计算文件管理系统,包括客户端,其特征在于,还包括主服务器和分布式节点,所述主服务器,用于对全局文件的元数据进行管理,并在所迷客户端需要对所述全局文件进行处理时,将所述全局文件的元数据信息下发给所述客户端;所述分布式节点,用于将所述分布式节点上的本地文件注册到所述主服 务器的全局文件上,并在接收所述客户端请求后将所述本地文件下发给所述 客户端。
8、 如权利要求7所述分布式计算文件管理系统,其特征在于,所迷主服务器包括全局文件管理模块和全局文件下发模块,所述全局文件管理模块用于对全局文件的元数据进行管理; 所述全局文件下发模块用于在所述客户端需要对所述全局文件进行处理 时,将所述全局文件管理模块中的全局文件元数据信息下发给所述客户端
9、 如权利要求8所迷分布式计算文件管理系统,其特征在于,所述主服 务器还包括注册接收模块,用于接收所述分布式节点向所述主服务器发送的 注册信息,并将所述注册信息传给所述全局文件管理;f莫块。
10、 如权利要求7所述分布式计算文件管理系统,其特征在于,所述分 布式节点包括注册上报模块和文件数据下发模块,所述注册上才M^莫块用于将所述分布式节点上的本地文件注册到所述主服 务器的全局文件上;所述文件数据下发模块用于在接收所述客户端请求后将所述本地文件下 发给所述客户端。
11、 一种主服务器,其特征在于,包括全局文件管理模块和全局文件下 发模块,所述全局文件管理^^块用于对全局文件的元数据进行管理; 所述全局文件下发模块用于在所述客户端需要对所迷全局文件进行处理 时,将所述全局文件管理模块中的全局文件元数据信息下发给所述客户端
12、 如权利要求ll所述主服务器,其特征在于,还包括注册接收模块, 用于接收所述分布式节点向所述主服务器发送的注册信息,并将所述注册信 息传给所述全局文件管理模块。
全文摘要
本发明公开了一种分布式计算文件管理方法,包括以下步骤向主服务器的全局文件注册;当需要对所述全局文件进行处理时,从所述主服务器调取所述全局文件的元数据;根据所述全局文件的元数据将所述全局文件包含的文件从各个分布式节点取回。通过该管理方法,用户只需要知道一个全局文件,而不需要知道这个全局文件有哪些文件构成,又保存在哪些分布式节点上,降低了分布式计算的复杂度,减轻了用户的工作量。
文档编号G06F17/30GK101271458SQ20071008714
公开日2008年9月24日 申请日期2007年3月22日 优先权日2007年3月22日
发明者吴伟勋, 李江华, 松 陈 申请人:阿里巴巴公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1