分散hadoop集群的制作方法

文档序号:8516052阅读:303来源:国知局
分散hadoop集群的制作方法
【专利说明】
【背景技术】
[0001]除非在本文中另外说明,否则本文中描述的材料不是针对本申请中的权利要求的现有技术,并且不应认为包括在本部分中即为现有技术。
[0002]可以将计算机系统构造为分布式文件系统。一般来说,分布式文件系统可以使得能够从多个主机访问存储在这些分布式文件系统中的文件。主机可以被远程地定位,并且可以经由例如计算机网络与分布式文件系统通信地联接。对文件的访问可以使得客户端能够读取或修改存在于分布式文件系统中的文件和/或使得客户端能够向分布式文件系统添加新文件。分布式文件系统可以通过复制文件来提供一些优势(诸如可靠性)。通过具有文件的多个副本,即使分布式文件系统的某些部分被损坏,用户也可以访问这些文件。
[0003]计算机集群通常包括被构造为一起操作的一组连接节点。作为连接成集群的结果,可以将节点视为单个单元并且作为单个单元来操作。可以通过例如计算机网络来连接节点。
[0004]包括计算机集群的一种类型的分布式文件系统是Hadoop分布式文件系统。Hadoop分布式文件系统可以包括单个主节点(该单个主节点可以被称为名称节点)以及工作节点的集群。主节点可以操作以协调对文件的访问。工作节点可以存储文件和/或执行与访问和/或修改存储在Hadoop分布式文件系统中的文件相关的各种动作。

【发明内容】

