当前位置: 首页 > 专利查询>英特尔公司专利>正文

使能HADOOP分布式文件系统的扩展的可扩展基于树的索引框架技术方案

技术编号:21605335 阅读:57 留言:0更新日期:2019-07-13 18:09
公开了可支持用于诸如Apache™ Hadoop®的分布式数据存储设备和计算系统的数据管理的文件系统。文件系统可包括可扩展的基于树的索引框架,其使能文件系统的方便扩展。作为非限制性示例,本文中公开的文件系统可使能十亿或更多文件的索引、存储和管理,这是当前可用文件系统的容量的1000倍。文件系统包括根索引系统和以树数据结构组织的多个叶索引系统。叶索引系统提供心跳信息到根索引系统,以使得根索引系统能保持文件参考和叶索引参考的轻量和可搜索索引。叶索引的每个保持文件参考到存储文件的数据存储装置内的文件块地址的索引或映射。

An Extensible Tree-based Index Framework Enabling HADOOP Distributed File System Extension

【技术实现步骤摘要】
使能HADOOP分布式文件系统的扩展的可扩展基于树的索引框架
本公开涉及用于改进分布式处理系统的文件系统容量的技术。
技术介绍
执行“大数据”操作的技术有规律地使用Apache™Hadoop®分布式文件系统平台或其它分布式文件系统来管理其数据。分布式文件系统在大数据操作中是有用的,因为它们使能从多种多样的应用和客户端装置对数据的远程访问和共享访问,并且能够处理大量的数据。在诸如无人驾驶车的新兴自动化领域中,需要管理比以前更多的数据。然而,传统的数据管理系统在能够被管理的文件的数量方面受现有架构约束。此类约束当前限制了技术发展。附图说明从与要求保护主题一致的实施例的下面详细描述中,将明白要求保护的主题的特征和优点,该描述应参照附图来考虑,其中:图1图示了与本公开的若干实施例一致、具有可支持分布式处理系统的文件系统框架的数据管理系统的功能框图;图2图示了与本公开的若干实施例一致、具有可支持分布式处理系统的文件系统框架的数据管理系统的功能框图;图3是与本公开的若干实施例一致、用于具有可支持分布式处理系统的文件系统框架的数据管理系统的操作的过程的流程图;图4是与本公开的若干实施例一致、用于提供使能文件系统的扩展的基于树的索引框架的过程的流程图。虽然以下详细描述将参照说明性实施例继续,但其许多备选、修改和变化将对本领域技术人员显而易见。具体实施方式系统、设备和/或方法提供可支持用于诸如Apache™Hadoop®的分布式数据处理系统的数据管理的文件系统。文件系统可包括可扩展的基于树的索引框架,其使能文件系统的方便扩展。作为非限制性示例,本文中公开的文件系统可使能十亿或更多文件的索引、存储和管理,这是当前可用文件系统的容量的1000倍。文件系统包括根索引系统和以树数据结构组织的多个叶索引系统。叶索引系统提供心跳信息到根索引系统,以使得根索引系统能保持文件参考和叶索引参考的轻量和可搜索索引。每个叶索引保持文件参考到存储文件的数据存储装置内文件块地址的索引或映射。就Apache™Hadoop®文件系统而言,根索引系统可以是根名称节点,叶索引系统可以是叶名称节点,以及数据存储装置可以是数据节点。公开的文件系统可提供高于现有文件系统解决方案的优点,因为公开的文件系统提供了文件系统的改进可伸缩性、容量、速度和/或可使用性。根索引系统接收来自客户端装置的读取文件、写入文件、更新、删除或以其它方式访问数据存储装置的访问请求。根索引系统确定哪个(哪些)叶索引系统管理访问请求的文件或目录,并且通知客户端装置与哪些叶索引系统通信以安排访问请求。客户端装置从(一个或多个)相关叶索引系统请求用于访问请求的文件或目录的数据存储装置信息(例如,数据块地址)。根据一个实施例,相关叶索引系统为客户端装置提供数据块地址、数据存储装置地址和/或其它文件元数据,以支持读取请求、写入请求或其它访问请求。根据各种实施例,客户端装置使用数据块地址、数据存储装置地址和/或其它文件元数据以直接与一个或多个数据存储装置通信,以读取文件、写入文件和/或以其它方式对数据存储装置执行访问操作。如在本文中使用的,根名称节点(“RNN”)可指生成、保持和更新在文件系统中所有文件的目录树,并且跟踪哪个叶名称节点管理每个文件的系统组件或模块。根名称节点不存储这些文件的数据,并且不跟踪数据节点内文件的实际位置,并且转而存储文件(例如,文件参考)的指针或其它元数据,以及存储关于哪个叶名称节点与每个文件关联或管理每个文件的信息(例如,叶名称节点参考)。如在本文中使用的,叶名称节点(“LNN”)可指生成、保持和更新(例如,所有或部分)在文件系统中的文件的目录树,并且跟踪文件数据被存储在何处(例如,哪个数据节点和/或一个或多个数据节点中的哪些块文件)的系统组件或模块。叶名称节点不存储这些文件的数据,并且转而存储带有数据节点信息(例如,数据节点名称、数据节点地址、块文件地址)的文件的指针或其它元数据(例如,文件参考)。如在本文中使用的,数据节点指存储用于由根名称节点和叶名称节点参考的文件的数据的一个或多个数据存储装置。如在本文中使用的,数据块或块指填满已被拆分成相等大小的数据的组块(chunk)的文件或文件的部分的原始存储卷。数据块或块用于支持基于块或块级存储(同基于文件的存储相比)的操作。图1图示了与本公开的若干实施例一致、具有可支持分布式数据处理系统的文件系统框架的数据管理系统100的功能框图。根据一个实施例,数据管理系统100包括通过一个或多个网络103通信地耦合到文件系统104的客户端装置102(单独地,客户端装置102a到客户端装置102n)。客户端装置102和文件系统104可包括但不限于:移动电话,包括但不限于智能电话(例如,iPhone®、基于Android®的电话、Blackberry®、基于Symbian®的电话、基于Palm®的电话等);可佩戴装置(例如,可佩戴计算机、“智能”手表、智能眼镜、智能衣服等)和/或系统;物联网(IoT)联网的装置,包括但不限于传感器系统(例如,环境、位置、运动等)和/或传感器网络(有线和/或无线);计算系统(例如,服务器、工作站计算机、台式计算机、膝上型计算机、平板计算机(例如,iPad®、GalaxyTab®等)、超便携式计算机、超移动计算机、笔记本计算机和/或小型笔记本计算机);等等。根据一个实施例,文件系统104包括根索引系统108和多个叶索引系统110(单独地,叶索引系统110a到叶索引系统110m)以提供管理对数据存储112(单独地,数据存储112a到数据存储112nn)中存储的数据的访问的可扩展文件系统框架。根据一个实施例,文件系统104可对基于存储器的系统或基于文件的系统是不可知论的。根据一个实施例,文件系统104可使用块级存储技术来存储、保持、写入和/或访问在数据存储112中的文件。根据各种实施例,根索引系统108和叶索引系统110可在裸金属节点、虚拟机或容器上单独或集体地被启动。虚拟机和容器可以是云解决方案。在一个实施例中,根索引系统108和叶索引系统110可全部在例如用于测试和/或开发目的的单个物理计算系统或节点上。而且甚至一体化在用于测试和开发情形的单个物理节点上。根索引系统108包括根索引逻辑113和根目录114。根据一个实施例,根索引逻辑113包括被存储在存储器电路106中并且由处理器电路105执行以生成和/或更新根目录114的指令。根索引系统108可使用通信电路107,来通过一个或多个网络103与多个叶系统110和/或与客户端装置102通信。根据一个实施例,生成和/或更新根目录114包括接收来自叶索引系统110的心跳信息115。根据一个实施例,心跳信息115包括有关叶索引系统110的信息,诸如但不限于由索引系统110的每个保持的在线/离线状态、可用容量和文件参考和/或块(或存储器)参考。根据一个实施例,通过从叶索引系统110收到的文件参考(例如,通过心跳信息115),根索引逻辑110生成和填充根目录114。根据一个实施例,如果来自多个叶索引系统110的心跳信息115提供冲突信息(例如,带有相同路径和相同名称的2个不同文件),则根索引系统108可配置成生成到叶索引系统110和/或到用户或管理员的本文档来自技高网...

