SAN和NAS的区别
SAN : STORAGE AREA NETWORK 存储区域网络
NAS : NETWORK ATTACHED STORAGE 网络附加存储
NAS不一定是盘阵,一台普通的主机就可以做出NAS,只要它自己有磁盘和文件系统,而且对外提供访问其文件系统的接口(如NFS,CIFS
等),它就是一台NAS。常用的windows文件共享服务器就是利用CIFS作为调用接口协议的NAS设备。一般来说NAS其实就是处于以太网上的一台
利用NFS,CIFS等网络文件系统的共享服务器。至于将来会不会有FC网络上的文件提供者,也就是FC网络上的NAS,就等日后再说了。
注解:NFS(NETWORK FILE SYSTEM) 适用于LINUX&UNIX系统
CIFS(Common Internet FILE SYSTEM)适用于windows系统
SAN\NAS的区别:
可以这样来比作:SAN是一个网络上的磁盘;NAS是一个网络上的文件系统。其实根据SAN的定义,可知SAN其实是指一个网络,但是这个网络里
包含着各种各样的元素,主机、适配器、网络交换机、磁盘阵列前端、盘阵后端、磁盘等。长时间以来,人们都习惯性的用SAN来特指FC,特指远端的磁盘。那
么,一旦设计出了一种基于FC网络的NAS,而此时的SAN应该怎样称呼?所以,在说两者的区别时,用了一个比方,即把FC网络上的磁盘叫做SAN,把以
太网络上的文件系统称为NAS,我们可以这样简单来理解。
普通台式机也可以充当NAS。NAS必须具备的物理条件有两条,第一,不管用什么方式,NAS必须可以访问卷或者物理磁盘;第二,NAS必须具有接入以太网的能力,也就是必须具有以太网卡。
SAN\NAS的性能对比:
1、 SAN快还是NAS快
首先,看下SAN与NAS的路径图,如下:


