NAS和SAN既竞争又合作,很多高端NAS的后端存储就是SAN。NAS和SAN的整合也是存储设备的发展趋势,比如EMC的新产品VNX系列。

关于NAS和SAN的区别,可以列出很多来。比如带宽大小,距离长短,共享优劣等等。几乎所有区别都是由两个因素衍生出来的。一个是FC与Ethernet,另一个是block与file system。简而言之,如果用户需要通过FC访问block,就用SAN;如果需要通过Ethernet访问file system,就用NAS。

除了NAS和SAN,还有一类存储设备经常被提到。那就是DAS (Direct Attached Storage) ,即“直连存储”。“直连”指服务器和存储设备之间没有FC网络,而是直接相连。比如我们都熟知的个人电脑就是DAS,因为磁盘被直连到了主板上。DAS已经存在很多年了,就算到今天也是很多服务器的理想选择。但是它的问题很多,而且也跟不上IT技术,比如虚拟化的发展。下面列举几个:

  1.可管理性差:每台服务器都使用自己的存储,光硬件的监控和维护就要花费不少时间。如果都要做容灾或备份,对于管理员简直是噩梦。

  2. 可扩展性差:在服务器安装结束后,如果发现存储空间分配过多,就造成了浪费。如果发现空间不足,要扩展也很麻烦。

  3. 跟不上IT发展趋势,比如不支持VMware VMotion等高级功能。

  SAN解决了这些问题。因为它既提供了统一的存储,同时又是一个网络。统一性和网络性给SAN带来了很多优势:

  1.可管理性:由一台SAN统一给多台服务器提供存储。无论是硬件的监控维护,还是数据的容灾备份,都只要在SAN上进行。使存储管理变得更轻松。

  2.可扩展性:在物理层面,SAN支持数以百计的磁盘(比如EMC的CX4可以支持960块磁盘),提供了海量的存储空间。在逻辑层面,这个海量空间可以按需要分成不同大小的LUN,再分配给服务器。LUN是逻辑设备,所以很容易扩展或迁移。

  3. 符合IT发展趋势:比如对炙手可热的虚拟化有很好的支持。

  当然,除了解决DAS的这些问题,SAN还有其他明显的优势:

  1. 高性能:

  a. SAN 更好的支持RAID,因为它拥有更多硬盘和更强的控制器。下图展示了RAID0对性能提升的基本原理:当有一大块数据写到RAID Group上,它可以被分成数小块,同时写到几个磁盘上。这就象有一批档案需要录入到电脑上,经理一个人打字需要做5天。分给5位员工一起做,一天就可以做完了。我们将在以后分析NAS性能的时候详细解释。

  b. SAN有更大的cache。比如CX4的write cache可以达到10.7 GB。Cache对性能的提高也有明显的作用,我们也会在以后分析NAS性能的时候详细讲解。

  2. 更稳定:多机头,热备盘,多路径等机制杜绝了单点故障。

  3. 更安全:统一的容灾,备份和远程复制保证了数据的安全性。

  此外还有很多新技术,比如VNX的FASTCache和FASTVP。

