随着互联网及网络应用的飞速发展,数据信息存储系统所需处理的数据类型也呈爆炸性增长,这使数据信息存储系统面临前所未有的挑战。附加式网络存储装置(Network Attached Storage,缩写为NAS)及区域存储网络(Storage Area Network缩写为SAN),它们能把数据信息存储设备从网络和主机系统上独立出来,既集中管理信息数据,又具备良好的扩展性,为实现数据集中管理提供了目前最为有效的解决办法。

1.区域存储网络(SAN):1998年才出现的SAN技术,是专门连接存储外围设备和服务器的网络。它通常包括服务器、外部存储设备、服务器适配器、集线器、交换机以及网络、存储管理工具等。SAN独立于应用服务器网络系统之外,拥有几乎无限的存储能力,它采用高速的光纤通道作为传输媒介,将存储系统网络化,实现了真正高速的共享存储。

SAN的组成

在SAN中,有一些专用的硬件和软件。硬件包括FC卡、FC HUB、FC交换机、存储系统等,软件主要是FC控制卡针对各种操作系统的驱动程序和存储管理软件。下面简单介绍这些设备:

FC卡:主要用于主机与FC设备之间的连接。

FC HUB:内部运行仲裁环拓扑,连接到HUB的节点共享100MB/S带宽(或更高)。

FC交换机:内部运行Fabric拓扑,每端口独占100MB/S带宽(或更高)。

FC存储设备:采用FC连接方式,光纤接口可以有一到多个。FC存储设备通常采用光纤的硬盘,也有Fibre to SCSI(Fibre to ATA)的解决方案,使用SCSI(或ATA)的硬盘,在整个配置上较便宜。

存储网络管理软件:存储管理软件主要的功能是自动发现网络拓扑及映射,当在存储网络中增加或减少时自动发现及组态。

SAN具有以下几个优点:

首先是无限的扩展能力。由于SAN采用了网络结构,服务器可以访问存储网络上的任何一个存储设备,因此用户可以自由增加磁盘阵列、带库和服务器等设备,使得整个系统的存储空间和处理能力得以按客户需求不断扩大。其次,SAN具有更高的连接速度和处理能力。SAN采用了为大规模数据传输而专门设计的光纤通道技术,目前的传输速度为100MB,并会很快开发出传输速度为200MB和400MB的光纤通道开关。从实测的结果看,SAN系统可以在不占用大量CPU的情况下,轻松地超过NAS的性能。

基于SAN架构的存储设备本身具有可扩充性,可以在线扩充存储容量和处理速度,升级到下一代产品。而且一旦SAN架构构建以后,可以很容易增加存储设备,并且这些存储设备均可以作为一个整体来共享,它们可以作为一个卷或多个卷来共享。在SAN的架构下,存储是独立于应用的。

目前具有多种基于SAN架构的解决方案,比较典型的是包括远程容灾解决方案和零停机时间备份。它可以通过异地远程的两台阵列实现数据的同步,独立于操作系统和应用,一旦某地的系统出现问题,可以很快地切换到异地,保证系统的应用。

2. 网络直接存储(NAS)

在NAS方案中,存储设备在功能上完全独立于网络中的主服务器,客户机与存储设备之间的数据访问已不再需要文件服务器的干预,允许客户机与存储设备之间进行直接的数据访问。

网络直接存储的特点主要有:首先,NAS系统只能通过提高单个控制器的处理能力和增大单个控制器控制的存储设备来扩展。其次,在NAS系统里,客户端通过传统网络访问NAS。而传统网络并不是为在可靠的链路上传输大批量数据而设计的,因此有很多传输校验,这些工作会消耗大量的CPU资源,增加客户机的负担。此外,NAS仅仅完成多台服务器文件系统级的共享,比较适合作文件服务器。

3.SAN和NAS各自的应用领域

NAS是SAN的补充,在数据量不大,网络资源充裕的中、小型计算机系统中具有良好的性能价格比。中小用户对NAS有很大的需求。NAS的设计目的是为了中小型企业内部网络的客户端通过现有LAN来共享存储,它主要是基于文件的共享来实现,在性能、可靠性和可用性方面要求不是太高,追求管理简便,不太适合大型计算系统。

SAN在数据块传输和扩展性方面表现优秀,并能够有效地管理设备。企业可以从将SAN应用于关键任务应用、数据集中、备份恢复和高可用性计算等方面受益无穷。SAN比较适合于顺序读/写数据且文件很大时的应用,如服务器集群的存储、服务器备份大型数据卷、服务器提交流视频、非线性编辑等。在电信、银行、证券、气象、电子商务等大型应用领域将SAN作为首选的存储系统。他们的共同特点是:由关键应用产生的大量关键数据需要保存,而且要求随时能对数据进行快速访问,因此对存储系统提出了很高的性能要求,而这正是SAN的优势所在。

与SAN相比,NAS支持多台对等客户机之间的文件共享。NAS客户机可以在企业中任何地点访问共享的文件,其性能和距离要求也相对较低。因此,NAS适用于当文件长度比较短时的应用,如文件管理和中小企业网络存储。

