用于加速存储介质访问的方法及其设备技术

技术编号:26180955 阅读:31 留言:0更新日期:2020-10-31 14:44
加速数据访问请求的方法、非暂态计算机可读介质以及计算设备。利用本技术,多个对象的层次结构被插入到位置数据库中。多个对象的至少一个子集中的每个对象包括针对存储在文件系统中的数据的物理存储位置。多个对象中的一个或多个对象包括对象版本号和多个对象中的父对象的父版本号。当无效事件已经发生在文件系统中时做出确定。无效事件与多个对象中的一个对象相关联。当确定指示无效事件已经发生在文件系统时,针对多个对象中的一个对象的对象版本号被修改以使对象的子集中的一个或多个对象无效。

The method and device for accelerating access to storage media

【技术实现步骤摘要】
【国外来华专利技术】用于加速存储介质访问的方法及其设备
本技术涉及管理数据存储网络并且更特别地涉及用于加速存储介质访问的方法和设备。
技术介绍
存储网络中的存储服务器一般跨多个数据存储设备存储数据,这些数据存储设备一起构成数据容器,在本文中也称为聚集。为了存储数据,例如,存储服务器可以采用各种形式的本地数据存储设备,诸如硬盘驱动器、固态硬盘、闪存盘和/或磁带设备,以及远程数据存储设备,诸如云存储设备或储存库。由存储控制器执行的文件系统软件一般负责定义存储网络中的数据存储设备上的存储空间的总体逻辑布置。因此,文件系统软件代表客户端设备执行布局管理和服务输入/输出(I/O)操作。特别地,文件系统软件可以组织聚集内的卷并且管理读写操作以及其他类型的组织结构和操作。利用数据存储网络的客户端经历关于数据访问的延时,包括网络延时、文件系统软件延时、以及数据存储设备的介质延时。文件系统软件尤其会引起上下文切换和消息传递开销,例如,其可以显著地延迟对数据的访问,包括针对不影响文件系统数据或布局的读取和其他类型的访问请求。附图说明图1是具有包括节点计算设备在内的示例性数据存储装置的网络环境的框图;图2是图1所示的节点计算设备的一个示例的框图;图3是示出用于加速存储介质访问的方法的示例性流程图;图4是用于建立和管理位置数据库的示例性方法的流程图;图5是示出存储在示例性位置数据库中的分层对象和版本号的框图;以及图6是使用位置数据库来加速读取请求的服务的示例性方法的流程图。具体实施方式在图1中示出了可以实施本文描述和图示的技术的一个或多个方面的集群网络环境100。集群网络环境100包括数据存储装置102(1)-102(n),其中数据存储装置102(1)-102(n)通过集群结构104被耦合,以促进数据存储装置102(1)-102(n)(以及其中的例如一个或多个模块、组件等,诸如节点计算设备106(1)-106(n))之间的通信,在其他示例的集群网络环境100中也可以包括任何数量的其他元件或组件。本技术提供许多优点,包括促进加速的存储介质访问以减少服务特定数据存储操作(诸如读取请求)中的延时的方法、非暂态计算机可读介质以及计算设备。在该示例中,节点计算设备106(1)-106(n)可以是提供客户端设备108(1)-108(n)的主要或本地存储控制器或次要或远程存储控制器,可以访问存储在数据存储设备110(1)-110(n)内的数据。本文描述和图示的示例的数据存储装置102(1)-102(n)和/或节点计算设备106(1)-106(n)不限于任何特定地理区域,可以被本地和/或远程地集群,或者在其他示例中不被集群。因此,在一个示例中,数据存储装置102(1)-102(n)和/或节点计算设备106(1)-106(n)可以被分布在位于多个地理位置中的多个存储系统上;在另一示例中,集群网络可以包括驻存于相同地理位置中(例如,在单个现场机架中)的数据存储装置102(1)-102(n)和/或节点计算设备106(1)-106(n)。在图示的示例中,客户端设备108(1)-108(n)中的一个或多个通过网络连接112(1)-112(n)被耦合到相应的数据存储装置102(1)-102(n),客户端设备108(1)-108(n)可以是例如个人计算机(PC)、用于存储的计算设备(例如,存储服务器)、或者其他计算机或外围设备。网络连接112(1)-112(n)可以包括局域网(LAN)或者广域网(WAN),例如,其利用网络附接存储(NAS)协议(诸如用于交换数据包的通用互联网文件系统(CTFS)协议或网络文件系统(NFS)协议)、存储区域网络(SAN)协议(诸如小型计算机系统接口(SCSI)或光纤通道协议(FCP))和/或对象协议(诸如简单存储服务(S3))。说明性地,客户端设备108(1)-108(n)可以是运行应用的通用计算机,可以使用客户端/服务器模型与数据存储装置102(1)-102(n)交互以交换信息。即,客户端设备108(1)-108(n)可以请求来自数据存储装置102(1)-102(n)的数据(例如,被网络存储控制器管理的一个数据存储设备110(1)-110(n)上的数据,该网络存储控制器被配置为处理由客户端设备108(1)-108(n)发出的I/O命令),并且数据存储装置102(1)-102(n)可以经由网络连接112(1)-112(n)将请求的结果返回到客户端设备108(1)-108(n)。例如,数据存储装置102(1)-102(n)的节点计算设备106(1)-106(n)可以包括网络或者被相互连接为集群用以将数据存储和管理服务提供给诸如具有远程位置、云存储(例如,存储端点可以被存储在数据云内)等的企业的主机节点。例如,这样的节点计算设备106(1)-106(n)可以在连接点、再分配点或通信端点处被附接到结构104。节点计算设备106(1)-106(n)中的一个或多个可以能够通过网络通信通道发送、接收和/或转发信息,并且可以包括满足这些准则的任何或全部的任意类型的设备。在示例中,节点计算设备106(1)和106(n)可以根据灾难恢复配置而被配置,由此,当在灾难存储站点处发生灾难的情况下,幸存节点提供对存储设备110(1)-110(n)的切换访问(例如,当在第二存储站点处发生灾难的情况下,节点计算设备106(1)为客户端设备112(n)提供对存储设备110(n)的切换数据访问)。在其他示例中,节点计算设备106(n)可以根据归档配置而被配置,和/或节点计算设备106(1)-106(n)可以基于另一类型的复制布置而被配置(例如,用以促进负载共享)。附加地,尽管两个节点计算设备被图示在图1中,但是在其他示例中的其他类型的配置或布置中可以包括任何数量的节点计算设备或数据存储装置。如在集群网络环境100中示出的,节点计算设备106(1)-106(n)可以包括可以协同用以提供分布式存储架构的各种功能组件。例如,节点计算设备106(1)-106(n)可以包括网络模块114(1)-114(n)和磁盘模块116(1)-116(n)。网络模块114(1)-114(n)可以被配置为允许节点计算设备106(1)-106(n)(例如,网络存储控制器)通过存储网络连接112(1)-112(n)与客户端设备108(1)-108(n)连接,例如,允许客户端设备108(1)-108(n)访问集群网络环境100中存储的数据。另外,网络模块114(1)-114(n)可以通过集群结构104提供与一个或多个其他组件的连接。例如,利用通过节点计算设备106(n)的磁盘模块116(n)经由集群结构104发送请求,节点计算设备106(1)的网络模块114(1)可以访问数据存储设备110(n)。例如,集群结构104可以包括作为无线带宽(InfiniBand)、光纤通道(FC)或以太网络被实施的一个或多个局域和/或广域计算网络,不过也可以使用支持其他协议的其他类型的网络。磁盘模块116本文档来自技高网...