【技术保护点】
1. 一种文件系统,包括:保持根索引的根索引逻辑,所述根索引将多个文件参考关联到多个叶索引参考,其中所述多个文件参考表示多个文件,并且所述多个叶索引参考表示多个叶索引,其中所述根索引和所述多个叶索引是树数据结构,其中所述根索引是所述树数据结构中的父节点,并且所述多个叶索引的每个是所述树数据结构中的子节点;以及保持所述多个叶索引之一的叶索引逻辑,所述多个叶索引的所述之一将所述多个文件参考的至少一个关联到一个或多个数据存储装置中的至少一个块位置,所述叶索引逻辑要响应来自一个或多个客户端装置的、访问与所述多个文件参考的所述至少一个关联的数据文件的一个或多个请求,将所述至少一个块位置传递到所述一个或多个客户端装置。

【技术特征摘要】
2017.12.19 US 15/8473361.一种文件系统,包括:保持根索引的根索引逻辑,所述根索引将多个文件参考关联到多个叶索引参考,其中所述多个文件参考表示多个文件,并且所述多个叶索引参考表示多个叶索引,其中所述根索引和所述多个叶索引是树数据结构,其中所述根索引是所述树数据结构中的父节点,并且所述多个叶索引的每个是所述树数据结构中的子节点;以及保持所述多个叶索引之一的叶索引逻辑,所述多个叶索引的所述之一将所述多个文件参考的至少一个关联到一个或多个数据存储装置中的至少一个块位置,所述叶索引逻辑要响应来自一个或多个客户端装置的、访问与所述多个文件参考的所述至少一个关联的数据文件的一个或多个请求,将所述至少一个块位置传递到所述一个或多个客户端装置。2.如权利要求1所述的文件系统,其中所述根索引逻辑要:从所述一个或多个客户端装置接收对所述一个或多个数据存储装置的访问请求;确定所述多个叶索引的那些管理与所述访问请求关联的所述一个或多个存储装置;以及响应所述接入请求,向所述一个或多个客户端装置提供用于管理与所述访问请求关联的所述一个或多个存储装置的所述多个叶索引的地址信息。3.如权利要求2所述的文件系统,其中所述叶索引逻辑要:从所述一个或多个客户端装置接收对所述一个或多个数据存储装置的访问请求;确定一个或多个块文件的哪个响应所述访问请求;以及响应所述接入请求,向所述一个或多个客户端装置提供用于具有响应所述访问请求的所述一个或多个块文件的所述一个或多个存储装置的地址信息。4.如权利要求1所述的文件系统,其中所述根索引逻辑要:从所述一个或多个客户端装置接收对所述多个文件的至少一个的访问请求;确定所述多个叶索引的哪些管理所述访问请求的所述多个文件的所述至少一个;以及响应所述接入请求,向所述一个或多个客户端装置提供用于管理所述访问请求的所述多个文件的所述至少一个的所述多个叶索引的地址信息。5.如权利要求4所述的文件系统,其中所述叶索引逻辑要:从所述一个或多个客户端装置接收对所述多个文件的所述至少一个的访问请求;确定所述一个或多个存储装置的哪个包括存储所述多个文件的所述至少一个的块文件;以及向所述一个或多个客户端装置提供用于具有存储所述多个文件的所述至少一个的所述块文件的所述一个或多个存储装置的地址信息。6.如权利要求1所述的文件系统,其中所述根索引要将所述多个文件参考关联到所述多个叶索引参考包括:所述根索引要将所述叶索引参考的每个映射到所述多个文件参考的子集。7.如权利要求1所述的文件系统,其中所述根索引保持所述多个文件参考的目录,所述目录包括根节点和多个子目录子节点,其中包括所述多个文件参考的至少一个的所述多个子目录子节点的每个被指派到所述多个叶索引之一,并且包括所述多个叶索引参考之一。8.如权利要求1所述的文件系统,其中所述根索引是在Apache™Hadoop®文件系统内可操作的根名称节点。9.如权利要求1所述的文件系统,其中所述多个叶索引的每个是在Apache™Hadoop®文件系统内可操作的叶名称节点。10.如权利要求1所述的文件系统,其中所述多个叶索引的每个由多个叶索引系统之一托管,所述叶索引系统各自包括叶节点逻辑以保持在所述多个文件参考的子集与所述一个或多个数据存储装置内的至少一个块位置之间的关联。11.如权利要求1所述的文件系统,其中所述根索引逻辑在所述文件系统的操作期间要被复制到随机存取存储器。12.如权利要求1所述的文件系统,其中所述多个叶索引的每个由多个叶索引系统之一托管,所述叶索引系统各自包括叶节点逻辑以将心跳信息传送到所述根索引逻辑,其中所述根索引逻辑要至少部分基于所述心跳信息来更新所述根索引。13.如权利要求1所述的文件系统...

【专利技术属性】
技术研发人员:UMR甘古马拉M班达鲁R拉达克里希南波蒂D卡瓦利N拉伊
申请(专利权)人:英特尔公司
类型:发明
国别省市:美国,US

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1