自建nas网络存储(玩客云搭建nas网络存储)

一惯的是反对在NAS上做很多虚拟机的。

所以也有朋友在问我,你不用NAS那你用什么呢?

其实这就是数码玩家的“眼界”问题了,往往是各种UP主在推什么,数码玩家才“知道”什么。

自建nas网络存储(玩客云搭建nas网络存储)

NAS就是最近几年数码UP主们着重推的东西。

简单的说下NAS,NAS(Network Attached Storage,网络附加存储)如果用通俗易懂的说法就是一种在你的网络上额外增加的一个文件服务器。iN最早使用的NAS产品是这个:

自建nas网络存储(玩客云搭建nas网络存储)

Buffalo的一台双盘位NAS,挂在家里的局域网上,可以提供额外的文件存储功能。如果开一个SMB共享的话,这台小设备和一台开了共享文件夹的Windows 没什么太大区别,你可以通过家里的局域网向这个设备上的硬盘中上传和下载文件。

也可以通过设备的WebAccess功能从网页上直接调取NAS上的文件。

自建nas网络存储(玩客云搭建nas网络存储)

如果说这个设备和一台开着Windows共享的计算机有什么不同,那么咱们就可以说它的优势了,设备的所有硬件资源都是为了文件共享这一个目的而存在的,比Windows的共享机更稳定,同时由于没有其他的系统服务在跑,设备也就更稳定且节电。

当然了,一个早期的NAS也设计了例如Flickr自动上传下载、BT下载等等一些列的简单功能,可以当作一个下载机来使用。

自建nas网络存储(玩客云搭建nas网络存储)

现在新的NAS不仅仅是提供了之前的NAS的大部分功能,甚至还搞起了NAS操作系统

自建nas网络存储(玩客云搭建nas网络存储)

为大家提供更多的功能。

但是——NAS的性能再好,也只能以名字来说局限性,这是一台网络附加存储设备(NAS,Network Attached Storage),做简单的文件存储还可以,但超出了这个范畴,当作“生产力工具”的确还不是那么适用。

即便是有的人把NAS升级到万兆网卡,增加了几个SSD作为缓存。看起来NAS的文件传输速度变高了,但这个东西依旧不是一个高速的存储系统。

甚至可以说——告诉你这玩意可以在NAS的共享文件夹里面剪视频的UP主不是傻就是坏了。

如果想了解这个论断,我们就得先了解下磁盘是如何工作的。

自建nas网络存储(玩客云搭建nas网络存储)

很多数码UP主会告诉你磁盘分了不同的磁道,在磁道上分了不同扇区,磁头从不同的扇区来读取数据……但是具体这些数据是怎么读写的,很多UP主根本没有告诉你。

很多科技博主也就拿出一张这样的图片来说明磁盘-内存-CPU之间的数据流转关系

自建nas网络存储(玩客云搭建nas网络存储)

不能说是错误的,但是“没有细节”或者说“漏掉了细节”。我们来看一个电脑的系统配置:直接进入电脑的设备管理中

自建nas网络存储(玩客云搭建nas网络存储)

你会发现在你的电脑设备中不仅仅有“磁盘”还有“磁盘控制器”,通常CPU会给磁盘控制器指令,让磁盘控制器去读写磁盘上的内容。不同规格的磁盘有不同的控制器指令。例如一个SATA磁盘,接受的是ATA指令,而一个SAS磁盘则要利用SCSI指令来读写。另外一些额外的高级功能也写在了各自的指令集中。

自建nas网络存储(玩客云搭建nas网络存储)

例如ATA指令集是以一个操作码附带一个8-16位的参数传输到磁盘控制器中,磁盘控制器以此指令去操作磁盘读写数据。也有一些工具可以让你直接使用ATA指令去操作硬盘

自建nas网络存储(玩客云搭建nas网络存储)

所以磁盘的操作到了磁盘控制器上就不仅仅是利用文件分配表来找文件这么简单的事情了。

为什么要弄得这么复杂呢?因为磁盘的操作远比很多人想象的要复杂。对某一个字节、某个位的操作方式也不仅仅是读写,利用磁盘指令就是操作磁头直接拨弄磁盘上的储存单元,最终传输“数据块”到操作系统,然后再由操作系统拼接成我们可使用的文件。

自建nas网络存储(玩客云搭建nas网络存储)

如果是NAS共享呢?大部分会利用SMB协议的共享系统会再额外增加一层把文件再转换成网络数据包的过程,然后再在网络上进行传输。

传输的内容是SMB数据包,接收之后这些SMB数据包再还原成本地计算机可以读写的文件。这个过程可以在内存中复现也可能由于文件过大,在磁盘缓存中复现。

以在NAS上做视频剪辑为例,素材会经过SMB存储到你的本地磁盘缓存中,随着不同的调用过程逐渐的进入到你的剪辑软件中。在这里你会发现其实一个大文件的磁盘读写最少经历了两次。

这也是为什么即便是万兆的生产力NAS在做视频剪辑的时候也不会比本地磁盘速度快的一个很重要原因。

那么有没有办法真正地提高生产力呢?还真有!

你可以把NAS倒过来,组一个SAN系统。

SAN(Storage area network,存储区域网络),首先得说下,现在的SAN价格要远远高于NAS的价格,不过人如果要舍得投入在家庭使用或者小团队使用价格也并不是太大的障碍。

自建nas网络存储(玩客云搭建nas网络存储)

虽然都是网络存储,SAN所对应的文件系统在自己的系统这一侧,通过光纤通道或者网线直接发布磁盘控制器指令,几乎不封装的走的是光纤通道,一类价格便宜封装起来的(例如FCoE)走的就是普通的以太网通道。和NAS传回来的文件不同,在SAN的网络上传输回来的就是数据块了。对文件数据的使用是在本地来用,但对文件数据的操作则是在SAN的存储机上进行操作。这样就比NAS的效率要高了将近一倍。这就是直接操作块的魅力所在了

至于利用SMB的NAS有没有块操作呢?其实也有,不过问题是当初的确是设计了块操作的SMB指令,但至今微软对大容量读写和位移块读写的支持都显得力不从心。甚至类似于SMB_COM_READ_BULK 和 SMB_COM_WRITE_BULK这样的指令虽然在SMB的协议指令集里面做出了名称上的保留,但至今依旧没有真正的实现过。

相反SAN给你的支持度极高,在SAN下的远端硬盘几乎完全等同于本地硬盘,并不是SMB映射驱动器的那种性能。

本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 sumchina520@foxmail.com 举报,一经查实,本站将立刻删除。
如若转载,请注明出处:https://www.gooyie.com/30817.html