【技术保护点】
1.一种方法,包括:/n由计算设备将对象的层次结构插入到位置数据库中,其中所述对象的子集中的每个对象包括针对存储在文件系统中的数据的物理存储位置,并且所述对象中的一个或多个对象包括对象版本号和所述对象的父对象的父版本号;以及/n由所述计算设备修改针对所述对象中与无效事件相关联的一个对象的所述对象版本号,以使所述对象的所述子集的一个子对象无效。/n

【技术特征摘要】
【国外来华专利技术】20180314 US 15/921,2601.一种方法,包括:
由计算设备将对象的层次结构插入到位置数据库中,其中所述对象的子集中的每个对象包括针对存储在文件系统中的数据的物理存储位置,并且所述对象中的一个或多个对象包括对象版本号和所述对象的父对象的父版本号;以及
由所述计算设备修改针对所述对象中与无效事件相关联的一个对象的所述对象版本号,以使所述对象的所述子集的一个子对象无效。


2.根据权利要求1所述的方法,还包括:当所述对象的所述子集中的一个对象中的所述物理存储位置基于与所述层次结构中的路径中的所述对象的另一子集相关联的版本号而被确定为有效时,由所述计算设备使用基于对所述位置数据库的查询而标识的所述对象的所述子集中的所述一个对象中的所述物理存储位置来服务接收的数据访问请求。


3.根据权利要求2所述的方法,当所述对象的所述子集中的所述一个对象中的所述物理存储位置被确定为无效时,由所述计算设备将所述数据访问请求转发给用于服务的不同执行上下文中的文件系统模块。


4.根据权利要求2所述的方法,其中所述对象的所述子集中的所述每个对象在所述层次结构的底部处并且包括逻辑地址到所述物理存储位置的映射,并且所述接收的数据访问请求是读取请求并且包括所述逻辑地址中的一个逻辑地址。


5.根据权利要求1所述的方法,其中所述数据包括存储在所述文件系统中的文件块,并且所述层次结构与所述文件系统的结构相对应。


6.根据权利要求1所述的方法,其中所述对象版本号基于所述位置数据库中的最新更新的时间,并且所述版本号中的一个或多个版本号是基于当前时间戳计数器而生成的。


7.一种非暂态机器可读介质,具有存储于其上的用于加速存储介质访问的指令,所述指令包括机器可执行代码,所述机器可执行代码当由至少一个机器执行时使所述机器:
将对象的层次结构插入到位置数据库中,其中所述对象的子集中的每个对象包括针对存储在文件系统中的数据的物理存储位置,并且所述对象中的一个或多个对象包括对象版本号和所述对象的父对象的父版本号;以及
修改针对所述对象中与无效事件相关联的一个对象的所述对象版本号,以使所述对象的所述子集的一个子对象无效。


8.根据权利要求7所述的非暂态机器可读介质,其中所述机器可执行代码当由所述机器执行时还使所述机器:当所述对象的所述子集中的一个对象中的所述物理存储位置基于与所述层次结构中的路径中的所述对象的另一子集相关联的版本号而被确定为有效时,使用基于对所述位置数据库的查询而标识的所述对象的所述子集中的所述一个对象中的所述物理存储位置来服务接收的数据访问请求。


9.根据权利要求8所述的非暂态机器可读介质,其中所述机器可执行代码当由所述机器执行时还使所述机器:当所述对象的所述子...

【专利技术属性】
技术研发人员:D·廷N·马坦科特A·帕坦A·库尔卡尼B·威尔M·凯蒂亚
申请(专利权)人:NETAPP股份有限公司
类型:发明
国别省市:美国;US

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

1
相关领域技术
  • 暂无相关专利