使用条带化来存储数据的方法及装置制造方法及图纸

技术编号:2839512 阅读:226 留言:0更新日期:2012-04-11 18:40
本发明专利技术揭示一种包括一NFS服务器集群的数据存储装置。每一服务器均具有用于输入文件系统请求及服务器之间的集群通信的网络端口。所述装置包括复数个与所述服务器通信的存储器阵列。所述服务器利用一种条带化文件系统来存储数据。一种用于存储数据的方法。一种用于为一文件建立存储的方法。一种用于从存储器中移除一文件的方法。一种用于读取一文件中的数据的方法。一种用于将数据写入一文件中的方法。

【技术实现步骤摘要】
【国外来华专利技术】
本专利技术涉及借助对NFS服务器使用条带化来存储数据。更具体而言,本专利技术涉及其中将包括修改时间及更改时间在内的属性的范围考虑在内对NFS服务器使用条带化来存储数据。
技术介绍
数据存储中的一重要问题是为一由许多通过高速网络相连的独立处理器所构成的计算集群提供共享文件存取。在许多有趣的情况下,计算集群在存取单个文件,而在此种情况下,提供从整个计算集群到此单个文件的足够的带宽具有挑战性。解决此问题的先前方法遵循两种架构中的一种。在一类例如由Sistina及PolyServe所采用的解决方案中,通至一单个文件的带宽是通过提供会协调其对保存有所述文件的逻辑存储器阵列(LUN)的存取的多个服务器来调整。这些系统实施一复杂的分布式锁定方案来协调对LUN的存取,具体而言,协调诸如分配磁盘块、给文件分配块、给文件分配内节点号及构造间接块树等操作。这些系统通常因其锁定开销很大而效率低下。在由PVFS系统所代表的另一类解决方案中,通过一建立于一标准文件系统顶部的附加文件系统层来将数据条带化于多个服务器中。在PVFS中,对所得到文件系统中的不同的条文件的更新未得到非常密切的协调,且那些处理全局文件性质(例如文件长度)的操作实施起来非常昂贵或通过可引起应用错误的近似值来实施。例如,在PVFS中,确定一文件的长度需要从所有条中读取各个文件长度,并取最大的返回结果,此为一个昂贵的程序。同样地,准确的修改时间对于其数据是通过网络文件系统(NFS)协定输出的文件系统来说很重要,因为网络文件系统(NFS)协定使用文件的修改时间作为一版本号。但PVFS及类似的并行文件系统通过一与返回文件长度的程序类似的程序来返回一文件的修改时间其检查所有服务器并返回最大的修改时间域。由于不同的服务器的时钟相差不到几微秒,所以有可能在负责一个条带的碰巧时钟超前最多的服务器处实施一写入,且随后对另一时钟较早的服务器实施一写入,结果使第二写入并未超前于全系统文件修改时间。存在修改时间相同的两个文件版本可引起像NFS等使用修改时间作为版本号的协议的错误行为。由于这些问题,PVFS文件系统不适于通过一使用NFS的网络输出。本专利技术与当前技术的不同之处在于提供一种将如PVFS等条带化解决方案的有效锁定与为使用NFS来输出数据所需的正确、有效的文件属性检索相结合的解决方案。
技术实现思路
本专利技术涉及一种数据存储装置。所述装置包括一NFS服务器集群。每一服务器均具有用于输入文件系统请求及服务器之间的集群通信的网络端口。所述装置包括复数个与所述服务器通信的存储器阵列。所述服务器利用一条带化文件系统来存储数据。本专利技术涉及一种用于存储数据的方法。所述方法包括将一文件创建于复数个NFS服务器上的步骤。具有如下步骤在所述各服务器中将数据以数据条的形式写入文件中,所述各个条共同形成一条带。具有从所述各服务器中读取所述数据条的步骤。具有从所述服务器中删除所述条的步骤。本专利技术涉及一种用于为一文件建立存储的方法。所述方法包括在一网络元件处接收一NFS创建请求的步骤。具有在一元数据(meta data)服务器处从所述网络元件接收一文件创建请求的步骤。具有在所述元数据服务器处为所述文件分配一内节点号的步骤。具有向输入输出辅助设备作出创建调用以将所述文件标记为由所述输入输出辅助设备所分配的步骤。具有在所述元数据服务器处委托所述文件创建的步骤。本专利技术涉及一种用于从存储器中移除一文件的方法。所述方法包括在一元数据服务器处接收一删除文件请求的步骤。具有在所述元数据服务器处由所述元数据服务器从一母目录中移除所述文件的一文件名的步骤。具有在所述元数据服务器处由元数据服务器将所述文件名加到一文件删除列表上的步骤。具有向所述输入输出辅助设备发送删除调用的步骤。具有在所述元数据服务器处从所述输入输出辅助设备接收其已删除所述文件的确认调用的步骤。具有在所述元数据服务器处删除所述文件的步骤。具有从所述文件删除列表中删除所述文件的步骤。具有在所述元数据服务器处由所述元数据服务器将一与所述文件相关的内节点号放入一自由列表中的步骤。本专利技术涉及一种用于读取一文件中的数据的方法。所述方法包括在一网络元件处接收一对所述文件中的数据的NFS读取请求的步骤。具有由所述网络元件确定哪一个VFS存储至少一个包含所述数据的条的步骤。具有将一文件读取请求从所述网络元件发送至存储所述数据的条的复数个服务器的至少一个磁盘元件的步骤。具有由每一磁盘元件获得与所述文件相关的当前属性的步骤。具有从每一具有所述条的磁盘元件中读取所述文件的所述条的步骤。具有产生一对所述文件读取请求的响应的步骤。本专利技术涉及一种用于将数据写入一文件中的方法。所述方法包括在一网络元件处接收一对一文件的NFS写入请求的步骤。具有由所述网络元件确定哪一个VFS与所述文件相关的步骤。具有将一文件写入请求从所述网络元件发送至具有所述VFS的一条带的复数个服务器的至少一个磁盘元件的步骤。具有获取与所述文件相关的当前属性的步骤。具有将所述数据中的一预定数量的字节连续写入每一VFS条中直至所述数据全部被写入所述文件中为止的步骤。附图说明在附图中,图解说明了本专利技术的较佳实施例及实践本专利技术的较佳方法,在图式中图1为本专利技术的一装置的一示意图。图2为本专利技术的所述装置的一示意图。图3为三个条带的一示意图。图4为一读取数据路径以及对元数据服务器的请求的示意图。图5显示在一条带化系统中作为实施一写入操作的一部分所交换的调用。图6显示在网络元件可产生一适当NFS响应前将对不同磁盘元件的多个调用相组合的结果。图7为一创建/删除/截断通信的示意图。具体实施例方式现在参见图式一在所有这几个图式中相同的参考编号均指代相似或相同的部件,且更具体而言参见其图形,图中显示一数据存储装置10。装置10包括一由若干NFS服务器14构成的集群12。每一服务器14均具有用于输入文件系统请求及各服务器14之间的集群12通信的网络端口16。装置10包括复数个与服务器14通信的存储器阵列18,服务器14利用一条带化文件系统来存储数据。较佳地,每一服务器14均具有一网络元件20及一磁盘元件22。每一磁盘元件22均较佳具有一虚拟文件系统24,每一磁盘元件22的虚拟文件系统24共同形成一条带化VFS。较佳地,一虚拟文件系统24的一个磁盘元件22充当一元数据服务器26。较佳地,一文件具有若干属性且每一文件的每一服务器14均保有一高速缓存元件,所述高速缓存元件存储所述文件属性的最新已知版本及修改时间和更改时间值的范围以供指配给写入操作的结果。不作为虚拟文件系统24的元数据服务器26的每一磁盘元件22均较佳为一输入输出辅助设备。较佳地,文件修改时间或文件更改时间的范围由输入输出辅助设备从元数据服务器26保留。较佳将从元数据服务器26所获得的范围内的修改及更改时间发给已在输入输出辅助设备处排队的操作。较佳地,将从元数据服务器26所获得的范围内的修改及更改时间发给在由输入输出辅助设备从元数据服务器26保留所述范围后的一时间窗口期间所接收的操作。影响一文件中所有条带的操作较佳首先在一文件的元数据服务器26处开始执行,且随后在所有输入输出辅助设备28处执行,以使输入输出辅助设备28处的操作只等待已经完成其与元数据服务器26的通信的已在执行本文档来自技高网
...

