题 SAN,NAS和DAS有什么区别?


SAN,NAS和DAS有什么区别?


61
2017-11-05 13:35






答案:


首先,最好定义块设备和文件系统之间的区别。如果您熟悉UNIX,则更容易理解,因为它可以客观地区分这两者。 Windows仍然是一样的。

  • 一个 块设备 是原始磁盘的句柄。
    • /dev/sda 对于磁盘或 /dev/sda1 对于该磁盘上的分区。
  • 一个 文件系统 在块设备的顶部分层,以便存储数据。然后你可以安装它。
    • mount /dev/sda1 /mnt/somepath

考虑到这些术语,可以更容易地看出以下内容之间的区别。

  • DAS 是来自磁盘的块设备,物理上[直接]连接到主机。
    • 您必须先将文件系统放在其上才能使用它。
    • 这样做的技术包括IDE,SCSI,SATA等。
  • SAN 是通过网络传送的块设备。
    • 与DAS一样,在使用之前,您仍必须在其上放置文件系统。
    • 这样做的技术包括FibreChannel,iSCSI,FoE等。
  • NAS 是通过网络传递的文件系统。
    • 它已准备好安装和使用。
    • 执行此操作的技术包括NFS,CIFS,AFS等。

enter image description here


102
2017-11-05 14:19



+1 - 干得好。很好地阐明了SAN和NAS之间的区别。 - Evan Anderson
我不同意NAS的定义。 Dan Carley所描述的实际上是一个网络文件系统。 NAS是提供网络文件系统的设备。设备特性至关重要。带有NFS服务器的home-build linux盒子不是NAS。 - dmeister
我不同意你不是NAS的定义。如果您构建一个Linux服务器并使用现有文件系统将其用于存储,并使用已建立的网络协议(如答案中所述的CIFS,AFP等)进行共享,那么它实际上就是网络连接存储。我认为你对缩写NAS感到困惑,假设'A'意味着设备。确实,大量的NAS'是设备,但仅仅因为一些NAS是设备,并不排除所有NAS都是设备。 - Dan
@Dan那么文件服务器和NAS之间没有任何区别? - Richard Gadsden
@Dan,您将iscsi列为SAN和DAS。但iSCSI不符合DAS定义。 NAS =网络附加存储,使用该定义和您的松散定义,SAN和NAS是等效的。我认为你应该重新修改歧义。传统上一直使用NAS来指代使用NFS,CIFS等共享文件系统的专用设备.DAS =使用SATA或USB等直接连接.SAN通常是高端光纤通道或也可以是iscsi。许多NAS设备现在都支持iSCSI。得到它了? - Matt


我想多次问过这个问题,我想改进这个问题的答案。

如果你问的不同之处 DAS - NAS  - SAN 你在数据存储环境中;在这个领域,存在着许多共同的共同目标的技术: 数据的持久性和可用性

阻止设备和文件系统

大多数存储设备共享相同的物理和逻辑结构,为了能够找到所需的数据,您需要一种方法来识别数据所在的位置,因此这就是为什么硬盘驱动器具有的原因 行业 (或简称““),在许多情况下,这反映了写入物理介质的数据的布局。 但是通过寻址扇区号来访问数据虽然不是很复杂,但这是一种容易出错的方法,你必须自己跟踪你写的数据和你写的扇区。所以这就是一个地方 文件系统 拯救一个简单的文件系统将帮助您解决使用的块并为您提供检索数据的通用接口,最常用的范例是 文件夹/文件 结构(这就是为什么它被称为a 文件-系统)。

所以基本上一个文件系统为你留下了一个非常简单的数据接口,并负责管理和记住它放置你的东西的块/扇区,通常在文件系统中你不会引用块号来获得你的数据,但文件名。这解释了a之间的区别  设备和 文件系统,文件系统必须驻留在块设备上。

DAS

最简单的存储是连接到计算机/服务器的硬盘。硬盘驱动器需要以某种方式进行通信,并且需要使用定义良好的物理接口和协议才能使计算机理解它们,目前PC上最常用的接口和协议是S-ATA或串行ATA或串行高级技术附件。因此,通过与PC相同的接口物理连接的硬盘被识别为 直接附加存储 要么 DAS 简而言之。为了说清楚, ANY   直接连接到您的系统的设备制作DAS,甚至USB棒也是DAS(但在这种情况下接口是USB)。 除非您按块编号访问磁盘,否则您需要一个文件系统才能充分利用它。

NAS

