存储 频道

帮你Hold住"大数据" 文件系统选型指南

  二、走进文件系统家族:四大主流产品推荐

  显然,不是所有企业的IT需求都是一样的,而识别和选择适合特定应用标准的文件系统对各企业来说也是一个不小挑战。要做出正确的决定,我们首先要了解这些产品。笔者将盘点如下四款市场主流的文件系统,并评估比较它们在企业可能的使用情况下的性能表现。

  NetApp WAFL:谱写独立式文件系统传奇

  WAFL是NetApp专为NAS系统而设计的核心文件系统,同时也是“Write Anywhere File Layout”即“任意位置写入文件布局”的缩写。WAFL文件系统运行于NetApp专用操作系统DATA ONTAP上,和Filer的整合式RAID管理一样,均采用一体化设计,以避免大多数带有RAID管理机制的文件系统所固有的性能问题。

  WAFL的一大优势便是具有跨越各种协议的能力,无论是基于块的协议,还是基于文件的协议,无论是光纤通道还是iSCSI。由于WAFL集成了RAID-DP(NetApp高性能RAID-6),因此它能够在一两个磁盘驱动器发生故障的情况下保证系统的正常运转。NetApp还被认为是快照技术的先驱,而快照技术也是WAFL文件系统的一部分。

  WAFL使用文件来存储元数据。它有三个最重要的元数据文件:Inode文件,包含文件系统所有的Inode;块图文件,用以识别空闲块;Inode图文件,用以识别空闲Inode。

  这里采用的“图”不是“位图”的称谓。其中,每一个WAFL inode包含16个块指针,用以表明哪一个数据块属于该文件。不同于伯克利快速文件系统,一个WAFL inode的所有块指针指向的是相同层次上的数据块。这样,对于小于64KB的文件,inode使用16个块指针指向文件数据块;大于64MB的文件,inode使用块指针指向间接数据块,间接数据块再指向实际的文件数据块。较大文件的inode指向更多的间接数据块。对于十分小的文件,数据存储在inode本身。

  我们可以简单的把WAFL理解为数据块树型结构,在树的根部是Root inode,Root inode是用以描述inode文件的特殊inode。该inode文件包含描述系统中其它文件的inode,包括块图和inode图文件。WAFL文件系统数据块树型结构的树叶是所有文件的数据块。

NetApp WAFL:谱写独立式文件系统传奇

  图:WAFL的树型结构示例图

  由上图所示,文件由不同的数据块组成。较大的文件在inode和实际数据块之间存在额外的间接层次。WAFL要启动的话,必须要找到该树型结构的根部,所以对于WAFL(任意位置写入文件布局)来讲,root inode是个例外,它必须处于硬盘上的固定位置以便WAFL定位。

  WAFL的主要特点及优势还包括:

  1.永远一致性的文件系统:任何时刻文件系统均处于一致性的状态,即使遇到非正常断电或不正常关机后,也不需执行硬盘检查,即可在复电后2分钟内迅速提供服务。

  2.具电池保护的NVRAM日志:利用存取速度较硬盘快一千倍的内存,担任文件系统的日志,同时保护metadata及data的交易纪录,并加速写入的效率和反应时间、保证文件系统的一致性、保证写入的交易不会因断电而流失。

  3.内建智能型非常好的化的RAID磁盘阵列管理系统:配合NVRAM日志功能,藉由硬盘区块的配置非常好的化,可将大量的随机写入转为少量的循序写入,真正达到平行写入 (Stripe Write) 并减少磁头移动的次数和磁头移动的距离的目的,加速文件存取和搜寻的速度。

  4.能增长的文件系统:不需其它软件的协助,就可直接实时动态线上扩增文件系统容量且立刻能使用新增加的容量。每次可只增加一块硬盘或多块硬盘的方式来扩增,完全不需要停机,也不需要等待时间。另外也可在不扩增容量的前提下,动态线上提高文件数量的上限,完全不需要停机,也不需要等待时间,也不影响系统运作效率。

  5.瞬间快照备份 (Snapshot):使用不需要移动硬盘区块的WAFL专利技术,可瞬间备份整个文件系统,每个volume可有255份快照,每个使用者都有自己专属的一个快照目录,可自行恢复只属于自己在任一快照时间点的资料,完全不需系统管理人员的协助。每个快照备份皆是完整的文件系统备份 (Full File System Backup),不论已有多少份数的备份,系统运作效率皆不受影响。

  NetApp NFS高级技术总监Michael Eisler表示:“如果在硬件或者软件发生故障之前一致性点(快照)没有被写入到磁盘中,那么一旦重启Data ONTAP,NVRAM日志内容就会重新提交给WAFL,然后一致性点被写入到磁盘中。NetApp的大多数竞争对手都拥有快照技术,但是NetApp利用自己的底层快照技术开发出了像文件系统层级的监控、备份集成、克隆、重复数据删除和数据保留等功能,在网络存储设备和WAFL之间进行分配。”

  不过世事无完美,NetApp WAFL对于纯粹的块访问设备来说,也有两大技术弱势:第一,块必须按照进入或者出去的顺序通过文件系统层;第二,随着系统的增大,日志也持续增长,导致随着系统的增长,系统可能会崩溃。因此NetApp总给人无法担当关键业务应用的印象。

8
相关文章