Data ONTAP
Data ONTAP的结构组成分为三个部分:接口部分、通讯协议部分、文件系统WAFL和整合式RAID磁盘阵列系统。
接口部分可以分为:网络接口和光纤接口。
通讯协议部分可以分为:文件协议(NFS、CIFS、HTTP和DAFS)和块协议(FCP、iSCSI)。
Data ONTAP提供进程创建、内存分配、消息传递和中断处理等基本服务。
WAFL文件系统
WAFL文件系统和整合式RAID的一体化设计解决了文件系统带有RAID管理机制时固有的性能问题。
WAFL文件系统可以更有效的操控RAID机制;可以在增加新的磁盘的时候,保证文件系统动态的增长;可以避免使主机的文件系统承担耗时的一致性检查。
WAFL是一种与UNIX兼容的文件系统,并且针对网络文件访问进行了优化。
WAFL文件系统与UNIX文件系统的相似之处在于:
1.
WAFL是基于数据块的,使用没有片段的4KB大小的数据块。
2.
WAFL使用inode来描述其文件。
3.
WAFL文件系统中,目录是特殊格式的文件。
WAFL文件系统有三个最重要的元数据文件:
1.
inode文件:包含文件系统所有的inode。
2.
块图文件:用来识别空闲的数据块。
3.
inode图文件:用于识别空闲的inode。
WAFL可以理解为数据块树型结构,根是root inode,叶是所有文件的数据块。root inode是用于描述inode文件的特殊inode,因此WAFL的root inode位于硬盘上的固定位置,以便于启动的时候定位。inode文件包含描述系统中其他文件的inode,包括块图文件和inode图文件。
WAFL包含16个块指针,用于说明哪一个数据块属于该文件。WAFL inode的所有的块指针指向的是相同层次上的数据块。
针对小于64KB的文件,inode使用16个块指针执行文件数据块。针对大于64KB的文件,inode使用块指针指向间接的数据块,间接数据块在执行实际的文件数据块。文件越大,inode使用的间接数据块越多。针对非常小的文件,inode可以将数据保存在inode的内部。
WAFL使用文件的形式来保存数据,具有以下的好处:
1.
允许在硬盘上的任意位置写入元数据块,数据块不是被永久地分配到固定的磁盘位置。WAFL可以控制对同一RAID条带的写入操作。
2.
使文件系统的增长变得十分容易。增加新的硬盘时,可以自动增加元数据文件的大小,也可以手工增加文件系统中inode。允许元数据块在硬盘上任何地方写入。
WAFL采用批次动态条带化读写算法。
当服务器端和客户端高速缓存增大的时候,对写入操作的响应主导了I/O子系统的处理过程。
WAFL文件系统通过批次动态条带化读写算法的三种机制优化了性能:
1.
WAFL把文件系统的任意数据(除root inode数据外)可以写入到磁盘中的任意位置上。可以将inode和数据块在磁盘上紧邻的位置进行存储。
2.
WAFL能够把数据按照任何顺序写入到磁盘中。这是因为WAFL文件系统的映像文件只有在写入一致点信息时才会改变。
3.
WAFL文件系统能够在单一写入周期中为多个NFS操作同时分配空间。WAFL文件系统在达到一致点之前可以收集大量的NFS的请求,在到达一致性点后立刻为NFS请求分配存储空间。这种延缓分配写入空间的机制通过从应答处理的过程中去除磁盘分配时间的方式优化了NFS操作的等待时间。
Filer启动时,WAFL总是采用时间点最近的一致点版本启动。WAFL采用内存而不是硬盘来保存日志,提高系统性能。当NVRAM收集写入请求达到某种条件时,WAFL会经过计算、整理后在批次写入到硬盘。其工作情况如下:
1.
当Filer正常关闭时,NVRAM不包含任何未处理的NFS请求,NVRAM将被自动关闭,以延长电池寿命。
2.
在系统正常关闭的规程下,文件管理器先关闭NFS和CIFS服务,将所有缓存中的操作写入磁盘,然后关闭NVRAM。
3.
在系统掉电或其它非正常情况下,电池会保护保存在NVRAM里的数据,系统也会自动重现保存在NVRAM中,但是尚未转存到磁盘上的NFS与CIFS请求。
WAFL实际上把NVRAM划分为两个独立的日志报告,当一份日志写满,WAFL转换到另一部分日志,并且开始写一致点。
WAFL的NVRAM不象其它系统那样只作为硬盘的缓存,而是同时保存数据和IO的读写日志记录。
NetApp数据保护机制
NetApp提供的针对数据的在线保护机制包括:
1.
硬盘区块验证系统:在记录数据的块上加写校验码在磁盘上。通过校验码检查块数据是否发生错误,利用RAID机制来修改错误的数据。
2.
硬盘扇区检查系统:系统每周自动扫描硬盘的所有区块,尽早发现故障的扇区,提供安全、稳定的硬盘环境。
3.
文件系统在线检查系统。
NetApp RAID机制
NetApp采用了增强型的RAID 4技术,与传统的RAID 4技术相比,NetApp RAID 4+技术结合WAFL文件系统消除了RAID校验盘成为热点盘,形成系统瓶颈,影响系统性能的问题。
RAID DP是NetApp推出的双奇偶校验RAID。
RAID组是建立卷的基本结构,一个卷可以包含一个或多个RAID组。
RAID DP的奇偶校验包含一个传统的水平奇偶校验和一个对角线奇偶校验,即使同一个RAID组上的两个磁盘发生故障时也能得到数据保护。
在RAID DP中,仍然使用了传统的RAID 4水平奇偶校验结构,并且这种结构已成为RAID DP结构的子结构。RAID DP结构是RAID 4水平行奇偶校验方案的超集。
SyncMirror
SyncMirror与DataONTAP无缝集成在一起,可以通过联机来维护两个数据副本,保护数据不受到任何类型的硬件故障的影响。SyncMirror具有完全冗余性的最高的数据可用性,可以保证业务的连续性。
SyncMirror在镜像数据的两个副本之间保持严格的物理隔离,同时允许执行简单的名利以分离数据副本,提供其他应用使用。
部署模型
NetApp的主存储FAS系列设备有两种实现模型:单机Stand-Alone和双机集群Cluster-Failover。
单机Stand-Alone由一个存储控制器和若干磁盘架通过冗余光通道链路连接。
NetApp Cluster-Failover模型安装在一对NetApp Filer上,通过将不可用的Filer的数据服务转移到集群中的另一个Filer来确保数据的可用性。数据服务的转移是透明的。
SAN和NAS
NAS在UNIX环境下使用NFS协议,在Windows环境下使用CIFS协议。
FC-SAN的存储设备使用连接主机的文件系统,数据传输协议使用FCP,资料存取协议使用SCSI协议。
针对NAS,主机在进行资料存取时,不通过主机的文件系统,因此,主机不需要负担存取资料室的硬盘区块I/O。而SAN所连接的主机仍必需负担硬盘区块I/O的负载。
SAN和NAS的区别在于传递的内容是数据块还是文件,根本来说就是文件系统的位置在哪里。
NAS和SAN进行融合的方式主要有两种:
1.
在SAN设备前增加NAS网关;
2.
使用NetApp的统一存储系统
采用在SAN设备前增加NAS网关的方式实现NAS和SAN融合时,需要在原SAN宿主设备上划分出物理隔离的一部分空间供NAS网关来使用,彼此之间的存储空间无法有效利用,且存在两套设备。NetApp的统一存储系统是NAS到SAN的支持,只要增加支持FCP和iSCSI协议就可以,两部分可以共同有效地使用虚拟化的存储空间。