SAN (Storage Attached Network),即存储区域网络的更多相关文章

  1. 存储区域网络(Storage Area Network,简称SAN)

    存储区域网络(Storage Area Network,简称SAN)采用网状通道(Fibre Channel ,简称FC,区别与Fiber Channel光纤通道)技术,通过FC交换机连接存储阵列和服 ...

  2. 浅谈个人对存储区域网络SAN的理解

    存储区域网络SAN,是一种通过将网络存储设备和服务器连接起来的网络,提供计算机和存储设备间的数据传输.其中,SAN是独立于服务器系统之外的,拥有近乎无限的存储能力,通过利用光纤作为传输媒介,实现了高速 ...

  3. DAS、SAN和NAS三种存储方式

    DAS存储 DAS存储在我们生活中是非常常见的,尤其是在中小企业应用中,DAS是最主要的应用模式,存储系统被直连到应用的服务器中,在中小企业中,许多的数据应用是必须安装在直连的DAS存储器上. DAS ...

  4. Real-time storage area network

    A cluster of computing systems is provided with guaranteed real-time access to data storage in a sto ...

  5. Docker存储和网络

    Docker存储资源类型 docker两种存储资源类型 用户在使用 Docker 的过程中,势必需要查看容器内应用产生的数据,或者需要将容器内数据进行备份,甚至多个容器之间进行数据共享,这必然会涉及到 ...

  6. Block存储区域

    Block存储区域 首先,需要引入三个名词: ● _NSConcretStackBlock ● _NSConcretGlobalBlock ● _NSConcretMallocBlock 正如它们名字 ...

  7. 微软Azure云主机及blob存储的网络性能测试

    http://www.cnblogs.com/sennly/p/4137024.html 微软Azure云主机及blob存储的网络性能测试 1. 测试目的 本次测试的目的在于对微软Azure的云主机. ...

  8. 局部变量存储区域静态变量存储区域static变量存储区域

    局部变量存储区域静态变量存储区域static变量存储区域 常见的存储区域可分为: 1.栈 由编译器在需要的时候分配,在不需要的时候自动清楚的变量的存储区.里面的变量通常是局部变量.函数参数等. 2.堆 ...

  9. block存储区域——怎样验证block在栈上,还是堆上

    Block存储区域 首先,须要引入三个名词: ● _NSConcretStackBlock ● _NSConcretGlobalBlock ● _NSConcretMallocBlock 正如它们名字 ...

随机推荐

  1. POJ 3613 floyd+矩阵快速幂

    题意: 求s到e恰好经过n边的最短路 思路: 这题已经被我放了好长时间了. 原来是不会矩阵乘法,快速幂什么的也一知半解 现在终于稍微明白了点了 其实就是把矩阵乘法稍微改改 改成能够满足结合律的矩阵&q ...

  2. Spark Scala语言学习系列之完成HelloWorld程序(三种方式)

    三种方式完成HelloWorld程序 分别采用在REPL,命令行(scala脚本)和Eclipse下运行hello world. 一.Scala REPL. windows下安装好scala后,直接C ...

  3. 原生js做h5小游戏之打砖块

    前言 首先,先说明一下做这个系列的目的:其实主要源于博主希望熟练使用 canvas 的相关 api ,同时对小游戏的实现逻辑比较感兴趣,所以希望通过这一系列的小游戏来提升自身编程能力:关于 es6 语 ...

  4. 推荐使用sublime text 3 以及常用快捷键

    vim这种上古神器,需要学习.记忆.折腾.比如我的初衷是要开发php的,连php都没专研透,哪有精力去折腾vim这玩意. 当然,vim绝技练成以后,配置成各种IDE都不是问题,还有你手速会飞起来. 但 ...

  5. android黑科技系列——Apk的加固(加壳)原理解析和实现

    一.前言 今天又到周末了,憋了好久又要出博客了,今天来介绍一下Android中的如何对Apk进行加固的原理.现阶段.我们知道Android中的反编译工作越来越让人操作熟练,我们辛苦的开发出一个apk, ...

  6. 数据结构——单链表java简易实现

    巩固数据结构 单链表java实现 单链表除了表尾 每个几点都有一个后继 结点有数据和后继指针组成  通过构建表头和表尾(尾部追加需要)两个特殊几点 实现单链表的一些操作,代码如下 package co ...

  7. siblings() next() nextAll() nextUntil() prev() prevAll() prevUntil() 在 DOM 树中水平遍历

    $(document).ready(function(){ $("h2").siblings(); });拿到h2标签的所有的同级元素什么标签都可以 $(document).rea ...

  8. Debian 6 , 十个串口为什么只识别到了 6个 剩下4 个被禁止了

    0.946441] Serial: 8250/16550 driver, 6 ports, IRQ sharing enabled [    0.946533] serial8250: ttyS0 a ...

  9. new String(getBytes(ISO-8859-1),UTF-8)中文编码避免乱码

    byte[] b_gbk = "深".getBytes("GBK"); byte[] b_utf8 = "深".getBytes(" ...

  10. 路飞学城Python-Day153

    Scrapy核心组件