分布式纠删编码虚拟文件系统技术方案

技术编号:17746121 阅读:59 留言:0更新日期:2018-04-18 19:35
多个计算设备经由网络彼此通信耦接,并且多个计算设备中的每一个包括多个存储设备中的一个或多个。多个故障弹性地址空间跨多个存储设备分布,使得多个故障弹性地址空间中的每一个跨多个存储设备。多个故障弹性地址空间中的每一个被组织为多个条。多个条中的每一个或多个条是多个前向纠错(FEC)保护域中的相应一个的一部分。多个条中的每一个可包括多个存储块。多个条中的特定条的每个块可存留在多个存储设备中的不同存储设备上。

【技术实现步骤摘要】
【国外来华专利技术】分布式纠删编码虚拟文件系统
技术介绍
通过参考附图比较常规方法与本公开的其余部分中所阐述的本方法和系统的某些方面,常规方法对数据存储的限制和缺点对本领域技术人员来说将是明显的。相关申请的交叉引用标题为“支持多层存储的虚拟文件系统”的美国专利申请第14/789,422通过引用将其全部合并于此。
技术实现思路
提供了用于分布式纠删编码虚拟文件系统的方法和系统,基本上如通过结合附图中的至少一个所示出和/或描述的,并如在权利要求中更完整的阐述的。附图说明图1示出了根据本公开的一些方面的虚拟文件系统的各种示例性配置。图2示出了根据本公开的一些方面的使用虚拟文件系统的计算节点的各种示例性配置。图3示出了根据本公开的一些方面的专用虚拟文件系统节点的各种示例性配置。图4示出了根据本公开的一些方面的专用存储节点的各种示例性配置。图5A示出了根据本公开的示例性实现的虚拟文件系统的另一表示。图5B示出了图5A的存储器的示例性实现。图5C示出了其中两个分布式故障弹性地址空间保存在多个固态存储盘上的示例性实现。图5D示出了根据本公开的示例性实现的示例性组块条。图6A示出了根据本公开的示例性实现的将示例性文件存储至虚拟文件系统。图6B示出合并数据以将数据提交至单个条。图7示出虚拟文件系统的用于管理到存储器的提交的组件。图8A是示出了准备用于提交的块条的示例性过程的流程图。图8B是示出了向已准备的块条提交数据的示例性过程的流程图。图9示出了根据本公开的示例性实现的可用于保护存储到虚拟文件系统的非易失性存储器的数据的前向纠错方案。图10示出了根据本公开的示例性实现的可用于保护存储到虚拟文件系统的非易失性存储器的数据的前向纠错方案。图11示出了根据本公开的示例性实现的可用于保护存储到虚拟文件系统的非易失性存储器的数据的前向纠错方案。图12A和图12B示出了根据本公开的示例性实施方式的虚拟文件系统可使用的高效提交操作。具体实施方式图1示出了根据本公开的一些方面的虚拟文件系统的各种示例性配置。图1中示出的是局域网络(LAN)102包括一个或多个虚拟文件系统(VFS)节点120(由从1至J的整数索引,j≥1),并且可选地包括(由虚线表示):一个或多个专用存储节点106(由从1至M的整数索引,M≥1),一个或多个计算节点104(由从1至N的整数索引,N≥1),和/或将LAN102连接至远程网络118的边缘路由器。远程网络118可选地包括一个或多个存储服务114(由从1至K的整数索引,K≥1),和/或一个或多个专用存储节点115(由从1至L的整数索引,L≥1)。每个计算节点104n(n是整数,其中1≤n≤N)是包括电路的联网计算设备(例如,服务器、个人电脑等),该电路用于运行各种客户端进程(直接在设备104n的操作系统上和/或在设备104n上运行的一个或多个虚拟机/容器中)并且用于接口连接一个或多个VFS节点120。如在本公开中所使用的,“客户端进程”是在执行其主要功能的过程中从存储器读取数据和/或将数据写入存储器的进程,但是其主要功能不是存储器相关的(即,进程仅涉及其数据得到可靠的存储并且在必要时可检索,而不涉及数据存储在何处、何时存储及如何存储)。引起这种进程的示例性应用包括:电子邮件服务器应用、网络服务器应用、办公生产力应用、客户关系管理(CRM)应用、及企业资源计划(ERP)应用,仅举几个例子。下文参考图2描述计算节点104n的示例性配置。每个VFS节点120j(j是整数,其中1≤j≤J)是包括电路的联网计算设备(例如,服务器、个人电脑等),该电路用于运行VFS进程,以及可选地,客户端进程(直接在设备104n的操作系统上和/或在设备104n上运行的一个或多个虚拟机中)。如本公开中使用的,“VFS进程”是执行本公开的下文中描述的VFS驱动器、VFS前端、VFS后端、及VFS内存控制器的一种或多种的进程。下文参考图3描述VFS节点120j的示例性配置。因此,在示例性实现中,客户端进程和VFS进程可以共享VFS节点120j的资源(例如,处理资源和存储资源)。虚拟文件系统的进程可以被配置为需要相对少量的资源以使对客户端应用性能的影响最小化。从客户端进程的角度来看,与虚拟文件系统的接口独立于其上运行VFS进程的特定物理机。每个现场专用存储节点106m(m为整数,其中1≤m≤M)是联网计算设备并且包括一个或多个存储设备和使存储设备经由LAN102可访问的相关联的电路。下文参考图4描述专用存储节点106m的示例性配置。每个存储服务114k(k是整数,其中1≤k≤K)可以是基于云的服务,诸如亚马逊S3、微软Azure、谷歌Cloud、Rackspace、亚马逊Glacier、及谷歌Nearline。每个远程专用存储节点115l(l是整数,其中1≤l≤L)可以与现场专用存储节点106相似或者与其相同。在示例性实现中,远程专用存储节点115l可以不同的格式存储数据和/或使用与现场专用存储节点106不同的协议访问(例如,HTTP,而不是基于以太网的协议或者基于RDMA的协议)。图2示出了根据本公开的一些方面的使用虚拟文件系统的计算节点的各种示例性配置。示例性计算节点104n包括硬件202,该硬件202反过来包括处理器芯片组204和网络适配器208。处理器芯片组204可包括例如基于x86的芯片组,该基于x86的芯片组包括单核或多核处理器片上系统、一个或多个RAMIC、及平台控制器集线器IC。芯片组204可包括用于连接至硬件202的其他组件(例如,PCIe、USB、SATA和/或其他)的一个或多个各种类型的总线适配器。网络适配器208例如可以包括用于接口连接至基于以太网的网络和/或基于RDMA的网络的电路。在示例性实现中,网络适配器208可包括处理器(例如,基于ARM的处理器)并且一个或多个示出的软件组件可在该处理器上运行。网络适配器208经由(有线、无线、或者光学)链路226与LAN100的其他构件接口。在示例性实现中,网络适配器208可以集成有芯片组204。硬件202上运行的软件至少包括:操作系统和/或管理程序212、一个或多个客户端进程218(由从1至Q的整数索引,Q≥1)和VFS驱动器221和/或VFS前端220的一个或多个实例。在计算节点104n上可选地运行的额外的软件包括:一个或多个虚拟机(VM)和/或容器216(由从1至R的整数索引,R≥1)。每个客户端进程218q(q是整数,其中1≤q≤Q)可直接在操作系统212上运行或者可在OS和/或管理程序212服务的虚拟机和/或容器216r(r是整数,其中1≤r≤R)中运行。每个客户端进程218是在执行其主要功能的过程中从存储器读取数据和/或将数据写入存储器的进程,但是其主要功能不是存储器相关的(即,进程仅涉及其数据得到可靠的存储并且在必要时可检索,而不涉及数据存储在何处、何时存储及如何存储)。引起这种进程的示例性应用包括:电子邮件服务器应用、网络服务器应用、办公生产力应用、客户关系管理(CRM)应用、及企业资源计划(ERP)应用,仅举几个例子。每个VFS前端实例220s(S是整数,其中如果在计算节点104n上存在至少一个前端实例,1≤s≤S)向适当的VFS后端实例(在VFS节点上运行)提供用于路由文件本文档来自技高网...
分布式纠删编码虚拟文件系统

