CN102164161B - 一种对并行文件系统进行文件布局提取的方法和装置 - Google Patents
一种对并行文件系统进行文件布局提取的方法和装置 Download PDFInfo
- Publication number
- CN102164161B CN102164161B CN2011100035115A CN201110003511A CN102164161B CN 102164161 B CN102164161 B CN 102164161B CN 2011100035115 A CN2011100035115 A CN 2011100035115A CN 201110003511 A CN201110003511 A CN 201110003511A CN 102164161 B CN102164161 B CN 102164161B
- Authority
- CN
- China
- Prior art keywords
- file
- meta data
- layout
- file system
- client
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
- 238000000034 method Methods 0.000 title claims abstract description 63
- 238000000605 extraction Methods 0.000 title claims abstract description 16
- 230000008569 process Effects 0.000 claims description 32
- 238000012545 processing Methods 0.000 claims description 29
- 230000004048 modification Effects 0.000 claims description 10
- 238000012986 modification Methods 0.000 claims description 10
- 230000008676 import Effects 0.000 claims description 8
- 238000007726 management method Methods 0.000 abstract description 35
- 238000003860 storage Methods 0.000 abstract description 30
- 238000013500 data storage Methods 0.000 abstract description 5
- 238000005457 optimization Methods 0.000 abstract description 4
- 238000004891 communication Methods 0.000 description 20
- 230000006870 function Effects 0.000 description 8
- 239000013307 optical fiber Substances 0.000 description 6
- 230000001680 brushing effect Effects 0.000 description 4
- 238000010586 diagram Methods 0.000 description 4
- 230000008859 change Effects 0.000 description 3
- 239000000835 fiber Substances 0.000 description 3
- 238000012423 maintenance Methods 0.000 description 3
- 230000008901 benefit Effects 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 238000005520 cutting process Methods 0.000 description 2
- 238000000151 deposition Methods 0.000 description 2
- 239000012467 final product Substances 0.000 description 2
- 238000013507 mapping Methods 0.000 description 2
- 241001362551 Samba Species 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- VQLYBLABXAHUDN-UHFFFAOYSA-N bis(4-fluorophenyl)-methyl-(1,2,4-triazol-1-ylmethyl)silane;methyl n-(1h-benzimidazol-2-yl)carbamate Chemical compound C1=CC=C2NC(NC(=O)OC)=NC2=C1.C=1C=C(F)C=CC=1[Si](C=1C=CC(F)=CC=1)(C)CN1C=NC=N1 VQLYBLABXAHUDN-UHFFFAOYSA-N 0.000 description 1
- 239000000470 constituent Substances 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000005192 partition Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 238000004088 simulation Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
Images
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明提供了一种对并行文件系统进行文件布局提取的方法和装置,通过分离数据和元数据的管理与存储,避免了数据访问对元数据访问性能的干扰,简化元数据一致性的管理,也方便了元数据的性能优化,元数据服务器选取专用元数据存储设备,建立专用元数据文件系统,并行文件系统目录树、文件元数据等以文件的形式存储于元数据文件系统,元数据文件系统以B+树形式组织文件,提供了快速的文件读取性能。
Description
技术领域
本发明涉及网络文件管理技术领域,特别是涉及一种对并行文件系统进行文件布局提取的方法和装置。
背景技术
在高性能计算领域,多个服务器进行并发读写操作的需求愈为显现。以存储区域网络(Storage Area Network,SAN)为代表的共享块存储设备提供了存储设备的并发访问能力,即多个前端服务器节点可以通过光纤通道、iSCSI等通道直接访问块设备。因而,需要并行文件系统来管理共享块存储设备,以提供前端服务器并发的文件访问能力。
传统的网络文件系统,如NFS,Samba等,以导出本地文件系统的方式提供多服务器的访问。在这种方式中,数据的传输仍然需要经过本地文件系统的存取,而不是直接访问存储设备,因而限制了共享块存储设备的并发访问能力。基于对象的文件系统,如Lustre、Ceph等,需要专用的面向对象存储设备或者模拟的对象存储设备,不适用于共享块存储设备的存储环境。常见的集群文件系统,如GFS(Global File System)、GPFS等,以对称的方式提供文件的管理,即数据与元数据混合放置,每个服务器角色是对等的,这种实现方式存在的显著缺点为:需要借助复杂的集群分布式锁管理协议进行数据的一致性维护。
因此,目前需要本领域技术人员迫切解决的一个技术问题就是:如何能够创新地提出一种对并行文件系统进行文件布局提取的方法和装置,以解决现有技术中存在的问题,极大的方便数据的管理,方便了元数据的性能优化。
发明内容
本发明所要解决的技术问题是提供一种对并行文件系统进行文件布局提取的方法和装置,用以保证数据的有效管理,方便元数据的性能优化。
为了解决上述问题,本发明公开了一种对并行文件系统进行文件布局提取的方法,所述方法包括:
应用层通过VFS向文件系统发出读写请求;
客户端检查读写请求的文件布局是否存在且有效:
若是,则使用缓存且有效的文件布局;
若否,则向元数据服务器(Meta Data Server,MDS)请求获取文件布局:
MDS接收到文件布局获取请求后,解析参数,获取请求文件的inode和文件对象;
MDS到元数据文件系统读取该文件的全部文件布局;
MDS遍历该文件的全部文件布局,将请求范围内的扩展段加入到文件布局返回结果中;
MDS将文件布局返回结果返回给客户端;
客户端根据返回的文件布局,将扩展段中的分配组地址映射到实际物理设备的地址,然后进行数据的读写,返回给应用层;
将请求范围内的扩展段加入到文件布局返回结果中之前,还包括:
判定扩展段有没有分配空间:
若扩展段没有分配空间,则向空闲空间管理模块申请空间,同时将该扩展段数据写入元数据文件系统,并加入文件布局返回结果中;
客户端根据返回的文件布局,将扩展段中的分配组地址映射到实际物理设备的地址,然后进行数据的读写,返回给应用层时,还包括:
客户端由用户显式请求或者定时刷回(pdflush线程)请求文件布局提交;
客户端提交已标记的待提交的扩展段,并传给MDS;
MDS接收到文件布局提交请求后,解析相应参数,查找提交文件的inode及文件对象;
MDS从元数据文件系统读取出该文件的全部文件布局;
MDS根据提交请求中扩展段的状态更新读取出的全部文件布局中扩展段的相应状态;
MDS将修改完成后的文件布局写回元数据文件系统,并将成功结果返回给客户端。
优选的,所述方法在客户端进行数据的读写时,还包括:
对进行修改后的扩展段进行标记。
优选的,所述方法在应用层通过VFS向文件系统发出读写请求之前,还包括:
元数据服务器根据用户空间传入的元数据设备构造参数选取元数据存储设备,并在其上建立专用的元数据文件系统;
元数据服务器根据用户空间传入的并行分配组的构造参数,扫描并查找到相应的共享块存储设备的物理设备,在该物理设备头部写入并行分配组标识信息,完成并行分配组(PAG)的添加,用于数据存储;
元数据服务器将新添加的并行分配组标识信息写入元数据文件系统的超级块中;
客户端与元数据服务器建立会话,并向元数据服务器请求获取并行文件系统的并行分配组列表;
客户端根据获得的并行分配组列表向元数据服务器请求获取每个并行分配组的信息,扫描并匹配到相应的共享块存储设备的物理设备,构建并行分配组的数据结构。
本发明还公布了一种对并行文件系统进行文件布局提取的装置,所述装置包括:
第一处理模块,用于完成应用层通过VFS向文件系统发出读写请求;
判定模块,用于完成客户端检查读写请求的文件布局是否存在且有效:
第二处理模块,用于当判定模块判定为是时,使用缓存且有效的文件布局;
第三处理模块,用于当判定模块判定为否时,向元数据服务器(Meta DataServer,MDS)请求获取文件布局:
第四处理模块,用于完成MDS接收到文件布局获取请求后,解析参数,获取请求文件的inode和文件对象;
第五处理模块,用于完成MDS到元数据文件系统读取该文件的全部文件布局;
第六处理模块,用于完成MDS遍历该文件的全部文件布局,将请求范围内的扩展段加入到文件布局返回结果中;还包括:判定子模块,用于判定扩展段有没有分配空间:第一处理子模块,用于当判定子模块判定为否时,向空闲空间管理模块申请空间,同时将该扩展段数据写入元数据文件系统,并加入文件布局返回结果中;
第七处理模块,用于完成MDS将文件布局返回结果返回给客户端;
第八处理模块,用于完成客户端根据返回的文件布局,将扩展段中的分配组地址映射到实际物理设备的地址,然后进行数据的读写,返回给应用层;还包括:第二处理子模块,用于完成客户端由用户显式请求或者定时刷回(pdflush线程)请求文件布局提交;
第三处理子模块,用于完成客户端提交已标记的待提交的扩展段,并传给MDS;
第四处理子模块,用于完成MDS接收到文件布局提交请求后,解析相应参数,查找提交文件的inode及文件对象;
第五处理子模块,用于完成MDS从元数据文件系统读取出该文件的全部文件布局;
第六处理子模块,用于完成MDS根据提交请求中扩展段的状态更新读取出的全部文件布局中扩展段的相应状态;
第七处理子模块,用于完成MDS将修改完成后的文件布局写回元数据文件系统,并将成功结果返回给客户端。
优选的,所述第八处理模块还包括:
第八处理子模块,用于对进行修改后的扩展段进行标记。
优选的,所述第八处理模块还包括:
第九处理子模块,用于完成MDS对更新后相邻的扩展段进行合并或者是分拆操作。
与现有技术相比,本发明具有以下优点:
本发明通过分离数据和元数据的管理与存储,避免了数据访问对元数据访问性能的干扰,简化元数据一致性的管理,也方便了元数据的性能优化;元数据服务器选取专用元数据存储设备,建立专用元数据文件系统,并行文件系统目录树、文件元数据等以文件的形式存储于元数据文件系统,元数据文件系统以B+树形式组织文件,提供了快速的文件读取性能;共享块存储设备被分为多个并行分配组,多个并行分配组可并行分配和回收空闲空间,每个并行分配组以B+树的形式独立管理其空闲空间;客户端与元数据服务器用扩展段方式表示文件布局,客户端向元数据服务器请求文件布局以提供客户端对共享块存储设备上的文件的直接访问,并向元数据服务器提交文件布局以完成修改,基于扩展段的文件布局表示方式减小了文件元数据的存储,也降低了元数据通信开销。
附图说明
图1是本发明实施例一所述的一种对并行文件系统进行文件布局提取的方法流程图;
图2是本发明实施例二所述的所需的硬件结构的示意图;
图3是本发明实施例二所述的软件结构的示意图;
图4是本发明实施例二所述的文件布局请求操作流程示意图;
图5是本发明实施例二所述的文件布局提交操作流程示意图;
图6是本发明实施例三所述的一种对并行文件系统进行文件布局提取的装置结构图。
具体实施方式
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。
实施例一:
参照图1,示出了本发明的所述的一种对并行文件系统进行文件布局提取的方法流程图,所述方法具体包括:
步骤S101,应用层通过VFS向文件系统发出读写请求;
需要说明的是,本实施例所述的方法是在共享块存储设备环境下的一种对非对称式文件系统进行文件布局提取的方法。具体的,共享块存储设备的非对称式并行文件系统由客户端、元数据服务器、共享存储设备三部分组成;客户端运行于集群中的服务器上,用于接收用户程序提交的文件系统操作请求,通过与元数据服务器的交互获取所提交请求中所需要的元数据信息,然后按照获取的元数据信息直接访问共享块存储设备,进行数据的读写。
元数据服务器是集群中指定的专用服务器,用于元数据信息的集中式管理;元数据服务器负责所有元数据的管理和存储操作,元数据包括并行文件系统元数据(如文件系统大小、物理设备信息等)、并行文件系统目录树元数据(如目录信息等)、文件元数据(如修改时间、文件布局等);元数据存储设备是指定的专用存储设备,用于存放元数据;元数据存储设备应当为高速可靠的设备,例如SSD(Solid State Drive),RAID阵列等;元数据文件系统是建立在元数据存储设备之上,用于管理元数据的专用文件系统;并行文件系统元数据存储于元数据文件系统的超级块中;并行文件系统目录树与所有文件元数据作为元数据文件系统的文件,以B+树的形式管理。
共享块存储设备,是集群中所有服务器均可以访问的存储设备集合,例如FC-SAN中所有的磁盘阵列;该存储访问协议可以为光纤通道、iSCSI等;共享块存储设备组建成存储区域网(Storage Area Network,SAN),提供服务器的直接存取访问。
在共享块存储设备中,用于存放并行文件系统文件数据的存储设备被称为数据存储设备;数据存储设备被划分为多个并行分配组(Parallel AllocationGroup,PAG);每个并行分配组负责自身的空闲空间管理,多个并行分配组可以并行地进行空间的申请与释放;每个并行分配组记录自身的并行分配组编号、该并行分配组中物理设备信息、管理空闲空间的B+树等信息,这些信息被称为并行分配组信息;并行文件系统中记录有该并行文件系统中所有并行分配组的数据结构,即并行分配组列表。
文件的逻辑地址到物理地址的映射采用基于扩展段(extent)的形式表示;扩展段记录了该数据段的文件偏移、并行分配组号、物理偏移、长度、扩展段状态等信息;扩展段状态分为有效(VALID)、无效(INVALID)和空(NONE)三种,分别表示正常状态、空间已分配但未使用和空间未分配;文件的文件布局(layout),即为该文件中所有的扩展段的集合;在客户端向元数据服务器请求或提交文件布局时,该文件布局请求或提交参数是客户端指定的文件偏移范围内的扩展段的集合;
并行文件系统分离了数据与元数据的管理与存储;目录的建立、删除等,文件的新建、读写等元数据操作由指定的元数据服务器管理;元数据服务器选取专用的元数据存储设备,建立元数据文件系统;所有的元数据信息,包括并行文件系统信息,并行文件系统目录树信息,以及所有文件的文件布局信息,均存储于元数据文件系统中;客户端对于元数据的请求和提交需要通过与元数据服务器的交互,由元数据服务器进行元数据存储空间的分配和实际存储设备的读写操作。
在元数据文件系统中,元数据文件系统的超级块记录了并行文件系统的元数据信息;元数据文件系统超级块的头部记录了元数据文件系统超级块(Master Super Block)、元数据空间管理位图、元数据文件系统日志、并行分配组列表等;其中,元数据文件系统超级块记录了元数据文件系统的块大小、空间大小、日志地址、并行分配组指针、元数据文件系统inode起始地址等;并行分配组列表记录了并行文件系统中所有并行分配组信息,包括并行分配组的个数、并行分配组的总块数、总空闲块数、以及每个并行分配组的信息;并行文件系统目录树与所有文件元数据以文件的形式存储于元数据文件系统上;元数据文件系统以B+树的形式管理这些文件。
元数据文件系统建立在元数据存储设备之上,元数据文件系统仅元数据服务器可见,对客户端不可见;元数据的存储是与并行文件系统的文件数据是分离存储的;元数据的管理由元数据服务器进行管理。
并行文件系统初始化步骤:
步骤(1)元数据服务器初始化
步骤(1.1)元数据服务器根据用户空间传入的元数据设备构造参数选取元数据存储设备,并在其上建立元数据文件系统;
步骤(1.2)元数据服务器添加并行分配组(PAG),用于数据存储;
步骤(1.2.1)元数据服务器通过光纤通道、iSCSI等协议扫描共享块存储设备的物理设备,建立物理设备链表的数据结构;
步骤(1.2.2)元数据服务器根据用户空间传入的并行分配组的构造参数,通过步骤(1.2.1)中获取的物理设备链表数据结构中查找相应的物理设备,并在其超级块(Super Block)中写入并行分配组标识信息;
步骤(1.2.3)元数据服务器将新添加的并行分配组标识信息写入元数据文件系统的超级块中;
步骤(1.2.4)如果并行分配组添加完成,则转步骤(1.3);否则,转步骤(1.2.2);
步骤(1.3)元数据服务器注册文件布局(Layout)操作方法,初始化通信模块,并启动元数据服务器监听进程;
步骤(2)客户端初始化
步骤(2.1)客户端向元数据服务器提交客户端ID,并获取元数据服务器ID;
步骤(2.2)客户端与元数据服务器建立会话;
步骤(2.3)客户端通过建立的会话与服务器端通信,建立并行文件系统的物理设备信息,并建立数据结构;
步骤(2.3.1)客户端向元数据服务器请求获取并行文件系统的并行分配组列表;
步骤(2.3.2)客户端根据步骤(2.3.1)中获得的并行分配组列表向元数据服务器请求获取每个并行分配组的信息;
步骤(2.3.3)客户端通过光纤通道、iSCSI等协议扫描共享存储设备的所有物理设备信息,建立物理设备链表的数据结构;
步骤(2.3.4)客户端根据步骤(2.3.2)中获取的并行分配组信息,从步骤(2.3.3)中的物理设备链表中查找相应的物理设备,并构建改并行分配组的数据结构;
步骤(2.3.5)如果所有并行分配组的数据结构均已构建完成,则转步骤(3);否则,转步骤(2.3.4);
步骤(3)并行文件系统初始化完成。
步骤S102,客户端检查读写请求的文件布局是否存在且有效:
若是,则执行:步骤S103,使用缓存且有效的文件布局;
若否,则执行:步骤S104,向元数据服务器(Meta Data Server,MDS)请求获取文件布局:
步骤S105,MDS接收到文件布局获取请求后,解析参数,获取请求文件的inode和文件对象;
步骤S106,MDS到元数据文件系统读取该文件的全部文件布局;
步骤S107,MDS遍历该文件的全部文件布局,将请求范围内的扩展段加入到文件布局返回结果中;
优选的,所述方法在将请求范围内的扩展段加入到文件布局返回结果中之前,还包括:
判定扩展段有没有分配空间:
若扩展段没有分配空间,则向空闲空间管理模块申请空间,同时将该扩展段数据写入元数据文件系统,并加入文件布局返回结果中。
步骤S108,MDS将文件布局返回结果返回给客户端;
步骤S109,客户端根据返回的文件布局,将扩展段中的分配组地址映射到实际物理设备的地址,然后进行数据的读写,返回给应用层。
并行文件系统用扩展段的形式表示文件内容与其存储物理位置的映射关系,即文件布局为扩展段的集合,客户端与元数据服务器的交互以文件布局的形式进行;扩展段以文件的形式存储于元数据文件系统中;
客户端与元数据服务器之间的文件元数据交换以文件布局的形式交换;客户端接收到读写请求后,由读写请求中的文件偏移与长度请求相应的文件布局;如果本地缓存了有效的文件布局,则根据本地缓存的文件布局访问共享块存储设备进行文件读写;否则需要向元数据文件系统请求相应的文件布局;元数据文件系统接收到文件布局请求后,在本地查找相应的扩展段加入到文件布局请求结果中;对未能查找到的扩展段,在并行分配组中分配空间后,将新添加的扩展段分别加入到文件的文件布局和当前的文件布局请求后返回。
具体实现中,文件布局获取可按照如下步骤:
步骤(1)客户端更新本地文件布局缓存;
步骤(1.1)客户端查找参数指定范围的文件布局是否存在;如果存在,则转步骤(1.2);如果不存在,则转步骤(1.4);
步骤(1.2)判断该文件布局是否有效;如果有效,则转步骤(3);
步骤(1.3)等待进程调度,直至该文件布局有效,转步骤(3);
步骤(1.4)设置文件布局请求参数
步骤(1.4.1)设置读写模式、文件偏移、布局类型等参数;
步骤(1.4.2)判断是否进行文件布局的预分配;如果不进行预分配,则转步骤(1.5);
步骤(1.4.3)判断读写模式;如果是读模式,则不进行预分配,文件布局请求长度为实际长度,转步骤(1.5);
步骤(1.4.4)判断当前文件布局的请求长度是否大于预分配长度;如果大于,则当前文件布局的请求长度不变;否则,设置为预分配长度;
步骤(1.5)设置RPC通信参数,包括请求报文、应答报文、回调函数等;并启动RPC通信,等待返回结果;
步骤(2)元数据服务器获取文件布局,并返回给客户端
步骤(2.1)元数据服务器监听进程接收到RPC请求后,调用获取文件布局的解码函数解析参数;
步骤(2.2)元数据服务器验证参数中请求状态、布局类型、读写模式等信息;
步骤(2.3)元数据服务器向元数据文件系统请求文件布局;
步骤(2.3.1)验证请求的文件布局状态;
步骤(2.3.2)向元数据文件系统请求文件布局请求中请求文件的条带化参数;如果该参数为条带化参数(条带宽度大于1),则按条带化方式依次查找相关并行分配组上的扩展段,加入文件布局请求结果;否则,顺序查找相关并行分配组上的扩展段,加入文件布局请求结果;
步骤(2.3.3)向元数据文件系统读取文件布局请求中请求文件的文件布局,即该请求文件的所有扩展段的集合;
步骤(2.3.4)元数据服务器根据文件布局请求中请求范围,从步骤(2.3.3)中获取的全部文件布局中查找到相应的扩展段,并加入文件布局请求结果;如果查找失败,则转步骤(2.4);否则继续步骤(2.3.4),直至请求范围内所有扩展段均已加入文件布局请求结果,然后转步骤(2.5);
步骤(2.4)元数据服务器分配新的扩展段空间,分别加入该文件的文件布局和请求文件布局的请求结果;
步骤(2.4.1)元数据服务器根据待分配的扩展段的文件偏移,与该文件已分配的文件布局比较,选取合适的并行分配组及物理偏移;
步骤(2.4.2)元数据服务器根据选取的并行分配组及物理偏移,以及待分配扩展段的请求长度,向空闲空间管理模块申请空间;
步骤(2.4.3)空闲空间管理模块修改空闲空间管理的B+树数据结构,并更新B+树,返回结果给元数据服务器;
步骤(2.4.4)元数据服务器根据返回的扩展段,判断是否可以合并文件布局中的扩展段信息;如果可以合并,则将相邻的可合并扩展段从原文件布局中删除,合并至当前扩展段;
步骤(2.4.5)将新申请的扩展段加入到该文件的文件布局中,同时也加入请求文件布局的请求结果,然后转步骤(2.3.4);
步骤(2.5)元数据服务器将请求的文件布局编码,返回给客户端;
步骤(3)客户端根据文件布局进行读写操作
步骤(3.1)客户端解析元数据服务器返回的文件布局请求结果;
步骤(3.2)客户端对文件布局请求结果中的扩展段依次处理;
步骤(3.2.1)客户端根据扩展段中的并行分配组及物理偏移,通过读取并行分配组列表数据结构,计算出物理设备ID以及该物理设备上的物理偏移;
步骤(3.2.2)根据计算的物理设备ID及该物理设备上的物理偏移,以及扩展段中的读写长度,通过光纤通道、iSCSI等通道直接到共享块存储设备进行数据读写请求;
步骤(3.2.3)判断该文件布局请求结果中所有扩展段是否均已被处理;如果是,则转步骤(3.3);否则,转步骤(3.2.1);
步骤(3.2.4)根据步骤(3.2.2)中的读写结果设置扩展段的状态;
步骤(3.3)返回读写数据结果。
优选的,所述步骤S109还包括:
客户端由用户显式请求或者定时刷回(pdflush线程)请求文件布局提交;
客户端提交已标记的待提交的扩展段,并传给MDS;
MDS接收到文件布局提交请求后,解析相应参数,查找提交文件的inode及文件对象;
MDS从元数据文件系统读取出该文件的全部文件布局;
MDS根据提交请求中扩展段的状态更新读取出的全部文件布局中扩展段的相应状态;
MDS将修改完成后的文件布局写回元数据文件系统,并将成功结果返回给客户端。
优选的,所述方法还包括:
对进行修改后的扩展段进行标记。
客户端接收到用户显示更改文件属性或者元数据服务器需要收回文件布局时,或者客户端定时刷回(pdflush)进程的周期结束时,客户端需要提交相应的文件布局;客户端使用了链表的结构维护缓存在当前客户端的文件的扩展段状态;在提交文件布局时,客户端通过扫描对应的扩展段的状态,将其提交元数据服务器;元数据服务器接收到提交的文件布局后,对文件的文件布局进行合并和调整操作。
优选的,所述方法在步骤S101之前,还包括:
元数据服务器根据用户空间传入的元数据设备构造参数选取元数据存储设备,并在其上建立专用的元数据文件系统;
元数据服务器根据用户空间传入的并行分配组的构造参数,扫描并查找到相应的共享块存储设备的物理设备,在该物理设备头部写入并行分配组标识信息,完成并行分配组(PAG)的添加,用于数据存储;
元数据服务器将新添加的并行分配组标识信息写入元数据文件系统的超级块中;
客户端与元数据服务器建立会话,并向元数据服务器请求获取并行文件系统的并行分配组列表;
客户端根据获得的并行分配组列表向元数据服务器请求获取每个并行分配组的信息,扫描并匹配到相应的共享块存储设备的物理设备,构建并行分配组的数据结构。
具体实现中,文件布局提交可按照如下步骤:
步骤(1)客户端写操作完成后,更新相关文件范围内扩展段状态,并向元数据服务器提交文件布局;
步骤(1.1)客户端完成写操作后,初始化当前操作相关文件布局的提交队列;
步骤(1.2)客户端根据写操作的文件偏移和长度,扫描记录该文件扩展段状态的链表查找该范围内的扩展段,并将找到的扩展段加入待提交的文件布局;
步骤(1.3)设置文件布局提交请求的文件偏移和长度,并设置文件布局标记为待提交状态;
步骤(1.4)调用RPC,向元数据服务器提交文件布局提交请求;
步骤(2)元数据服务器接收到客户端的文件布局提交请求,更新文件的文件布局;
步骤(2.1)元数据服务器监听进程接收到RPC请求后,调用提交文件布局的解码函数解析参数;
步骤(2.2)元数据服务器验证参数中请求状态、布局类型等信息,并由参数查找提交文件的inode;
步骤(2.3)元数据服务器向元数据文件系统提交文件布局;
步骤(2.3.1)元数据服务器由步骤(2.2)中的inode查找文件对象;
步骤(2.3.2)元数据服务器读取文件对象的条带化参数,判断是否为条带化方式放置于并行分配组之上;如果是条带化方式(条带化宽度大于1),则按照条带化方式计算文件布局中各扩展段的物理位置;否则,按照顺序方式计算文件布局中各扩展段的物理位置;
步骤(2.3.3)元数据服务器从元数据文件系统读取文件的文件布局,即该文件的所有扩展段;
步骤(2.3.4)元数据服务器遍历文件布局提交参数中的每个扩展段,对每个扩展段从文件的文件布局中查找对应的扩展段,并对查找出的扩展段拆分、合并或更新扩展段的信息;
步骤(2.3.5)元数据服务器将更新后的文件布局写入元数据文件系统;
步骤(2.4)元数据服务器修改该文件的扩展段数、最后修改时间(atime)等文件属性;
步骤(3)元数据服务器返回修改后的文件大小给客户端;
至此,文件布局提交操作完成。
结合应用环境来讲,本实施例所述的方法中分离了数据和元数据的管理和存储。所有的元数据操作需要交由元数据服务器操作,这避免了对称式结构下服务器之间复杂的分布式锁协议导致的巨大的通信开销。而且,由指定的元数据服务器进行元数据的管理,有利于元数据一致性的维护。数据与元数据的分离存储,既可以避免密集IO操作给元数据性能带来的影响,又可以使得元数据存储以比数据存储更可靠的方式(如RAID)存储,并且以比数据存储更高效的方式(如SSD)存储。
基于扩展段的文件布局给元数据的请求和提交带来了很大的灵活性。对于连续大文件的存储,相比于基于位图的元数据表示方式,基于扩展段的元数据可以利用很少量的元数据信息表示。在客户端与元数据服务器进行元数据交互时,基于扩展段的元数据表示方式可以方便地进行扩展段的分割、合并,保证以最少量的元数据信息表示文件布局,减少了元数据的传输和存储。
实施例二:
本实施例中将结合实际应用对本发明所述的方法做进一步的介绍,所需的硬件结构如图2所示,由客户端、元数据服务器、共享块存储设备(光纤磁盘阵列、iSCSI磁盘阵列等)、SAN网络、高速以太网组成。客户端以及元数据服务器与共享块存储设备可以用SAN网络互联,如光纤磁盘阵列等;也可用高速以太网互联,如iSCSI磁盘阵列等。客户端与元数据服务器的交互以高速以太网互联,软件结构如图3所示,由元数据服务器和客户端两部分组成。元数据服务器分为元数据管理模块、元数据文件系统、块设备驱动模块、通信模块;客户端分为并行文件系统客户端模块、块设备驱动模块、通信模块。
元数据管理模块的功能是通过通信模块接收和处理客户端的请求,向元数据文件系统请求和提交并行文件系统元数据。元数据文件系统用于管理并行文件系统元数据,并通过块设备驱动模块访问存储设备以存储并行文件系统元数据。块设备驱动模块提供了共享块设备上的读写驱动。通信模块采用RPC传输通信。
元数据存储,具体的文件元数据,包括文件属性、文件布局等,以文件的形式存放于元数据文件系统。文件布局以扩展段的形式表示,因而元数据文件系统存储每个文件的扩展段以记录该文件的文件布局。元数据文件系统中扩展段的数据结构:
每个扩展段的状态有下列几种:
其中,PNFS_BLOCK_READWRITE_DATA和PNFS_BLOCK_READ_DATA分别表示该扩展段为可读写和只读状态,均为有效状态;PNFS_BLOCK_INVALID_DATA表示该扩展段为无效状态,即该扩展段表示的范围已经分配空间,但是数据是无效的;PNFS_BLOCK_NONE_DATA表示该扩展段未分配空间,用于文件空洞(hole)。
并行文件系统目录树、文件元数据以文件的形式存储于元数据文件系统中,这些文件以B+树的形式进行管理。
数据存储,具体的,并行文件系统的数据存放于并行分配组中。共享块存储设备被分为多个并行分配组,每个分配组可以包含单个或多个块设备(block device)。块设备是虚拟的物理存储设备,可以是一块磁盘分区、物理磁盘、或者虚拟卷。并行分配组的数据结构如下:
其中,bv_type表示并行分配组类型,bv_size表示并行分配组的总容量,mds_blk_volume表示指向并行分配组中所有物理设备链表的指针,bv_dev、bv_stripe_unit、bv_offset分别表示该块设备自身、条带大小以及该块设备自身在所在物理设备上的偏移。
并行分配组类型有以下几种:
其中,PNFS_BLOCK_VOLUME_SIMPLE表示并行分配组由单个物理设备组成,PNFS_BLOCK_VOLUME_SLICE表示并行分配组由单个物理分区组成,PNFS_BLOCK_VOLUME_CONCAT表示并行分配组由多个物理设备以拼接的方式组成,PNFS_BLOCK_VOLUME_STRIPE表示并行分配组由多个物理设备以条带化方式组成。
数据被存放在并行分配组上,并行分配组的空闲空间由B+管理。空闲空间同样<起始块号,空闲块数>二元组的形式存储于B+树的叶子节点。空闲空间的数据结构如下:
其中,ar_startblock表示空闲空间的起始块号,ar_blockcount表示空闲空间的连续空闲块数。
元数据管理,具体的,元数据服务器在专用的元数据存储设备上建立元数据文件系统后,由自身负责元数据文件系统的读写,该文件系统对客户端是透明的。元数据服务器建立不同的并行分配组,由自身负责并行分配组空闲空间的分配与回收,同时导出并行文件系统的视图给客户端。
客户端挂载元数据服务器导出的视图时,需要先向元数据服务器请求并行文件系统的物理设备信息。客户端首先向元数据服务器请求并行文件系统中所有并行分配组的编号,然后根据再次请求每个并行分配组的信息。在接收到并行分配组信息后,客户端扫描共享块存储设备并匹配并行分配组信息,构建并行分配组的本地数据结构。
文件布局的请求与提交,具体的,客户端与元数据服务器请求和提交文件布局时,采用基于扩展段的表示方式。客户端和元数据服务器端的扩展段表示不完全相同。元数据服务器与客户端交互的扩展段数据结构,与元数据文件系统中扩展段数据结构一样,表示如下:
其中,bv_id是该扩展段所在并行分配组ID,be_f_offset是该扩展段的文件偏移,be_length是该扩展段的长度,be_v_offset是该扩展段在并行分配组上的物理偏移,be_state是该扩展段的状态。
客户端的扩展段的数据结构如下:
其中,iomode是扩展段的读写模式,offset是该扩展段的文件偏移,length是该扩展段的长度。而并行分配组的ID和其上的物理偏移,在请求文件布局时由文件布局请求命令的返回参数(redbud_layoutget_res)中给出,在提交文件布局时由文件布局提交命令的输入参数(pnfs_layoutcommit_arg)提供。
文件布局请求操作参数的数据结构(redbud_layoutget)中有输入参数(redbud_layoutget_arg)和返回参数(redbud_layoutget_res)两个重要的数据结构。
其中的主要字段有lseg、minlength、maxcount,分别表示该文件布局请求的扩展段、页缓存大小、扩展段最大个数。扩展段信息,包括了读写模式、文件偏移及长度。
其中主要字段有lseg、layout,分别表示该文件布局请求的扩展段、返回的文件布局。后者包含文件布局的扩展段个数及内容。
文件布局提交参数的数据结构(pnfs_layoutcommit_data)与文件布局请求参数的数据结构类似,包含有输入参数(redbud_layoutcommit_arg)和返回参数(redbud_layoutcommit_res)两个重要的数据结构。
其中重要的字段有inode、lseg、layoutdriver_data,分别表示待提交文件的inode、待提交文件的扩展段以及待提交的文件布局。这里的待提交的文件的扩展段是指客户端表示的待提交部分的文件偏移和长度;而待提交的文件布局则是待提交文件部分中不同状态的扩展段,以提交给元数据服务器进行处理。这里的待提交文件的文件布局是客户端通过块设备驱动程序模块处理而得。
其中重要字段有sizechanged、newsize,分别表示文件大小是否已经更改和新的文件大小。
元数据服务器负责元数据的管理和存储,客户端的读写操作所需元数据需要向元数据服务器请求或提交文件布局,然后再通过块设备驱动模块访问共享块设备。
文件布局请求操作流程示意图如图4所示。并行文件系统客户端接收VFS(Virtual File System)的读写请求。首先,判断本地是否缓存读写请求范围内的文件布局。如果存在,则通过块设备驱动模块将文件布局中扩展段中指定的并行分配组及其上偏移转换成物理存储设备及其上偏移,并通过SAN网络(用于光纤磁盘阵列等)或者高速以太网(用于iSCSI磁盘阵列等)直接访问共享块存储设备,完成数据读写。如果本地未缓存该读写请求范围内的文件布局,则需要向元数据服务器请求文件布局。客户端将文件布局请求(redbud_layoutget_arg)交给通信模块并设置文件布局请求回调函数,通过RPC协议与元数据服务器通信。
元数据服务器的通信模块接收到客户端的RPC通信后,由通信模块选择相应操作的解码函数解析请求参数,交给元数据管理模块处理。元数据管理模块向元数据文件系统读取请求文件的文件布局。元数据文件系统读取该文件的文件布局,并返回给元数据管理模块。元数据管理模块根据请求文件的文件范围,从读取的文件布局中查找相应的扩展段,并加入文件布局返回参数中。如果未能查找到相应的扩展段,则元数据管理模块向元数据文件系统请求分配空间。元数据文件系统通知并行分配组分配空间,并将新生成的扩展段加入该文件的文件布局,同时返回给元数据管理模块。元数据管理模块查找到所有扩展段后,将文件布局请求结果交给通信模块,由通信模块返回给客户端。
客户端接收到文件布局请求结果后,通过注册的回调函数对读写请求继续处理。客户端根据文件布局请求结果的扩展段,通过块设备驱动模块计算出实际物理存储设备的ID及其上偏移,然后由光纤通道、iSCSI等协议进行数据的读写。最后客户端将读写数据返回给用户。
文件布局提交操作流程示意图如图5所示。客户端在接收到用户显示更改文件属性或者元数据服务器需要收回文件布局时,或者客户端定时刷回(pdflush)进程的周期结束时,客户端需要提交相应的文件布局。客户端在写请求结束后,修改相关扩展块的状态,这些扩展块的状态由块设备驱动模块以链表的形式记录。当需要提交文件布局时,客户端通过块设备驱动模块将待提交的文件范围内的扩展段加入待提交文件布局,然后交给通信模块,由通信模块提交给元数据服务器。
元数据服务器的通信模块接收到文件布局提交操作后,调用相应操作的解析函数解析参数,并将参数交给元数据管理模块。元数据管理模块根据文件布局提交操作中的文件信息,向元数据文件系统读取该文件的文件布局。接着,元数据管理模块对待提交文件布局中的每个扩展段,查找该文件的文件布局中的相关扩展段,并进行这些扩展段的切分、合并、及状态更新操作。然后,元数据文件系统将该文件的文件布局写入元数据文件系统。元数据管理模块修改该文件的扩展段个数、最后修改时间等文件属性,并交由通信模块返回客户端新文件大小等信息。
客户端由通信模块接收到文件布局提交返回结果后,完成文件布局提交操作。
实施例三:
参照图6,示出了本发明的一种对并行文件系统进行文件布局提取的装置结构图,所述装置具体包括:
第一处理模块601,用于完成应用层通过VFS向文件系统发出读写请求;
判定模块602,用于完成客户端检查读写请求的文件布局是否存在且有效:
第二处理模块603,用于当判定模块判定为是时,使用缓存且有效的文件布局;
第三处理模块604,用于当判定模块判定为否时,向元数据服务器(MetaData Server,MDS)请求获取文件布局:
第四处理模块605,用于完成MDS接收到文件布局获取请求后,解析参数,获取请求文件的inode和文件对象;
第五处理模块606,用于完成MDS到元数据文件系统读取该文件的全部文件布局;
第六处理模块607,用于完成MDS遍历该文件的全部文件布局,将请求范围内的扩展段加入到文件布局返回结果中;
优选的,所述第六处理模块607还包括:
判定子模块6071,用于判定扩展段有没有分配空间:
第一处理子模块6072,用于当判定子模块判定为否时,向空闲空间管理模块申请空间,同时将该扩展段数据写入元数据文件系统,并加入文件布局返回结果中。
第七处理模块608,用于完成MDS将文件布局返回结果返回给客户端;
优选的,所述第八处理模块609还包括:
第二处理子模块6091,用于完成客户端由用户显式请求或者定时刷回(pdflush线程)请求文件布局提交;
第三处理子模块6092,用于完成客户端提交已标记的待提交的扩展段,并传给MDS;
第四处理子模块6093,用于完成MDS接收到文件布局提交请求后,解析相应参数,查找提交文件的inode及文件对象;
第五处理子模块6094,用于完成MDS从元数据文件系统读取出该文件的全部文件布局;
第六处理子模块6095,用于完成MDS根据提交请求中扩展段的状态更新读取出的全部文件布局中扩展段的相应状态;
第七处理子模块6096,用于完成MDS将修改完成后的文件布局写回元数据文件系统,并将成功结果返回给客户端。
优选的,所述第八处理模块609还包括:
第八处理子模块6097,用于对进行修改后的扩展段进行标记。
优选的,所述第八处理模块还包括:
第九处理子模块6098,用于完成MDS对更新后相邻的扩展段进行合并或者是分拆操作。
第八处理模块609,用于完成客户端根据返回的文件布局,将扩展段中的分配组地址映射到实际物理设备的地址,然后进行数据的读写,返回给应用层。
本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。对于装置实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上对本发明所提供的一种对并行文件系统进行文件布局提取的方法和装置进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
Claims (6)
1.一种对并行文件系统进行文件布局提取的方法,其特征在于,所述方法包括:
应用层通过虚拟文件系统(Virtual File System,VFS)向文件系统发出读写请求;
客户端检查读写请求的文件布局是否存在且有效:
若是,则使用缓存且有效的文件布局;
若否,则向元数据服务器(Meta Data Server,MDS)请求获取文件布局:
MDS接收到文件布局获取请求后,解析参数,获取请求文件的inode和文件对象;
MDS到元数据文件系统读取该文件的全部文件布局;
MDS遍历该文件的全部文件布局,将请求范围内的扩展段加入到文件布局返回结果中;
MDS将文件布局返回结果返回给客户端;
客户端根据返回的文件布局,将扩展段中的分配组地址映射到实际物理设备的地址,然后进行数据的读写,返回给应用层;
将请求范围内的扩展段加入到文件布局返回结果中之前,还包括:
判定扩展段有没有分配空间:
若扩展段没有分配空间,则向空闲空间管理模块申请空间,同时将该扩展段数据写入元数据文件系统,并加入文件布局返回结果中;
客户端根据返回的文件布局,将扩展段中的分配组地址映射到实际物理设备的地址,然后进行数据的读写,返回给应用层时,还包括:
客户端定时刷回pdflush线程请求或者由用户显式请求文件布局提交;
客户端提交已标记的待提交的扩展段,并传给MDS;
MDS接收到文件布局提交请求后,解析相应参数,查找提交文件的inode及文件对象;
MDS从元数据文件系统读取出该文件的全部文件布局;
MDS根据提交请求中扩展段的状态更新读取出的全部文件布局中扩展段的相应状态;
MDS将修改完成后的文件布局写回元数据文件系统,并将成功结果返回给客户端。
2.根据权利要求1所述的方法,其特征在于,所述方法在客户端进行数据的读写时,还包括:
对进行修改后的扩展段进行标记。
3.根据权利要求1所述的方法,其特征在于,所述方法在应用层通过VFS向文件系统发出读写请求之前,还包括:
元数据服务器根据用户空间传入的元数据设备构造参数选取元数据存储设备,并在其上建立专用的元数据文件系统;
元数据服务器根据用户空间传入的并行分配组的构造参数,扫描并查找到相应的共享块存储设备的物理设备,在该物理设备头部写入并行分配组标识信息,完成并行分配组(PAG)的添加,用于数据存储;
元数据服务器将新添加的并行分配组标识信息写入元数据文件系统的超级块中;
客户端与元数据服务器建立会话,并向元数据服务器请求获取并行文件系统的并行分配组列表;
客户端根据获得的并行分配组列表向元数据服务器请求获取每个并行分配组的信息,扫描并匹配到相应的共享块存储设备的物理设备,构建并行分配组的数据结构。
4.一种对并行文件系统进行文件布局提取的装置,其特征在于,所述装置包括:
第一处理模块,用于完成应用层通过虚拟文件系统(Virtual File System,VFS)向文件系统发出读写请求;
判定模块,用于完成客户端检查读写请求的文件布局是否存在且有效:
第二处理模块,用于当判定模块判定为是时,使用缓存且有效的文件布局;
第三处理模块,用于当判定模块判定为否时,向元数据服务器(Meta DataServer,MDS)请求获取文件布局:
第四处理模块,用于完成MDS接收到文件布局获取请求后,解析参数,获取请求文件的inode和文件对象;
第五处理模块,用于完成MDS到元数据文件系统读取该文件的全部文件布局;
第六处理模块,用于完成MDS遍历该文件的全部文件布局,将请求范围内的扩展段加入到文件布局返回结果中;还包括:判定子模块,用于判定扩展段有没有分配空间:第一处理子模块,用于当判定子模块判定为否时,向空闲空间管理模块申请空间,同时将该扩展段数据写入元数据文件系统,并加入文件布局返回结果中;
第七处理模块,用于完成MDS将文件布局返回结果返回给客户端;
第八处理模块,用于完成客户端根据返回的文件布局,将扩展段中的分配组地址映射到实际物理设备的地址,然后进行数据的读写,返回给应用层;还包括:第二处理子模块,用于完成客户端定时刷回pdflush线程请求或者由用户显式请求文件布局提交;
第三处理子模块,用于完成客户端提交已标记的待提交的扩展段,并传给MDS;
第四处理子模块,用于完成MDS接收到文件布局提交请求后,解析相应参数,查找提交文件的inode及文件对象;
第五处理子模块,用于完成MDS从元数据文件系统读取出该文件的全部文件布局;
第六处理子模块,用于完成MDS根据提交请求中扩展段的状态更新读取出的全部文件布局中扩展段的相应状态;
第七处理子模块,用于完成MDS将修改完成后的文件布局写回元数据文件系统,并将成功结果返回给客户端。
5.根据权利要求4所述的装置,其特征在于,所述第八处理模块还包括:
第八处理子模块,用于对进行修改后的扩展段进行标记。
6.根据权利要求4所述的装置,其特征在于,所述第八处理模块还包括:
第九处理子模块,用于完成MDS对更新后相邻的扩展段进行合并或者是分拆操作。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2011100035115A CN102164161B (zh) | 2011-01-10 | 2011-01-10 | 一种对并行文件系统进行文件布局提取的方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2011100035115A CN102164161B (zh) | 2011-01-10 | 2011-01-10 | 一种对并行文件系统进行文件布局提取的方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102164161A CN102164161A (zh) | 2011-08-24 |
CN102164161B true CN102164161B (zh) | 2013-12-04 |
Family
ID=44465133
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2011100035115A Expired - Fee Related CN102164161B (zh) | 2011-01-10 | 2011-01-10 | 一种对并行文件系统进行文件布局提取的方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102164161B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104794073A (zh) * | 2014-07-30 | 2015-07-22 | 北京中科同向信息技术有限公司 | 一种基于存储整合的技术 |
Families Citing this family (25)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102360382B (zh) * | 2011-10-13 | 2013-04-10 | 中国人民解放军国防科学技术大学 | 一种高速对象并行存储系统目录复制方法 |
US9524342B2 (en) * | 2011-12-21 | 2016-12-20 | The Boeing Company | Panoptic visualization document navigation |
JP6134514B2 (ja) * | 2012-03-23 | 2017-05-24 | ザ・ボーイング・カンパニーThe Boeing Company | パノラマ的な視覚化ドキュメントデータベース管理 |
CN103077055B (zh) * | 2012-12-31 | 2016-01-13 | 清华大学 | pNFS系统支持海量虚拟机在线启动运行的方法 |
CN103685453B (zh) * | 2013-09-11 | 2016-08-03 | 华中科技大学 | 一种云存储系统中元数据的获取方法 |
CN103561101A (zh) * | 2013-11-06 | 2014-02-05 | 中国联合网络通信集团有限公司 | 一种网络文件系统 |
CN105718484A (zh) * | 2014-12-04 | 2016-06-29 | 中兴通讯股份有限公司 | 写文件、读文件、删除文件、查询文件的方法及客户端 |
CN104571952B (zh) * | 2014-12-25 | 2017-08-01 | 华中科技大学 | 一种分开处理数据与元数据读写请求的方法 |
CN105306556A (zh) * | 2015-09-30 | 2016-02-03 | 深圳市先河系统技术有限公司 | 一种文件管理方法、服务器及网络附属存储设备 |
CN105701158A (zh) * | 2015-12-30 | 2016-06-22 | 浪潮(北京)电子信息产业有限公司 | 一种文件系统读写优化方法及框架 |
CN108228673B (zh) * | 2016-12-22 | 2021-09-03 | 上海凯翔信息科技有限公司 | 一种文件快速合并的方法和系统 |
CN108241632B (zh) * | 2016-12-23 | 2022-01-14 | 中科星图股份有限公司 | 一种面向数据库数据迁移的数据验证方法 |
CN107239569A (zh) * | 2017-06-27 | 2017-10-10 | 郑州云海信息技术有限公司 | 一种分布式文件系统子树存储方法及装置 |
CN109257396B (zh) * | 2017-07-12 | 2021-07-09 | 阿里巴巴集团控股有限公司 | 一种分布式锁调度方法及装置 |
CN107896248B (zh) * | 2017-11-13 | 2019-11-22 | 中山大学 | 一种基于客户端通信的并行文件系统应用方法 |
CN107958034A (zh) * | 2017-11-20 | 2018-04-24 | 郑州云海信息技术有限公司 | 分布式文件系统的inode号的分配方法、装置及介质 |
CN108595116B (zh) * | 2018-03-29 | 2021-04-20 | 浙江慧优科技有限公司 | 基于Oracle RAC集群数据读写性能优化方法 |
CN111209259B (zh) * | 2018-11-22 | 2023-09-05 | 杭州海康威视系统技术有限公司 | Nas分布式文件系统及数据处理方法 |
CN109871363A (zh) * | 2019-02-28 | 2019-06-11 | 苏州浪潮智能科技有限公司 | 一种冗余架构的共享文件系统及其搭建方法 |
CN111737204B (zh) * | 2020-06-12 | 2024-03-19 | 北京百度网讯科技有限公司 | 文件目录遍历方法、装置、设备和介质 |
CN112286897B (zh) * | 2020-10-10 | 2023-01-10 | 苏州浪潮智能科技有限公司 | 一种pnfs服务器与客户端通信的方法 |
CN112286456B (zh) * | 2020-10-27 | 2022-03-08 | 清华大学 | 存储方法及装置 |
CN113946291A (zh) * | 2021-10-20 | 2022-01-18 | 重庆紫光华山智安科技有限公司 | 数据访问方法、装置、存储节点及可读存储介质 |
CN114415971B (zh) * | 2022-03-25 | 2022-09-23 | 阿里云计算有限公司 | 数据处理方法以及装置 |
CN118012839B (zh) * | 2024-01-12 | 2024-09-20 | 湖南国科亿存信息科技有限公司 | 文件服务系统在用户态传递文件布局的方法、装置及系统 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101567003A (zh) * | 2009-05-27 | 2009-10-28 | 清华大学 | 并行文件系统中资源的管理和分配方法 |
CN101567805A (zh) * | 2009-05-22 | 2009-10-28 | 清华大学 | 并行文件系统发生故障后的恢复方法 |
-
2011
- 2011-01-10 CN CN2011100035115A patent/CN102164161B/zh not_active Expired - Fee Related
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101567805A (zh) * | 2009-05-22 | 2009-10-28 | 清华大学 | 并行文件系统发生故障后的恢复方法 |
CN101567003A (zh) * | 2009-05-27 | 2009-10-28 | 清华大学 | 并行文件系统中资源的管理和分配方法 |
Non-Patent Citations (2)
Title |
---|
《SAN并行文件系统中文件布局的设计与实现》;耿亮;《中国优秀硕士学位论文全文数据库信息科技辑》;20100831(第8期);11-29 * |
耿亮.《SAN并行文件系统中文件布局的设计与实现》.《中国优秀硕士学位论文全文数据库信息科技辑》.2010,(第8期),第11-27页. |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104794073A (zh) * | 2014-07-30 | 2015-07-22 | 北京中科同向信息技术有限公司 | 一种基于存储整合的技术 |
Also Published As
Publication number | Publication date |
---|---|
CN102164161A (zh) | 2011-08-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102164161B (zh) | 一种对并行文件系统进行文件布局提取的方法和装置 | |
US11868312B2 (en) | Snapshot storage and management within an object store | |
US7805568B2 (en) | Method and apparatus for data storage using striping specification identification | |
CN101567001B (zh) | 并行文件系统的元数据文件布局管理方法 | |
CN103502926B (zh) | 基于扩展区的存储架构 | |
US8504571B2 (en) | Directed placement of data in a redundant data storage system | |
Liao et al. | Multi-dimensional index on hadoop distributed file system | |
CN103002027B (zh) | 基于键值对系统实现树形目录结构的数据存储系统及方法 | |
CN102307206B (zh) | 基于云存储的快速访问虚拟机镜像的缓存系统的缓存方法 | |
US6850969B2 (en) | Lock-free file system | |
CN112236758A (zh) | 云存储分布式文件系统 | |
US20220382484A1 (en) | Gransets for managing consistency groups of dispersed storage items | |
US10503693B1 (en) | Method and system for parallel file operation in distributed data storage system with mixed types of storage media | |
CN105183400A (zh) | 一种基于内容寻址的对象存储方法和系统 | |
US8805797B2 (en) | Optimizing wide area network (WAN) traffic by providing home site deduplication information to a cache site | |
CN108540510B (zh) | 一种云主机创建方法、装置及云服务系统 | |
Gu et al. | Toward efficient and simplified distributed data intensive computing | |
CN110334145A (zh) | 数据处理的方法和装置 | |
WO2024021470A1 (zh) | 一种跨区域的数据调度方法、装置、设备及存储介质 | |
CN112334891A (zh) | 用于搜索服务器的集中式存储 | |
CN110008030A (zh) | 一种元数据访问的方法、系统及设备 | |
CN117312263A (zh) | 一种数据流转方法、系统、装置及可读存储介质 | |
CN117111856A (zh) | 一种数据湖数据处理方法、装置、系统、设备及介质 | |
US20200342065A1 (en) | Replicating user created snapshots | |
CN118708745A (zh) | 一种基于分布式文件系统的遥感影像处理方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20131204 |
|
CF01 | Termination of patent right due to non-payment of annual fee |