[0005]本文中所描述的技术总体上涉及分布式文件系统中的数据管理。
[0006]在一些不例中,描述了一种分布式文件系统。该分布式文件系统可以包括多个数据节点以及导向器(director)单元。所述多个数据节点可以各自包括一个或更多个数据块。所述导向器单元可以包括以对等分布式架构来进行构造的多个主节点,并且可以与所述多个数据节点可操作地联接。所述多个主节点中的每一个主节点可以被构造为:接收与针对所述分布式文件系统来管理数据相关的任务;管理所述任务在所述多个主节点中的一个或更多个主节点当中的分发;以及向其它主节点中的每一个其它主节点传送任务状态以及所述分布式文件系统的至少一部分的状态。
[0007]在一些示例中,描述了一种管理分布式文件系统的方法。该方法可以包括以下操作:接收与针对所述分布式文件系统来管理数据相关的任务。所述方法还可以包括以下操作:从多个主节点中选择一个或更多个主节点来管理所述任务。所述多个主节点可以以对等分布式架构来进行构造,并且与多个数据节点可操作地联接。所述方法还可以包括以下操作:管理所述任务在所述多个数据节点中的一个或更多个数据节点当中的分发。可以由所选择的主节点来执行管理所述任务的所述分发的操作。此外,所述方法还可以包括以下操作:在所述多个主节点中的至少一些主节点当中传送任务状态以及所述分布式文件系统的至少一部分的状态。
[0008]前述概要仅是说明性的,并且不旨在以任何方式进行限制。除了上述说明性方面、实施方式和特征之外,另外的方面、实施方式和特征还将参照附图和以下详细描述而变得显而易见。
【附图说明】
[0009]在附图中:
[0010]图1是示例分布式文件系统的框图;
[0011]图2是管理分布式文件系统的示例方法的流程图;以及
[0012]图3是例示了根据本文中所描述的至少一些实施方式全部布置的、被布置为用于管理分布式文件系统的示例主节点的框图。
【具体实施方式】
[0013]在以下详细描述中,参照附图,附图形成所述详细描述的一部分。在附图中,除非上下文另外规定,否则相似的符号通常标识相似的组件。在详细的说明书、附图以及权利要求中描述的说明性实施方式不意指进行限制。在不脱离本文中所提出的主题的精神或范围的情况下,可以利用其它实施方式,并且可以做出其它改变。将容易理解的是,如在本文中总体上描述的以及在图中例示的,可以以各种不同的构造来布置、替换、组合、分离和设计本发明的方面,这些构造全部都在本文中明确地考虑到。
[0014]本文中描述的一些实施方式总体上涉及分布式文件系统。所述分布式文件系统可以包括与导向器单元可操作地联接的多个数据节点。所述多个数据节点可以各自包括一个或更多个数据块,在所述一个或更多个数据块上可以存储文件。导向器单元可以包括以对等分布式架构进行构造的多个主节点。通常,主节点管理对存储在数据块上的文件的访问。此外,主节点中的每一个主节点可以接收与针对分布式文件系统来管理数据相关的任务,可以管理任务在主节点当中的分发;并且可以向其它主节点中的每一个其它主节点传送任务状态以及分布式文件系统的至少一部分的状态。
[0015]图1是根据本文中所描述的至少一些实施方式布置的示例分布式文件系统100的框图。分布式文件系统100可以包括第一数据节点110A、第二数据节点IlOB和第三数据节点110C(总称为一个数据节点110或多个数据节点110),该第一数据节点110A、第二数据节点IlOB和第三数据节点IlOC还分别包括第一数据块112A、第二数据块112B和第三数据块112C (总称为一个数据块112或多个数据块112),在该第一数据块112A、第二数据块112B和第三数据块112C中可以分别存储第一文件114A、第二文件114B和第三文件114C (总称为一个文件114或多个文件114)。数据节点110中的每一个数据节点110可以包括诸如服务器这样的任何计算装置,在所述计算装置上可以存储、访问和/或修改文件114。数据块112可以包括数据节点110中的任一个数据节点110的任何部分。
[0016]如图1中所描述的,分布式文件系统100可以包括三个数据节点110,每个数据节点包括一个数据块112和一个文件114。然而,这种描述不意指进行限制。在另选的实施方式中,分布式文件系统100可以包括任何数目的数据节点110,所述数据节点110中的每一个数据节点110可以包括任何数目的数据块112和/或任何数目的文件114。图1中包括省略号是为了指示分布式文件系统100内的数据节点110的数目、数据块112的数目以及文件112的数目可以大于三个。另外,在一些实施方式中,数据块112的数目、数据节点110的数目以及文件114的数目可以改变。例如,当超过第一数目的数据节点110的初始存储容量时,可以向分布式文件系统100添加一个或更多个数据节点110。
[0017]分布式文件系统100还可以包括导向器单元102。通常,导向器单元102可以与客户端106进行通信。例如,导向器单元102可以从客户端106接收一个或更多个任务,并且可以向例如客户端106传送响应。另外,导向器单元102可以管理和/或访问文件114、属于文件114的信息、包括在文件114中的数据或者其一些组合。
[0018]导向器单元102可以包括第一主节点104A、第二主节点104B和第三主节点104C (总称为一个主节点104或多个主节点104)。图1表示导向器单元102的非限制性示例。导向器单元102可以包括任何数目的主节点104。另外,主节点104的数目可以在导向器单元102中改变。例如,当数据节点110的数目增加时,包括在分布式文件系统100中的主节点104的数目也可以增加。添加附加的主节点104的能力可以能够使得分布式文件系统100可扩展。
[0019]主节点104可以以对等分布式架构来进行构造。在对等分布式架构中,主节点104中的每一个主节点104可以允许在没有中央计算系统或管理计算系统的情况下对主节点文件和/或主节点外围设备(peripherals)的共享访问。另外,在对等分布式架构中,主节点104可以划分分布式文件系统100的任务或工作量,并且可以使用单个可兼容程序在它们当中进行通信。例如,在一些实施方式中,主节点104可以使用chord路由算法来进行通信。
[0020]另外,在一些实施方式中,可以根据主节点识别符来识别主节点104中的一个或更多个主节点104。主节点识别符可以是唯一标志(designat1n),可以从该唯一标志在由例如分布式文件系统100执行的一个或更多个操作或任务中选择或参考主节点104。可以根据函数来指派针对主节点104中的每一个主节点104的主节点识别符。例如,在一些实施方式中,可以使用分布式散列(hash)函数来将主节点识别符指派给主节点104。
[0021]在一些实施方式中,因为主节点104以对等分布式架构来进行构造,所以导向器单元102可以是单个主节点的虚拟化(S卩,导向器单元102可以用作关于客户端106的单个主节点和/或数据节点110),尽管包括多个主节点104。例如,数据节点110可以被编程或者以其它方式(otherwise)构造为以与如下方式相似的方式与导向器单元102进行通信:如何将具有单个主节点的另一分布式文件系统中的其它数据节点构造成与该单个主节点进行通信。
[0022]分布式文件系统100还可以包括数据库108。在一些实施方式中,数据库108可以与导向器单元102联接或者包括在导向器单元102中。数据库108可以被构造为存储分布式文件系统100中的一个或更多个文件114的文件元数据。另外或另选地,数据库108可以被构造为存储系统元数据。系统元数据可以指示将一个或更多个文件114存储在数据节点110中的哪个数据节点110中。
[0023]总体上来说,文件元数据可以包括与文件114中的一个或更多个文件114有关的信息。所述信息可以包括例如识别号、文件名、文件大小、文件类型、创建日期或创建人。可以根据文件元数据来识别文件114。
[0024]系统元数据可以包括指示分布式文件系统内的文件114的位置的信息。可以由主节点104中的一个或更多个主节点104来生成系统元数据。例如,来自客户端106的任务可以包括向第一数据节点IlOA写入第一文件114A。当主节点104执行该任务时,主节点104可以生成指示第一文件114A位于第一数据节点IlOA中的系统元数据。当另一任务包括访问第一文件114A的请求时,分布式文件系统100可以通过发送指示该第一文件114A的位置的系统元数据来提供对该第一文件114A的访问。
[0025]图1还描述了可以被构造成与分布式文件系统100进行通信的客户端106。客户端106通常是指可以与分布式文件系统100进行通信或交互的任何实体(诸如企业、个人、计算机系统等)。例如,客户端106可以向分布式文件系统100传送任务、数据、文件114、请求或者其一些组合。特别地,在所描述的实施方式中,客户端106可以与导向器单元102和/或数据节点100进行通信。在一些实施方式中,客户端106可以经由计算机网络(诸如局域网(LAN)、广域网(WAN)、因特网等)进行通信。
[0026]如提到的,客户端106可以发送待由分布式文件系统100执行的任务。在一些实施方式中,任务可以涉及管理包括在文件114中的一个或更多个文件114中的数据,或者可以涉及传送分布式文件系统100内的计算任务。例如,任务可以包括但不限于:向分布式文件系统100写入第一文件114A,访问分布式文件系统100中的第二文件114B,处理分布式文件系统100中的数据,改变分布式文件系统100中的第三文件114C的名称,或者删除分布式文件系统100中的第四文件(未示出)。在一些实施方式中,可以由分布式文件系统100同时执行从客户端106传送的两个或更多个任务或者以其它方式发起的两个或更多个任务,和/或两个或更多个任务的持续时间可以交叠。在导向器单元102中,主节点104中的每一个主节点104可以被构
当前第1页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1