【技术保护点】
一种系统,包括:多个计算设备,经由网络彼此通信耦接,其中:所述多个计算设备中的每一个包括多个存储设备中的一个或多个;多个故障弹性地址空间跨所述多个存储设备分布,使得所述多个故障弹性地址空间中的每一个跨多个所述存储设备;所述多个故障弹性地址空间中的每一个被组织为多个条;并且所述多个条中的每一个或若干条是多个前向纠错(FEC)保护域中的相应一个的一部分。

【技术特征摘要】
【国外来华专利技术】2015.08.22 US 14/833,0531.一种系统,包括:多个计算设备,经由网络彼此通信耦接,其中:所述多个计算设备中的每一个包括多个存储设备中的一个或多个;多个故障弹性地址空间跨所述多个存储设备分布,使得所述多个故障弹性地址空间中的每一个跨多个所述存储设备;所述多个故障弹性地址空间中的每一个被组织为多个条;并且所述多个条中的每一个或若干条是多个前向纠错(FEC)保护域中的相应一个的一部分。2.根据权利要求1所述的系统,其中:所述多个条中的每一个包括多个存储块;所述多个条中的特定条中的每个块存留在所述多个存储设备中的不同存储设备上。3.根据权利要求2所述的系统,其中:所述多个存储块的第一部分用于存储数据数字;所述多个存储块的第二部分用于存储至少部分地基于所述数据数字计算的保护数字;第一数量对应于所述多个存储块中的块的数量;第二数量对应于多个故障域中的故障域的数量;并且所述第一数量小于所述第二数量。4.根据权利要求1所述的系统,其中,所述多个计算设备能够操作为对所述多个条排名,其中,所述排名用于选择所述多个条中的哪个用于向所述多个故障弹性地址空间中的特定一个的下一提交。5.根据权利要求4所述的系统,其中,所述排名基于所述多个条中的每一个中有多少受保护的和/或未保护的存储块。6.根据权利要求5所述的系统,其中,对于所述多个条中的任一特定条,所述排名基于具有所述多个条中的所述任一特定条的所述多个存储设备上存储的位图。7.根据权利要求4所述的系统,其中,所述排名基于所述多个条中的每一个中有多少块目前存储数据。8.根据权利要求4所述的系统,其中,所述排名基于提交至所述多个条中的每一个的读取和写入总开销。9.根据权利要求所述的系统,其中:在任何给定时间,所述故障弹性地址空间中的每一个仅由所述多个计算设备中的一个拥有;并且所述多个故障弹性地址空间中的每一个能够仅由其拥有者读取和写入。10.根据权利要求9所述的系统,其中,所述计算设备中的每一个拥有多个所述故障弹性地址空间。11.根据权利要求1所述的系统,其中,所述多个存储设备被组织到多个故障域中。12.根据权利要求11所述的系统,其中,所述故障弹性地址空间中的每一个跨所述多个故障域中的全部故障域,使得一旦所述多个故障域中的任一特定故障域故障,在所述多个故障域的其他故障域中的每一个中分配用于重建丢失数据的工作负荷。13.根据权利要求11所述的系统,其中,所述多个条中的每一个跨所述多个故障域。14.根据权利要求13所述的系统,其中,所述多个条跨所述多个故障域分布,使得如果所述多个故障域中的两个或更多个同时故障,所述多个条中的任一特定条的两个或更多个块驻留在所述多个故障域中的出故障的两个故障域上的几率指数级地小于所述多个条中的任一特定条的仅一个块驻留在所述多个故障域中的出故障的两个故障域上的几率。15.根据权利要求11所述的系统,其中,在所述多个条中的若干条具有一个或多个故障块的实例中,所述多个计算设备能够操作为以所述多个条中的所述若干条中的每一个中的故障块的数量的降序优先处理所述多个条中的所述若干条的重建。16.根据权利要求15所述的系统,...

【专利技术属性】
技术研发人员:本·达彦·马奥尔帕尔蒙·奥姆里兹维贝·利兰
申请(专利权)人:维卡艾欧有限公司
类型:发明
国别省市:以色列,IL

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

1