但是,如果您可以将文件系统访问其他计算机(用于传输文件),该怎么办?多年来已经创建了许多协议来在网络上与其他计算机轻松实现文件共享,例如我将仅命名主要的每个操作系统:UNIX等 - NFS,DOS / Windows - CIFS / aka.SMB, Apple - 法新社。 他们所做的是通过网络共享文件,当然文件意味着底层文件系统结构,文件系统意味着块设备,但因为它是通过网络完成的,所以它被称为NAS - 网络附加存储。所有这些接口都明确禁止远程查找块地址(出于安全原因),通常甚至不实现这样的接口。网络文件系统可以被认为足够安全以便以并发方式使用,协议实现将处理由于并发访问相同资源(文件)而导致的问题,通常是通过将文件锁定到单个用户/请求者。 虽然任何计算机都可以通过网络共享文件,并且可以称为NAS,但通常通过NAS,您只能识别主要用于通过网络共享文件的设备。 通常,NAS在IP / TCP以太网网络上运行,大多数可以通过Internet轻松访问您的数据。

SAN

假设我喜欢按块编号读取数据,因为我编写了自己的软件但是我需要很多磁盘驱动器,而不是一台计算机可以托管。解决方案是共享其他计算机的磁盘,但正如之前所说,我的NAS没有提供远程查找块号的方法。所以我需要使用另一个协议来共享我的磁盘驱动器,这个磁盘驱动器不需要文件系统来运行。 目前存在以下接口/协议/网络以通过网络共享磁盘:

  • SCSI  - 所有的父亲;)虽然SCSI是低级协议 用于封装到二级或传输协议中发送 命令到控制器或磁盘
  • SAS  - Serial Attacched SCSI这允许将整个SAN创建为SAS 支持路由和寻址
  • FC  - 光纤通道
  • iSCSI的  - Internet SCSI或简单的SCSI over Ethernet(在IP网络中)
  • ATAoE 和类似的 - 以太网上的ATA

实际上,任何低级协议都可以封装到网络数据包中并远程发送,以便在本地连接时访问硬盘。 然后,您可以按块编号读取数据,或者只是在新块设备上创建文件系统。

注意!我可能有意或无意地从这个答案中留下了许多主题,拼写错误的单词和错误的句子,欢迎你编辑它,让它变得更好!

参考资料进一步阅读: 维基百科上的DAS 维基百科上的SAN 维基百科上的NAS


14
2018-04-23 06:20



这对我来说是完美的答案! - Kakar
完善!!!!!!!! - ANewGuyInTown


虽然itmanagement.com的描述还可以,但我认为它们可能更具体一些。

对于NAS,您通常指的是使用CIFS或NFS等协议在网络上安装共享存储空间的东西。安装这些系统的系统不会将它们视为本地存储,而是将其视为网络存储。这很重要,因为许多程序不允许使用网络存储来处理各种事情。

使用SAN,存储空间通过iSCSI或光纤通道安装。您仍在使用网络来安装空间,但协议允许系统执行安装以将空间视为本地存储,从而允许更多程序正确使用它。

DAS只是直接连接(即不通过网络)存储到系统。内置硬盘,USB驱动器等


9
2017-11-05 13:53





NAS 代表网络附加   存储。它不同于传统的,   直接附加存储,在   NAS,操作系统等   NAS产品上的软件是   专门用于数据存储。

SAN 代表存储区域网络。一个   SAN是一个旨在附加的网络   存储硬件和软件   服务器。 SAN通常有两种   形式:主要作为网络   致力于在之间传输数据   计算机系统和存储系统,   或作为包括的完整系统   所有的存储元素和   同一个计算机系统   网络。

DAS 代表直接附加   存储。 DAS通常用于   区分存储系统   直接连接到服务器或   工作站和NAS和SAN设置。

http://www.itmanagement.com/faq/storage-faq/


8
2017-11-05 13:40





DAS: 直接附加存储。存储

(通常是磁盘或磁带)直接连接 通过电缆连接到计算机处理器。 (PC内的硬盘驱动器或 磁带机连接到单个服务器 是简单类型的DAS。)I / O请求 (也称为协议或命令)访问 设备直接。

SAN: 存储区域网络。存储 驻留在专用网络上。像DAS一样 I / O直接请求访问设备。今天, 大多数SAN使用光纤通道媒体, 为...提供任意连接 该网络上的处理器和存储。 使用I / O协议的以太网媒体 称iSCSI正在崛起

NAS: 网络附加 存储。 NAS设备 (“装置”),通常是 集成处理器加 磁盘存储,附加到 基于TCP / IP的网络 (LAN或WAN),和 使用专门访问 文件访问/文件共享 协议。文件请求 由NAS接收的内容处理器将其转换为设备请求


1
2018-06-27 11:28