【技术保护点】
一种用于存储数据的装置,其包括:一NFS服务器集群,每一服务器均具有用于输入文件系统请求及服务器之间的集群通信的网络端口;及用于与所述服务器通信的复数个存储器阵列,所述服务器利用一条带化文件系统来存储数据。

【技术特征摘要】
【国外来华专利技术】US 2003-12-2 10/727,1691.一种用于存储数据的装置,其包括一NFS服务器集群,每一服务器均具有用于输入文件系统请求及服务器之间的集群通信的网络端口;及用于与所述服务器通信的复数个存储器阵列,所述服务器利用一条带化文件系统来存储数据。2.如权利要求1所述的装置,其中每一服务器均具有一网络元件及一磁盘元件。3.如权利要求2所述的装置,其中每一磁盘元件均具有一虚拟文件系统且每一磁盘元件的所述虚拟文件系统共同形成一条带化VFS。4.如权利要求3所述的装置,其中一虚拟文件系统的所有磁盘元件充当元数据服务器。5.如权利要求4所述的装置,其中一文件具有若干属性且每一服务器为每一文件均保有一高速缓存元件,所述高速缓存元件存储所述文件属性的一最新已知版本及修改时间和更改时间值的范围以供指配给写入操作结果。6.如权利要求5所述的装置,其中每一不是一虚拟文件系统的所述元数据服务器的磁盘元件均为一输入输出辅助设备。7.如权利要求6所述的装置,其中文件修改时间或文件更改时间的范围是由所述输入输出辅助设备从所述元数据服务器中保留。8.如权利要求7所述的装置,其中从所述元数据服务器所获得的所述范围内的所述修改时间及更改时间被分发给已在所述输入输出辅助设备处排队的操作。9.如权利要求8所述的装置,其中从所述元数据服务器所获得的所述范围内的修改时间及更改时间被分发给在由所述输入输出辅助设备从所述元数据服务器保留所述范围后的一时间窗口期间所接收的操作。10.如权利要求9所述的装置,其中影响一文件的所有条带的操作首先在一文件的所述元数据服务器处开始执行,且随后在所有输入输出辅助设备处执行,以使所述输入输出辅助设备处的操作只等待已结束其与所述元数据服务器的通信的已在执行的操作。11.如权利要求10所述的装置,其中各操作遵循至少两种锁定模型中的一种,所述两种锁定模型中的第一种首先要与所述元数据服务器同步,然后通过与在所述输入输出辅助设备处执行的其他操作同步来开始核心执行,且其中第二种首先要在所述元数据服务器处同步,且随后与一个或多个输入输出辅助设备处的已在所述输入输出辅助设备处开始核心执行的操作同步。12.如权利要求11所述的装置,其中所述集群网络连接成一星形拓扑。13.如权利要求12所述的装置,其中所述集群网络为一交换式以太网。14.一种用于存储数据的方法,其包括下列步骤在复数个NFS服务器上创建一文件;在所述服务器中将数据以所述数据的各个条的形式写入至所述文件中,所述条共同形成一条带;从所述服务中读取所述数据的条;及从所述服务器中删除所述条。15.如权利要求14所述的方法,其包括将一NFS服务器的一虚拟文件系统的一磁盘元件识别为一元数据服务器并将未被识别为所述元数据服务器的所述NFS服务器的磁盘元件识别为输入输出辅助设备的步骤。16.如权利要求15所述的方法,其包括在一元数据服务器处每一现用文件的每一输入输出辅助设备处的一高速缓存元件中存储所述文件的适于一空转周期的属性的一最新已知版本的步骤。17.如权利要求16所述的方法,其包括在所述高速缓存元件中存储修改时间及更改时间值的范围以供指配给写入操作的步骤。18.如权利要求17所述的方法,其包括由所述高速缓存元件向所述元数据服务器作出一状态请求以获得一文件的当前属性的步骤。19.如权利要求18所述的方法,其中所述作出一状态请求的步骤包括从所述元数据服务器获得修改时间及更改时间范围的步骤。20.如权利要求19所述的方法,其包括在所述输入输出辅助设备处对文件读取及文件写入请求进行排队直至所述文件读取及文件写入请求被所述高速缓存元件接纳并完成执行为止的步骤。21.如权利要求20所述的方法,其包括由所述高速缓存元件跟踪正对所述文件执行的所述文件读取及文件写入请求及正被读取或写入的所述范围的步骤。22.如权利要求21所述的方法,其包括当必须执行一读取操作时请求所述高速缓存元件从无效模式移出至读取模式的步骤。23.如权利要求22所述的方法,其包括检查一受一...

【专利技术属性】
技术研发人员:迈克尔L卡扎尔理查德N小桑齐
申请(专利权)人:三角帆网络公司
类型:发明
国别省市:US[]

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

1