【干货】SAN vs. NAS:两种存储系统架构的比较

通过对 SAN 和 NAS 的比较,人们可以了解采用这两种存储系统架构时要考虑的事项。对象存储和云计算也会影响可用的存储选项。

存储区域网络 (SAN) 是以一种结构连接的存储,通常通过交换机连接,使许多不同的服务器能够轻松访问存储设备。从服务器应用程序和操作系统的角度来看,访问 SAN 中的数据存储或直接连接的存储之间没有明显区别。存储区域网络 (SAN) 与直接连接存储 (DAS) 一样,可以对数据进行块访问。

网络附加存储 (NAS) 是一种远程文件服务方法。它不是在文件系统上使用软件,而是使用远程协议 (如 SMB 或 NFS) 将文件访问重定向到另一设备。该设备作为具有自己的文件系统的服务器运行,处理文件 I/O,并启用文件共享和集中数据管理。

SAN 与 NAS 的决策通常归结为用户存储的数据类型。在比较 SAN 与 NAS 时,请记住 NAS 最终会将文件 I/O 请求转换为附加到其上的存储设备的块访问。SAN 也是结构化数据的首选,结构化数据是驻留在关系数据库中的数据。虽然 NAS 可以处理结构化数据,但它通常用于非结构化数据,非结构化数据主要由文件、电子邮件、社交媒体、图像、视频、通信以及关系数据库之外的几乎任何类型的数据组成。

用于存储的对象 I/O 变得更加普遍,这主要归功于其在云存储中的巨大用途。因此,与块存储一起使用的 SAN 与具有文件存储的 NAS 之间的明显区别变得模糊。

当供应商从块或文件转移到对象 I/O 以满足其存储需求时,用户仍然希望以他们习惯的方式访问数据:块存储用于 SAN 或文件存储用于 NAS。供应商提供的系统具有前端系统,可呈现 NAS 或 SAN 体验,而后端则基于对象存储。

文件 vs. 块 vs 对象

文件 I/O 以与用户在计算机上的驱动器上相同的方式读取和写入数据,使用分层结构,文件夹内的文件可以位于更多文件夹中。NAS 系统通常使用这种方法,它有许多好处:

•当使用 NFS 和 SMB(最常见的 NAS 协议) 时,用户可以像本地和外部驱动器一样复制和粘贴文件或整个文件夹。

•IT 部门可以轻松管理这些系统。

块 I/O 将每个文件或文件夹视为更小数据位的各种块,并将每个块的多个副本分布在 SAN 系统中的各种驱动器和设备上。这种方法的好处包括:

•更高的数据可靠性。如果一个驱动器或多个驱动器发生故障,仍可访问数据。

•更快的访问。文件可以从最靠近用户的块重新组装,不需要通过文件夹层次结构。

对象 I/O 存储将每个文件视为单个对象,类似于文件 I/O,并且没有嵌套文件夹的层次结构,如块 I/O。使用对象存储,所有文件或对象都放入一个巨大的数据池或平面数据库中。基于已经与文件相关联或由对象存储操作系统 (OS) 添加的元数据来找到文件。

对象存储是三种方法中最慢的,主要用于云文件存储。但是,访问元数据的方式的最新进展以及对快速闪存驱动器的使用的增加缩小了对象、文件和块之间的速度差距。

NAS vs.SAN 的使用

SAN 与 NAS 的主要区别在于每种类型的存储方式对用户的影响。

NAS 系统或设备通过标准以太网连接到网络,因此在用户看来就像任何其他网络连接设备一样。用户连接到 NAS 访问它上面的文件。NAS 设备具有管理用户计算机请求的任何数据的写入和读取的操作系统。

一旦将其安装在用户的计算机上,SAN 将显示为本地驱动器。这意味着它将作为本地驱动器运行,用户计算机上的操作系统将处理读取或写入数据的命令。这使用户可以像对待任何其他本地驱动器一样对待它,包括在其上面安装软件的能力。

SAN vs.NAS 的连接

NAS 系统可以是单个设备中的一个服务器或一组驱动器或服务器。这可以让 NAS 系统直接连接到网络,通常使用连接到以太网交换机的以太网电缆。

相反,SAN 是由网络结构 (如 iSCSI 或光纤通道) 连接在一起的驱动器、设备或服务器池。

以太网和光纤网络多年来一直以速度为基础进行竞争。然而,这种优势一直体现在结构上,因为它具有更直接的连接,而不必通过以太网连接的 TCP/IP 处理。鉴于此,当数据速度相等时,结构最终具有 I/O 速度优势,因为当数据在存储和用户之间传输时,数据的接触次数较少。

NAS 的优势

易用性是 NAS 的一个关键优势。NAS 系统中的元数据具有层次性和可读性。用户可以使用简单的文件系统浏览器来查看文件名,并将它们组织成易于命名的文件夹。

使用 NAS,用户可以协作和共享数据,无论他们身在何处。NAS 可以轻松地从任何联网设备访问文件和文件夹。

NAS 还以低于 SAN 的成本提供高容量。NAS 设备将存储合并到一个地方,并支持数据管理和保护任务,如归档、备份和云存储。NAS 可以处理非结构化数据,例如音频、视频、网站、文本文件和微软 Office 文档。

