分布式网络附接的存储系统的制作方法

文档序号:6373944阅读:96来源:国知局
专利名称:分布式网络附接的存储系统的制作方法
相关申请的交叉引用本申请要求以下文件的利益申请号为60/419,778,
公开日为2002年10月17日,名称为“A Distributed Storage system(分布式存储系统)”的美国临时专利申请;申请号为10/368,026,
公开日为2003年2月13日,名称为“ADistributed Network Attached Storage System(分布式网络附接的存储系统)”的美国专利申请;申请号为10/367,541,
公开日为2003年2月13日,名称为“Methods and Apparatus for Load Balancing Storage Nodes In A DistributedNetwork Attached Storage System(在分布式网络附接的存储系统中用于对存储节点进行负载平衡的方法和装置)”的美国专利申请;以及申请号为10/367,436,
公开日为2003年2月13日,名称为“Methods and Apparatus For Load BalancingStorage Nodes In A Distributed Storage Area Network System(在分布式存储区域网络系统中用于对存储节点进行负载平衡的方法和装置”的美国专利申请。
背景技术
发明领域本发明直接涉及数据存储领域,尤其涉及分布式网络数据存储系统。
背景技术
对存储大量数据的系统的需求正在增长。许多公司都努力对文件中的存储的大量数据(例如,兆兆字节的数据)提供可升级的、费效合理的存储解决方案。为计算机存储数据所使用的一种类型的现有技术系统称为网络附接的存储(“NAS”)。在NAS的配置中,一台计算机,诸如服务器,与物理存储器相耦合,所述物理存储器诸如是一个或多个硬盘驱动器。可通过网络访问NAS服务器。为了访问所述存储器,客户计算机向服务器提交请求以存储和检索数据。
传统的NAS技术有几个固有的限制。首先,NAS系统由于它们基本不能升级性能和容量而受到严重影响。目前的NAS系统只能在具有单一网络连接的单NAS服务器的限制内升级性能。因而,单NAS服务器只能将容量升级到附接到那个NAS服务器的有限数目的盘。当前文件存储系统的这些基本的限制引起了各种挑战。首先,消费者必须使用多NAS系统以满足容量和性能需求。多NAS系统的使用要求消费者管理多文件系统和多NAS系统映像。这些尝试导致存储资源的低效率使用,因为文件必须跨多NAS系统而进行人工分布,以满足总体的容量和性能需求。这总是会在多NAS系统中留下未使用的容量的小区域(pocket)。而且,被频繁访问的文件,有时也称作热文件,可能仅由单NAS服务器提供服务,从而导致影响该存储系统性能的一个瓶颈。这些问题导致了对终端用户的实质上更高的管理成本,以及对于购买专有的NAS系统的高获取成本。
用于存储大量数据的另一种配置是存储区域网络(“SAN”)。通常,SAN配置由盘网络组成。客户通过网络访问盘。使用该SAN配置,客户通常将每一个个体盘作为单独的实体来访问。例如,客户可在网络中的第一个盘上存储第一组文件,并且在该SAN系统中的第二个盘上存储第二组文件。从而,这个技术要求客户管理该存储区域网络上跨盘的文件存储。因此,该SAN配置不太理想,因为它需要客户专门管理在每一个个体盘上的存储。因此,希望开发一种通过跨多个盘的单文件系统来管理文件的系统。
发明概要一个分布式数据存储系统跨多个物理存储卷上而存储一单个映像文件系统。一个或多个客户通过网络与分布式数据存储系统进行通信。该分布式数据存储系统包括多个存储节点。每个存储节点服务于对存储在物理存储卷上的文件的存储操作的请求。在一个实施例中,所述物理存储器是一个直接附接的存储器。对于该实施例,至少一个物理存储卷直接与每一个存储节点相耦合。在另一个实施例中,所述物理存储卷通过一个存储区域网络(“SAN”)与存储节点相耦合。
为了实施存储操作,包括读和写操作,客户在网络上发送一个对在文件系统中识别的文件的请求。选择其中一个存储节点来处理该请求。在一个实施例中,所述分布式数据存储系统包括一个负载平衡转换器,该转换器从客户接收请求并且选择其中一个客户节点来处理存储操作。为了处理所述请求,存储节点访问至少其中一个物理卷,并且向客户发送一个对该存储操作的响应。
附图的简要说明

图1是说明本发明的分布式网络附接的存储系统的一个实施例的框图;图2是说明在分布式NAS系统中分配客户请求的一个实施例的框图;图3是说明合并了直接附接的盘的分布式NAS系统的一个实施例的框图;图4是说明对分布式NAS系统使用SAN配置的一个实施例的框图;图5是说明在分布式NAS系统中初始化客户计算机的一个实施例的流程图;图6是说明在分布式NAS系统中实施读操作的一个实施例的流程图;图7是说明在卷管理器中用于处理读操作的一个实施例的流程图;图8是说明在分布式NAS系统中实施写操作的一个实施例的流程图;图9是说明在卷管理器中执行写操作的一个实施例的框图。
详细说明申请号为60/419,778,
公开日为2002年10月17日,名称为“ADistributedStorage system(分布式存储系统)”的美国临时专利申请;申请号为10/368,026,
公开日为2003年2月13日,名称为“A Distributed Network Attached StorageSystem(分布式网络附接的存储系统)”的美国专利申请;申请号为10/367,541,
公开日为2003年2月13日,名称为“Methods and Apparatus for Load BalancingStorage Nodes In A Distributed Network Attached Storage System(在分布式网络附接的存储系统中用于对存储节点进行负载平衡的方法和装置)”的美国专利申请;以及申请号为10/367,436,
公开日为2003年2月13日,名称为“Methodsand Apparatus For Load Balancing Storage Nodes In A Distributed Storage AreaNetwork System(在分布式存储区域网络系统中用于对存储节点进行负载平衡的方法和装置)”的美国专利申请的公开内容在此明确地并入作为参考。
图1是说明本发明的分布式网络附接的存储系统的一个实施例的框图。如图1所示,该系统100包括“n”个节点(其中n是大于或等于2的任意整数)。每一个节点可以利用一个传统的计算机来实现,例如服务器。同样如图1所示,所述多个节点互相耦合,以便提供跨该系统的每个节点的单一映像。在一个实施例中,所述节点通过以太网耦合在一起。
节点(1-n)与网络(150)相耦合。“m”个客户机也与该网络相耦合,这里“m”是一个大于或等于1的整数值。所述网络可以是使用任何众所周知的协议(例如TCP/IP,UDP等)的任何类型的网络。而且,如图1所示,分布式NAS系统100包括可由节点访问的物理存储器110。例如,物理存储器110可包括一个或多个硬盘驱动器,其被配置成支持存储故障模式(即RAID配置)。一个客户机,诸如客户机115、120和130,跨过网络150而访问节点以在物理存储器110上存储和检索数据。
通常,本发明的分布式NAS系统产生一单个系统映像,其以模(modular)的方式升级为数百个兆兆字节和每秒几十万次操作。在一个实施例中,为了使成本最小化,分布式NAS系统软件在工业标准硬件上运行,并且使用工业标准操作系统操作。该分布式NAS系统基于特定的可靠性、容量和性能需求而允许灵活的配置。另外,该分布式NAS系统的升级不需要对终端用户的行为、客户机软件或硬件进行任何改变。为了得到最佳性能,在一个实施例中,分布式NAS系统平均地加载以消除对故障较脆弱的中央控制点,或消除性能瓶颈。该分布式NAS系统允许存储容量和性能升级,而不干扰系统的操作。为了实现这些目的,该分布式NAS系统使用了分布式文件系统和卷管理器。在一个实施例中,每个节点(或服务器),除标准硬件和操作系统软件之外,还由一个分布式文件系统管理器(165、175和185)和分别用于节点1、2和n的卷管理器(160、170和180)组成。
图2是说明在分布式NAS系统中分配客户机请求的一个实施例的框图。对于该实施例,客户机(1-n)与一个负载平衡转换器250耦合,后者可通过网络访问。在一个实施例中,负载平衡转换器250包括一个层4(LA)负载平衡转换器。通常,L4转换器可有效地区分TCP和UDP业务的优先次序。另外,该合并有负载平衡能力的L4转换器在多个诸如服务器的资源间分布用于HTTP会话的请求。在操作过程中,执行存储操作的客户机访问负载平衡转换器250,并且负载平衡转换器250选择一个节点(服务器)来服务于该客户机存储操作。
该分布式NAS系统的多个节点与一个或多个硬盘驱动器通信。图3是说明合并了直接附接的盘的分布式NAS系统的一个实施例的框图。如图3所示,每一个节点(节点1,节点2……节点n)都耦合到“n”个盘(310,320和330)。对于该实施例,一个节点通过标准硬盘驱动接口(例如EIDE,SCSI,iSCSI或光纤信道)直接访问一个或多个盘。图3说明了附接到一个节点(服务器)的“n”个盘;尽管可以有任何数量的盘,包括一单个盘,附接到一个节点,而不偏离本发明的精神或范围。
在另一个实施例中,该分布式NAS系统的多个节点使用通过网络(例如存储区域网络“SAN”)耦合的多个盘。图4是说明对分布式NAS系统使用SAN配置的一个实施例的框图。如图4所示,分布式NAS节点(服务器)与存储区域网络410相耦合。存储区域网络410将多个硬盘驱动器耦合到该分布式NAS系统中的每一个节点(服务器)。该存储区域网络410可包括任何类型的网络,例如以太网,光纤信道等。在操作中,一个节点按照需要访问盘以实施读和写操作。每一个节点(服务器)都有对该存储区域网络410中的每一个盘的接入。例如,如果卷管理器170确定数据驻留在盘420上,则卷管理器170就依照该存储区域网络420的协议通过存储区域网络420访问盘420。如果存储区域网络410实施TCP/IP协议,则卷管理器170使用分配给盘420的IP地址而产生对盘420的分组请求。
通常,索引节点,也称为“i节点”,可唯一地识别文件和目录。i节点将文件系统的文件和目录映射到物理位置。每一个i节点都通过一个号码进行标识。对于目录来说,i节点包括文件名和子目录的列表,如果有的话,还包括组成该文件或子目录的多个数据块的列表。该i节点还包括文件或目录的大小、位置等。当一个选定的节点(NAS服务器)从客户机接收到请求以服务于一个特定的i节点时,该选定的节点就执行查找以获得在物理介质中的相应文件或目录的物理位置。
作为初始程序,分布式NAS系统的客户机安装该分布式文件系统。图5是说明在分布式NAS系统中初始化客户计算机的一个实施例的流程图。通过客户机分布式NAS软件,客户机向一个选定的节点产生一个请求以安装所述NAS文件系统(图5的方块520)。在此使用的术语“选定的节点”是指服务于客户机请求的节点。如上所述,在一个实施例中,该节点由负载平衡转换器选出(即客户机向负载平衡转换器产生一个网络请求,并且该负载平衡转换器基于负载平衡准则来选择一个服务器以服务于所述请求)。
该选定的节点(文件系统管理器)获得文件系统根目录的i节点,并且产生一个到根目录的客户机文件句柄(图5的方块530)。该选定的节点使用一个“超级块”来确定根目录的i节点。该超级块位于每个盘上的一个已知地址。每个盘使用一个超级块来指向在其中一个盘上的位置,该位置存储该文件系统的根目录的i节点。一旦该根i节点被定位,文件系统管理器就找到了包括在该根目录内的文件和目录的列表。
作为客户侧名词的文件句柄是一个客户机用来访问在分布式文件系统中的文件或目录的唯一标识符。在一个实施例中,分布式文件系统将该文件句柄转换为i节点。另外,一个文件句柄可包括用于该文件/目录的时间和日期信息。但是,任何类型的文件句柄都可被使用,只要该文件句柄唯一地标识了文件或目录。
该选定的节点(处理客户请求的节点)产生一个安装表(图5的方块540)。通常,该安装表追踪有关该客户的信息(例如客户地址、安装的文件系统等等)。该安装表(是一种数据结构)在该分布式NAS系统的每一个节点中被复制,并被全局地和原子地(atomically)更新(图5的方块550)。选定的节点向客户机发送一个到根目录的文件句柄(图5的方块560)。客户机高速缓存该用于根目录的文件句柄(图5的方块570)。
在一个实施例中,用于分布式NAS的文件系统是一个高性能的分布式文件系统。该文件系统将命名空间和数据完全分布到一组节点上,并为客户机、应用程序和管理者输出一单系统映像。作为多节点系统,该文件系统充当不具有单故障点的高度可升级的、高性能的文件服务器。作为存储介质,该文件系统利用一单个共享盘阵列。它利用多个盘阵列的能量,该盘阵列经由存储区域网络连接或直接连接到网络服务器。该文件系统完全在用户空间中被实现,从而导致一个轻型的和可移植的文件系统。在一个实施例中,该文件系统提供64位支持,以便允许非常大的文件系统尺寸。
卷管理器(图1中的160、170和180)控制和虚拟化逻辑的存储卷,其或者通过EIDE、SCSI、iSCSI、光纤信道直接附接到一个节点上,或者也可以通过在局域网上的另一个服务器间接地附接。该卷管理器提供对高级管理特征的管理者访问。它提供跨多个节点而扩展逻辑卷的能力。这导致在多节点网络环境中空前灵活的、可靠的和高性能的存储管理。
卷管理器由3部分组成逻辑卷,卷组和物理卷。每一层都具有对该系统的效力有贡献的特殊属性。分布式卷组是系统的核心组成部分。卷组是一个虚拟化的物理卷的集合。在它最简单的形式中,分布式卷组可类比成一个具有可靠性属性的特殊的数据容器。卷组具有相关的可靠性级别(例如RAID级别)。例如,分布式卷组可具有与传统的RAID0,1或5盘阵列相似的可靠性特征。分布式卷组可由任意数量、类型或大小的物理卷制成。
逻辑卷是卷组的逻辑分区。文件系统被置于分布式逻辑卷中。逻辑盘区是在逻辑卷内的一片逻辑上连续的存储器。物理卷是暴露给操作系统的任意块装置,或者是硬件或者是软件。物理盘区是在物理存储装置内的一片连续的存储器。扇区定义的是在一个存储装置上的物理存储器的最小单元,通常为512字节。
物理卷是一个对操作系统表现为基于块的存储装置的资源(例如RAID装置,通过光纤信道的盘,或者软件RAID装置)。逻辑的或物理的卷由称作“盘区”的空间单元组成。盘区是暴露给分布式卷管理器的连续存储器的最小单元。
该卷管理器允许在存储管理中空前的灵活性和可升级性,以增强大规模存储系统的可靠性。在一个实施例中,该分布式卷管理器在分布式卷组上实现标准RAID0,1和5配置。当产生时,每一个分布式卷组都被给定包括条带大小和RAID集大小的可靠性设置。条带大小有时也称作碎片(chunk)或块,其是写入一个个体物理卷的数据的最小粒度。常见的条带大小是8k,16k和24k。RAID集大小是指在奇偶计算间的条带的数量。这通常等于在一个卷组中的物理卷的数量。
如以上所讨论的,i节点由指向存储基础数据的物理块的指针组成。在一个实施例中,i节点在盘上存储在“i文件”中。对于目录来说,i节点文件包括在那个目录中包含的所有文件和目录的i节点的列表。在一个实施例中,分布式NAS系统使用一个映射管理器。通常,映射管理器存储信息以提供在多个i节点与管理文件或目录的分布式NAS节点(服务器)之间的关联。该映射管理器,即一种数据结构,被全局地存储(也就是存储在每一个节点上)并且原子地更新。表1是在分布式NAS系统中使用的映射管理器的一个例子。
表1
对于该示例来说,分布式NAS系统包括3个节点(A、B和C)。从0到100范围内的i节点由节点A管理。位于101到200范围内的i节点由节点B管理,而落入201-300范围内的i节点由节点C管理。
图6是说明在分布式NAS系统中实施读操作的一个实施例的流程图。要实施一个读操作,客户机通过目录/文件名产生一个对分布式NAS系统的读取请求(图6的方块610)。该分布式NAS系统选择一个节点来处理该请求(即选定的节点)。例如,负载平衡转换器可选择节点C来处理该读操作。同样,对于这个例子来说,客户机可以产生一个请求来读取文件“/export/temp/foo.txt”,对于这个例子,客户机必须获得用于“/export/temp/foo.txt”的文件句柄。要实现这一点,客户机要以根文件句柄开始(即当客户机安装该分布式文件系统时获得该根文件句柄)。
如果该客户机已经高速缓存了用于“/export”的文件句柄,则该客户机首先请求用于“/export/temp”的文件句柄。响应该客户机请求,该选定的节点(服务器)确定用于该目录/文件的i节点(图6的方块620)。对于上面的例子,该选定的节点确定用于目录“/export/temp”的i节点。特别是,该选定的节点在用于“/export”目录的i节点列表中查找用于目录“/temp”的i节点。为了解释的目的,该用于目录“/temp”的相关联的i节点是55。
通过该i节点,该选定的节点通过映射管理器从所述目录/文件确定存储节点(图6的方块630)。对于上面的例子和如表1中所示的映射管理器,i节点55由节点A管理。该选定的节点向该存储节点(管理该目录/文件的节点)询问在该目录/文件上的锁(图6的方块640)。在以上提出的例子中,节点C即选定的节点,询问节点A即存储节点,以获得用于目录“/export/temp”的锁。一个锁可以是专用的或共享的锁,其包括读和写类型的。如果对于该文件/目录一个锁是可用的,则存储节点就将一个用于该目录/文件的读锁分配给该选定的节点(图6的方块645和660)。如果一个锁是不可用的,则存储节点就试图取消现有的锁(图6的方块645和650)。如果存储节点能够取消该现有的锁,则存储节点就将一个读锁分配给用于该目录/文件的选定的节点(图6的方块650和660)。如果该存储节点不能取消该现有的锁,则向客户机发送一个错误消息该文件/目录当前不可用于读取(图6的方块650和655)。
在获得了合适的锁之后,该选定的节点就向客户机发送一个文件句柄(图6的方块665)。对于上面的例子,选定的节点即节点C,发送一个用于目录“/export/temp”的文件句柄。客户机高速缓存该文件句柄。如果需要附加的目录/文件句柄来读取该文件,则执行获取附加的目录/文件句柄的过程(图6的方块670)。对于上面的例子,客户机产生一个用于“/export/temp/foo.txt”的读取请求。然后,该选定的节点确定用于文件“/export/temp/foo.txt”的i节点。对于这个例子,文件系统管理器查找i节点55,并且识别被定位在“/temp目录”中的文件foo.txt。该文件系统管理器提取与文件foo.txt相关联的i节点(例如i节点=136)。映射管理器将节点B标识为i节点136的所有者。从而,节点C即选定的节点与节点B即存储节点通信,以获得用于文件foo.txt的锁。然后节点C将foo.txt的文件句柄返回给该客户机。
响应该读取请求,该文件系统管理器从该卷管理器获得必要的块,以读取文件(图6的方块675)。文件系统管理器使用i节点136在文件i节点中进行查找,并且识别与i节点136相关联的物理块。对于上面的例子,如果客户机请求读取该文件的第一个1024字节,则该文件系统管理器发出命令(读取块130和131,缓冲器)以读取该文件的最先两块(例如文件“/export/temp/foo.txt”最先两块被编号为130和131)。作为响应,卷管理器将文件“/export/temp/foo.txt”的第一个1024字节放置到一个缓冲器中。该选定的节点将来自该缓冲器的数据返回给该客户机(图6的方块680)。
通常,该卷管理器响应来自该分布式文件系统管理器的请求。图7是说明在卷管理器中用于处理读操作的一个实施例的流程图。为了启动该过程,卷管理器从该文件系统管理器中接收请求(图7的方块710)。一个卷跨多个节点而扩展。每一个盘(例如0-256个扇区)要求一个映射以将虚拟扇区翻译为物理扇区。该卷管理器确定用于该读操作的对象的物理卷节点(图7的方块720)。该卷管理器与该物理卷通信。为了实施读操作,该文件系统管理器请求卷管理器读/写一块或一组扇区(例如扇区24-64等)。
卷管理器确定盘和盘偏移(图7的方块730)。该卷管理器用代数方法确定逻辑扇区在该物理卷上的位置。表2描述了用于一个示例的分布式NAS系统的从盘映射到节点的例子。
表2
对于该实施例,卷管理器依照表2中说明的排列来计算节点。该盘通过扇区进行分派,并且偏移测量了盘内扇区的数目。卷管理器从该节点、在该节点上的盘和在该盘内的偏移中获得数据块(图7的方块740)。该卷管理器然后将数据返回到缓冲器(文件系统管理器)(图7的方块750)。
图8是说明在分布式NAS系统中实施写操作的一个实施例的流程图。首先,客户机利用目录/文件名产生一个对该分布式NAS系统的写请求(图8的方块810)。该分布式NAS系统选择一个节点来处理该请求(例如节点C)。使用上面的例子,客户机可以产生一个请求来写入到文件“/export/temp/foo.txt”中。对于这个例子,客户机必须获得“/export/temp/foo.txt”的文件句柄。如上所述,客户机以根文件句柄开始。如果客户机已经高速缓存了用于“/export”的文件句柄,则该客户机首先请求一个用于“/export/temp”的文件句柄。响应于客户机请求,该选定的节点(服务器)确定用于该目录/文件的i节点(图8的方块820)。对于上面的例子,该选定的节点确定用于目录“/export/temp.”的i节点,即i节点55。
该选定的节点通过该映射管理器从用于相关联的i节点的该目录/文件中确定存储节点(图8的方块830)。对于上面的例子(表1),i节点55由节点A管理。该选定的节点向该存储节点(管理该目录/文件的节点)查询在该目录/文件上的一个锁(图8的方块840)。从而,节点C即选定的节点查询节点A即存储节点,以获得用于该目录“/export/temp”的写入锁。如果用于该文件/目录的写入锁是可用的,则该存储节点将用于该目录/文件的写入锁分配到该选定的节点(图8的方块845和860)。如果锁不可用,则该存储节点就试图取消现有的一个(或多个)锁(图8的方块845和850)。如果该存储节点能取消该现有的一个(或多个)锁,则该存储节点就将写入锁分配到用于该目录/文件的选定的节点(图8的方块850和860)。如果该存储节点不能取消该现有的一个(或多个)锁,则向客户机发送一个错误消息文件/目录当前不可用于读取(图8的方块850和855)。
在获得合适的锁之后,该选定的节点向该客户机发送一个文件句柄(图8的方块865)。对于上面的例子,该选定的节点即节点C发送一个用于目录“/export/temp”的文件句柄。该客户机高速缓存该文件句柄。如果需要附加的的目录/文件句柄来读取该文件,则执行获取附加的目录/文件句柄的过程(图8的方块870)。对于上面的例子,该客户机产生一个用于“/export/temp/foo.txt”的读取请求。如上面所讨论的,该选定的节点确定用于文件“/export/temp/foo.txt”的i节点(例如i节点=136)。该映射管理器将节点B标识为i节点136的所有者。获得用于文件foo.txt的锁。然后节点C将foo.txt的文件句柄返回给该客户机。
客户机发送用于写操作的数据和文件句柄(图8的方块875)。该文件系统管理器和卷管理器执行该写操作(参看图9)。该客户机从该文件系统管理器接收一个写入确认(图8的方块880)。
图9是说明在卷管理器中执行写操作的一个实施例的框图。在选定节点上的文件管理器从客户机接收用于写操作的数据(图9的方块910)。作为响应,该文件系统管理器从该卷管理器请求数据块(图9的方块915)。该卷管理器确定用于写操作的物理卷节点(图9的方块920)。该卷管理器确定盘和盘偏移(图9的方块930)。该卷管理器然后根据该节点、盘和偏移获得数据块(图9的方块940)。该卷管理器向一个缓冲器返回读取的数据(图9的方块950)。该文件系统管理器将用于写操作的数据写入到该缓冲器中(图9的方块960)。然后,卷管理器将来自该缓冲器的数据写入到该物理盘(图9的方块970)。
尽管本发明是就特定典型实施例进行的描述,但是应该认识到本领域技术人员在不背离本发明的精神和范围的情况下可以对其进行各种修改和替换。
权利要求
1.一种分布式数据存储系统,包括多个物理存储卷,用于存储多个可由一单文件系统访问的数据的文件;网络;多个存储节点,其与所述网络耦合,所述存储节点的每一个都具有对存储在所述物理存储卷上的所述文件中的每一个的访问,并且其中每个存储节点都用于从一个客户机接收对所述文件系统中标识的一个文件的存储操作的请求,用于通过访问其中至少一个所述物理卷来处理所述存储操作,以及用于向所述客户机发送一个对所述存储操作的响应。
2.如权利要求1所述的分布式存储系统,还包括一个负载平衡转换器,其与所述网络耦合,用于从客户机接收对存储操作的所述请求,并用于选择所述客户机节点之一来处理所述存储操作。
3.如权利要求1所述的分布式存储系统,其中至少一个所述物理存储卷直接与每一个所述存储节点耦合。
4.如权利要求1所述的分布式存储系统,其中所述物理存储卷通过一个可由所述存储节点访问的网络耦合。
5.如权利要求1所述的分布式存储系统,其中存储节点包括一个文件系统管理器,用于处理所述对存储操作的客户机请求;和一个卷管理器,用于访问所述的物理卷。
6.如权利要求5所述的分布式存储系统,其中第一存储节点的所述文件系统管理器用于与第二存储节点的卷管理器通信,以访问存储在附接到所述第二存储节点的物理卷上的文件。
7.如权利要求1所述的分布式存储系统,其中所述存储操作包括写操作。
8.如权利要求1所述的分布式存储系统,其中所述存储操作包括读操作。
9.一种用于在分布式存储系统中存储文件的方法,所述的方法包括以下步骤在多个物理存储卷中存储多个可由一单文件系统访问的文件;通过所述网络将多个存储节点耦合到所述物理存储卷;给所述存储节点的每一个提供对每一个所述物理存储卷的访问;在每个所述存储节点上从客户机接收一个用于对所述文件系统中标识的一个文件的存储操作的请求;响应所述存储操作,访问其中至少一个所述物理卷;并且向所述客户机发送一个对所述存储操作的响应。
10.如权利要求9所述的方法,还包括以下步骤将一个负载平衡转换器耦合到所述网络;从客户机接收对存储操作的所述请求;和选择所述客户机节点之一来处理所述存储操作。
11.如权利要求9所述的方法,还包括将至少一个所述物理存储卷耦合到每个所述存储节点的步骤。
12.如权利要求9所述的方法,还包括通过网络访问所述物理存储卷的步骤。
13.如权利要求9所述的方法,其中在每一个所述存储节点上从客户机接收一个对存储操作的请求的步骤包括以下步骤在文件系统管理器处接收一个请求;和处理对所述存储操作的所述客户机请求;响应所述存储操作而访问至少一个所述物理卷的步骤包括从一个卷管理器访问所述物理卷的步骤。
14.如权利要求13所述的方法,还包括以下步骤在第一存储节点的文件系统管理器和第二存储节点的卷管理器之间产生连接;和通过所述第二存储节点的所述卷管理器来访问附接到所述第二存储节点的物理卷。
15.如权利要求9所述的方法,其中所述存储操作包括写操作。
16.如权利要求9所述的方法,其中所述存储操作包括读操作。
17.一种计算机可读介质,用于存储多个指令,当一个计算机系统执行这些指令时,可引起该计算机执行以下步骤在多个物理存储卷中存储多个可由一单文件系统访问的文件;通过所述网络将多个存储节点耦合到所述物理存储卷;给所述存储节点的每一个提供对每个所述物理存储卷的访问;在每个所述存储节点上从客户机接收一个用于对所述文件系统中标识的一个文件的存储操作的请求;响应所述存储操作,访问至少一个所述物理卷;并且向所述客户机发送一个对所述存储操作的响应。
18.如权利要求17所述的计算机可读介质,还包括以下步骤将一个负载平衡转换器耦合到所述网络;从客户机接收用于存储操作的所述请求;和选择所述客户机节点之一来处理所述存储操作。
19.如权利要求17所述的计算机可读介质,还包括将至少一个所述物理存储卷耦合到每个所述存储节点的步骤。
20.如权利要求17所述的计算机可读介质,还包括通过网络访问所述物理存储卷的步骤。
21.如权利要求17所述的计算机可读介质,其中在每个所述存储节点上从客户机接收一个对存储操作的请求的步骤包括以下步骤在文件系统管理器处接收一个请求;和处理对所述存储操作的所述客户机请求;响应所述存储操作而访问至少一个所述物理卷的步骤包括从一个卷管理器访问所述物理卷的步骤。
22.如权利要求21所述的计算机可读介质,还包括以下步骤在第一存储节点的文件系统管理器和第二存储节点的卷管理器之间产生连接;和通过所述第二存储节点的所述卷管理器来访问附接到所述第二存储节点的物理卷。
23.如权利要求17所述的计算机可读介质,其中所述存储操作包括写操作。
23.如权利要求17所述的计算机可读介质,其中所述存储操作包括读操作。
全文摘要
一种分布式数据存储系统跨多个物理存储卷卷而存储一个单映像文件系统。该物理存储可以是直接附接的存储,或可通过存储区域网络(SAN)而耦合。一个或多个客户机通过一网络与多个存储节点通信。分布式数据存储系统的客户机在网络上发送对文件系统中识别的文件的请求。负载平衡转换器选择其中一个存储节点以处理该请求。该存储节点访问至少一个物理卷以及向所述客户机发送一个对所述存储操作的响应。
文档编号G06F15/173GK1726454SQ200380106239
公开日2006年1月25日 申请日期2003年10月17日 优先权日2002年10月17日
发明者J·L·科特斯, P·E·博泽曼, A·G·兰德拉姆, P·D·马蒂斯, N·纳拉姆, D·罗塞利 申请人:英特尔公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1