显然,NAS架构的路径在虚拟目录层和文件系统层通信的时候,用以太网和TCP/IP协议代替了内存,这样做不但增加了大量的CPU指令周期
(TCP/IP逻辑和以太网卡驱动程序),而且使用了低俗传输介质(内存速度要比以太网快得多)。而SAN方式下,路径中比NAS方式多了一次FC访问过
程,但是FC的逻辑大部分都由适配卡上的硬件完成,增加不了多少CPU的开销,而且FC访问的速度比以太网高,所以我们很容易得出结论,如果后端磁盘没有
瓶颈,那么除非NAS使用快于内存的网络方式与主机通信,否则其速度永远无法超越SAN架构。但是如果后端磁盘有瓶颈,那么NAS用网络代替内存的方法产
生的性能降低就可以忽略。比如,在大量随记小块I/O、缓存命中率极低的环境下,后端磁盘系统寻到瓶颈达到最大,此时前端的I/O指令都会处于等待状态,
所以就算路径首段速度再快,也无济于事。此时,NAS系统不但不比SAN慢,而且由于其优化的并发I/O设计和基于文件访问而不是簇块访问的特性,反而可
能比SAN性能高。
既然NAS一般情况下不比SAN快,为何要让NAS诞生呢?既然NAS不如SAN快,那么为何还要存在呢?具体原因如下:
l NAS的成本比SAN低很多。前端只使用以太网接口即可,FC适配卡以及交换机的成本相对以太网卡和交换机来说非常高的。
l NAS可以解决主机服务器上的CPU和内存资源。NAS适用于cpu密集的应用环境。
l NAS由于利用了以太网,所以可扩展性很强,且容易部署。
l NAS设备一般都提供多种协议访问数据,而SAN只能使用SCSI协议访问。
l NAS可以在一台盘阵上实现多台客户端的共享访问,包括同时访问某个目录或文件。而SAN方式下,除非所有的客户端都安装了专门的集群管理软件,否则不能将某个lun共享,强制共享会损坏数据。
l 经过特别优化的NAS系统,可以同时并发处理大量客户端的请求,提供比SAN方式更方便的访问方法。
l 多台主机可以同时挂接NFS上的目录,那么相当于减少了整个系统中文件系统的处理流程,由原来的多个并行处理转化成了NFS上的单一实例,简化了系统冗余度。
2、 SAN好还是NAS好
关于IO密集和CPU密集说明如下。
l CPU密集:程序内部逻辑复杂,磁盘访问量不高。
l IO密集:程序内部逻辑不复杂,耗费CPU不多,但随时存取硬盘上的数据。
l IO和CPU都密集:不适合单机,必须组成集群。
显然,NAS对于大块顺序IO密集的环境,要比SAN慢一大截,原因是经过大量IO累积之后,总体差别就显出来了。不过,如果要用10G以太网,
无疑要选用NAS,因为底层链路的速度毕竟是目前NAS的根本瓶颈。此外,如果是高并发随机小块I/O环境或者共享访问文件的环境,NAS会表现出很强的
相对性能。如果SAN主机上的文件系统碎片比较多,那么读写某个文件时便会产生随机小块IO,而NAS自身文件系统会有很多优化设计,碎片相对较少。
CPU密集型的应考虑使用NAS。
NAS以文件的形式+LAN连接存储介质;
而SAN以块形式+光纤连接存储介质。
转自:http://space.itpub.net/10037372/viewspace-687400
SAN和NAS的区别的更多相关文章
- 关于SAN和NAS的区别-转
什么是SAN与NAS By 王文平 发表于 2006-7-10 18:03:53 NAS和SAN字面上相似,并且都是新型数据存储模式,但这二者是完全不同的,针对不同方向的技术. 什么是SAN(St ...
- SAN和NAS的区别: 层次不一样
SAN : STORAGE AREA NETWORK 存储区域网络 NAS : NETWORK ATTACHED STORAGE 网络附加存储 NAS不一定是盘阵,一台普通的主机就可以做出NAS, ...
- DAS、SAN、NAS的区别
在服务企业的过程中,经常会接触到存储,但是又容易和市面上的一些什么NAS等混淆. DAS 与主机直连的存储设备 NAS 存储设备自带文件系统 SAN 存储设备的互联依赖网络,比如IP-SAN, FC- ...
- [转帖]DAS、SAN、NAS
http://blog.itpub.net/26736162/viewspace-2214368/ DAS(Direct-attached Storage) 直连存储 直连式存储与服务器主机之间的连接 ...
- SAN,NAS区别的联系
在网络存储中,有着各种网络存储解决方案,例如:SAN,NAS,DAS存储网络,它们各自有着各自的特点,其运用场景也有所不同.下面就说说各自的特点. 一.SAN SAN(Storage Area Net ...
- NAS、SAN和DAS的区别
目前磁盘存储市场上,存储分类(如下表一)根据服务器类型分为:封闭系统的存储和开放系统的存储,封闭系统主要指大型机,AS400等服务器,开放系统指基于包括Windows.UNIX.Linux等操作系统的 ...
- Raid与DAN、SAN、NAS基础
一. 磁盘基本知识 1. Raid分类 Raid磁盘阵列是由多个磁盘组合成的磁盘组,可将数据分割成许多区段,分别存放在各个磁盘上:同时利用不同排列技术,可提高磁盘性能和数据安全性.下列简单介绍几种Ra ...
- SAN和NAS
SAN针对海量.面向数据块的数据传输,而NAS则提供文件级的数据访问功能. SAN和NAS都基于开放的.业界标准的网络协议:用于SAN的光纤通道协议和用于NAS的网络协议(如TCP/IP). SAN的 ...
- 存储系列之 DAS、SAN、NAS三种常见架构概述
随着主机.磁盘.网络等技术的发展,对于承载大量数据存储的服务器来说,服务器内置存储空间,或者说内置磁盘往往不足以满足存储需要.因此,在内置存储之外,服务器需要采用外置存储的方式扩展存储空间,今天在这里 ...
随机推荐
- 【转】Understanding and Using rem Units in CSS
CSS units have been the subject of several articles here on SitePoint (such as A Look at Length Unit ...
- javascript 比较对象(hashcode)
javascript 对象的比较是比较坑爹的一件事,因为javascript对象比较的是引用地址!当两个内容完全一样的对象比较: var object1={ name:"1234 " ...
- 如何在Eclipse中给main方法加参数
在main方法中有一个args参数,那么如何给args参数赋值呢? public class TestMain { public static void main(String[] args) { f ...
- Css预处理器实践之Sass、Less大比拼
xwei | 2012-07-07 | 网页重构 什么是CSS预处理器? Css可以让你做很多事情,但它毕竟是给浏览器认的东西,对开发者来说,Css缺乏很多特性,例如变量.常量以及一些编程语法,代码难 ...
- phpcms v9教程 联动搜索在房地产网站开发中的应用
开发简述:使用phpcms v9系统,修改源文件5个,创建模型:楼盘.出售.出租.中介.小区,增加联动菜单:楼盘,增加用户组:房产中介.实现功能:游客发布信息.会员申请中介.楼盘全方位展示.报名团购. ...
- php的冒泡算法
<?php /* 冒泡算法 * @para $arr 传人进去排序的数组 * @return $newArr 排序之后的数组 */ function maopao($arr){ ...
- python ciscolib模块
python的第三方模块ciscolib可以登录交换机执行相关命令 ciscolib下载地址: https://github.com/nickpegg/ciscolib 常见用法如下: switch ...
- 不能将值 NULL 插入列 'ID',表 'EupStoreDemoDB.dbo.OrderDiary';列不允许有 Null 值。INSERT 失败。
MVC,使用EF构建实体.将数据存入数据库,执行到_db.SaveChange()时,会报如下错误:
- d007: 求两数的整数商 和 余数
内容: 求两数的整数商 和 余数 输入说明: 一行两个整数 输出说明: 一行两个整数 输入样例: 18 4 输出样例 : 4 2 #include <stdio.h> int main ...
- SQL Server 与 Entity Framework 级联删除
SQL Server 级联设置我就不多说了,网上很多教程. 我想提的是 cycles or multiple cascade paths 的问题. 简单的说如果你的级联设置不是一个树型,而是一个带有循 ...