NAS 设备可以配备更多或更大的磁盘以扩展存储容量。这种方法称为放大 NAS。它们也可以聚集在一起以进行横向扩展存储。高端 NAS 设备可以容纳足够的磁盘来支持 RAID。

NAS 支持兼容便携式操作系统接口的文件访问,便于集中管理安全性和文件访问,并确保多个应用程序可以共享横向扩展 NAS 设备,而无需一个应用程序覆盖另一个应用程序正在使用的文件。

NAS 的缺点

NAS 速度不够快,无法满足高性能应用的需求。如果有太多的用户在同时请求系统的情况下可能让系统崩溃,它可能会进一步减速。然而,在更新的 NAS 系统中,无论是与 HDD 结合使用还是作为全闪存系统,都可以缓解速度问题。

NAS 可能会出现可扩展性问题。添加太多 NAS 设备可能导致 NAS 蔓延,尤其是在必须单独管理所有设备的情况下。集群或横向扩展 NAS 被设计用于缓解该问题。

数据完整性可能会成为一个问题,因为文件系统会在逻辑或物理磁盘卷中存储元数据和文件内容。如果文件服务器断电,系统必须执行文件系统检查 (也称为 fsck) 以验证数据的状态。根据 NAS 系统,执行文件系统检查 (也称为 fsck) 所涉及的延迟可能很大。

NAS 使用 RAID 也可能存在问题,因为 RAID 达到了可扩展性限制。重建时间可能需要数天的时间,这种情况只会随着多 TB 容量驱动器变得更加普遍而变得更糟。

SAN 的优点

SAN 将原始存储视为 IT 可以在需要时集中管理和分配的资源池。由于 SAN 通过网络结构连接,因此使用 SAN 的数据传输和访问速度比 NAS 快,所有一切都如此。

SAN 系统具有高度可扩展性。可以根据需要添加容量。部署 SAN 的其他原因包括持续可用性和弹性。高可用性 SAN 设计为没有单点故障,从高可用性 SAN 磁盘阵列和带有冗余关键组件和 SAN 冗余连接的交换机开始。

SAN 的缺点

成本和复杂性是 SAN 的主要缺点。这些系统的硬件很昂贵,而构建和管理它们需要专业知识和技能。

SAN 远比 NAS 复杂,有专用线缆,通常是光纤通道,但可以使用以太网,以及专用交换机和存储硬件。光纤是专门为存储而开发的,因为在过去十年中,在协议取得进展之前,以太网不够可靠,无法传输数据块。但光纤通道 SAN 需要专业知识以及专用连接。

虽然 SAN 具有高度可扩展性,但垂直扩展 SAN 阵列的能力有限。一旦达到向上扩展限制,就必须移动到更高性能的存储阵列或添加多个存储阵列。越来越多的 SAN 磁盘阵列通过支持横向扩展来避免这个问题,其中添加了可同时扩展容量和性能的存储节点。

DAS 如何适应

DAS(直连式存储) 是未连接到网络的专用服务器或存储设备。DAS 最简单的例子是计算机的硬盘。要访问 DAS 上的文件,用户必须能够访问物理存储设备。

DAS 可以胜过 NAS,特别是对于计算密集型软件程序。但是在使用 DAS 时,必须单独管理每个设备上的存储,从而增加了系统管理的复杂性。DAS 系统通常不提供 SAN 和 NAS 中常见的高级存储管理特性,如复制、快照和瘦配置。

DAS 也不能实现多个用户之间的共享存储。并且因为只有一个主机访问 DAS 设备,所以只有一部分可用存储最终被使用。

统一存储的兴起

统一存储的出现使存储管理员可以灵活地在同一阵列上运行块或文件。这些多协议系统在一个存储平台上整合基于 SAN 块的数据和基于 NAS 文件的数据。客户可以从 SAN 或 NAS 开始,稍后再添加支持和适当的连接。或者他们可以购买支持 SAN 和 NAS 的存储阵列。

统一存储的优缺点

《计算机周刊》编辑 Antony Adshead 与 GlassHouse 公司前技术顾问 (现为戴尔 EMC 的顾问工程师)Andrew White 谈论统一存储的挑战和好处。

统一存储使用文件和块协议。它可以使用文件协议 (如 SMB 和 NFS) 以及块协议(如 FC 和 iSCSI)。

这些系统的一个优点是它们比传统存储系统需要更少的硬件。更新的统一存储产品正在整合云存储和存储虚拟化。

主板可能孕育未来

如今最大的动作和兴奋来自于通过结构扩展非易失性存储器 (NVMe) 协议。

NVMe 协议是将闪存设备直接连接到计算机主板的最快方式,通过外围组件互连高速总线进行通信。它的性能远远超过通过 SATA 连接的 SSD 硬盘。想象一下,如果可以在整个 SAN 系统上整合这种快速的 NVMe 连接将会有什么样的体验。

公平地说,NVMe 不能用于在远程最终用户和存储阵列之间传输数据,因此必须使用消息传递层。这使得 NVMe 看起来更像是一个以太网连接的 NAS 系统,它使用以太网的 TCP / IP 协议来处理数据移动。但 NVMe over Fabrics 开发人员正致力于使用远程直接内存访问 (RDMA) 来使该消息传递层对速度的影响最小。在提出的各种类型的 RDMA 中,有融合以太网上的 RDMA,全球互联网广域 RDMA 协议和 InfiniBand,它们被用于高性能计算系统。