区域存储网络(SAN)与 网络直接存储(NAS)的更多相关文章

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

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

  2. Azure 配置高可用的准备系列工作-建立不同区域的存储账户和建立网络!

     我们谈到我们的业务,常常谈到一个词.三层架构,就是我们的UI层.数据訪问层和数据存储层的分离,通常情况下我们的业务高可用必须满足这三层的所有高可用的情况下才干达到最高级别的高可用. 那么谈到Az ...

  3. 从零开始入门 K8s | 应用存储和持久化数据卷:存储快照与拓扑调度

    作者 | 至天 阿里巴巴高级研发工程师 一.基本知识 存储快照产生背景 在使用存储时,为了提高数据操作的容错性,我们通常有需要对线上数据进行 snapshot ,以及能快速 restore 的能力.另 ...

  4. Docker网络——单host网络

    前言 前面总结了Docker基础以及Docker存储相关知识,今天来总结一下Docker单主机网络的相关知识.毋庸置疑,网络绝对是任何系统的核心,他在Docker中也占有重要的作用.同样本文基于Clo ...

  5. k8s网络之Flannel网络

    k8s网络主题系列: 一.k8s网络之设计与实现 二.k8s网络之Flannel网络 三.k8s网络之Calico网络 简介 Flannel是CoreOS团队针对Kubernetes设计的一个网络规划 ...

  6. k8s网络之Calico网络

    k8s网络主题系列: 一.k8s网络之设计与实现 二.k8s网络之Flannel网络 三.k8s网络之Calico网络 简介 Calico 是一种容器之间互通的网络方案.在虚拟化平台中,比如 Open ...

  7. TCP/IP协议(一)网络基础知识 网络七层协议

    参考书籍为<图解tcp/ip>-第五版.这篇随笔,主要内容还是TCP/IP所必备的基础知识,包括计算机与网络发展的历史及标准化过程(简述).OSI参考模型.网络概念的本质.网络构建的设备等 ...

  8. Android中数据存储(三)——SQLite数据库存储数据

    当一个应用程序在Android中安装后,我们在使用应用的过程中会产生很多的数据,应用都有自己的数据,那么我们应该如何存储数据呢? 数据存储方式 Android 的数据存储有5种方式: 1. Share ...

  9. FMDB存储模型对象(以二进制存储)用NSKeyedArchiver archivedDataWithRootObject序列号,NSKeyedUnarchiver unarchiveObjectWithData反序列化(重点坑是sql语句@"insert into t_newsWithChannel (nwesName,newsType) values (?,?)")一定要用占位符

    交友:微信号 dwjluck2013 一.封装FMDB单例 (1)JLFMDBHelp.h文件 #import <Foundation/Foundation.h> #import < ...

  10. Android数据存储之Shared Preferences共享数据存储

    Android数据存储之Shared Preferences共享数据存储 在Android中一共提供了4种数据存储方式,但是由于存储的这些数据都是其应用程序私有的,所以如果需要在其他应用程序中使用这些 ...

随机推荐

  1. 8月份的To-Do List

    1.汲取归纳<Effective Objective-C 2.0 >的知识点 2.回顾网易云课堂翁恺老师的C语言相关课程, 为学习算法做好准备 3.读完Kelly McGonigal的&l ...

  2. [翻译]在gulp构建工具中使用PostCSS

    前言 PostCSS已经在一段时间内迅速普及,如果你还不知道PostCSS或还没有使用它,我建议你看一下之前的一篇介绍文章<PostCSS简介>,其中介绍了使用PostCSS的基本方法,包 ...

  3. 《Pro Git》第1章 起步

    关于版本控制 什么是版本控制:记录文件内容变化,将来可查阅特定版本修订情况的系统. 版本控制演进 1)本地版本控制系统 2)集中化的版本控制系统(Centralized Version Control ...

  4. python学习笔记(matplotlib下载安装)

    最近博主在找工作换新环境.昨天电话面试中问到python中threading模块进行接口性能测试的时候.如何生成性能测试报告 我现在还停留在打印在屏幕中.所以今天想着是否可以生成相应的性能测试报告 首 ...

  5. mysql:字符分割,将字符分割成数组

    1.分割函数:SUBSTRING_INDEX('浙江温州-中国电信','-','1') 2.用例(筛选'-'前至少4个汉字的数据) a.数据分布 b.筛选sql   select t.mobile_n ...

  6. Load事件

    Load事件 在 窗体完全呈现之后 被 触发 如下伪代码: void  ShowWindows { .....//显示父容器 .....//显示子容器 .....//显示控件 //至此,窗体完全呈现 ...

  7. GAN的原理入门

    开发者自述:我是这样学习 GAN 的 from:https://www.leiphone.com/news/201707/1JEkcUZI1leAFq5L.html   Generative Adve ...

  8. 【MAVEN】笔记

    引言 Maven是Java项目开发中的重要组成部分,了解它学习它是我们的必修课. Maven是什么? Maven是一个项目管理和综合工具.Maven是标准化的产物,使用标准的目录结构和默认构建生命周期 ...

  9. 下载并安装Prism5.0库(纯汉语版)

    Prism5.0中包含了文档,WPF代码示例,程序集.本篇告诉你从哪里获取程序集和代码示例,还有NuGet包的内容. 对于新功能,资产,和API的更改信息,请看Prism5.0新内容. 文档 Pris ...

  10. Ajax传输对象,集合或数组。

    传输单个对象时: servlet页面 package com.itnba.maya.a; import java.io.IOException; import javax.servlet.Servle ...