云计算探索-DAS、NAS与SAN存储技术演进及其应用比较
1,介绍
随着信息技术的飞速发展,数据存储的需求日益增长,各种存储技术也应运而生。在众多的存储解决方案中,直接附加存储(Direct Attached Storage,简称DAS)、网络附加存储(Network Attached Storage,简称NAS)和存储区域网络(Storage Area Networks,简称SAN)是三种最为常见的存储类型。它们各自具有独特的特点和适用场景,下面将对这三种存储类型进行详细介绍。
2.DAS存储介绍
自上世纪70年代起,随着数据量的日益增长,用户对存储容量的需求不断提升,最早的存储架构——直连附加存储(DAS)应运而生。DAS是一种直接连接到服务器或客户端的存储解决方案,通过诸如光纤通道(FC)、串行连接SCSI(SAS)等接口实现与主机的物理连接。这些接口的链路速率不断进化,从最初的3Gbit/s逐步提升至6Gbit/s甚至12Gbit/s,确保了高效的数据传输。DAS不仅提供了基本的存储服务,还逐渐增加了快照、备份等高级功能,满足了早期单点存储需求。
但是随着数据量爆炸式增长及企业对数据共享、集中管理和高可用性需求的提升,DAS由于其扩展性较差、资源孤立以及无法便捷地跨服务器共享数据等固有局限,在大规模数据中心环境中逐渐被更加灵活、可扩展且支持资源共享的NAS和SAN所取代,特别是对于需要实现高效存储资源池化、在线迁移、多重数据保护机制以及复杂存储网络策略的场景。然而,考虑到其低成本和简单易用性,DAS仍在小规模网络、高性能计算和特定应用场合中保持着一定的市场地位。
2.1 DAS存储的特点
- 直接连接: DAS通过SCSI、SAS或光纤通道等直接连接到服务器内部或外部,无需经过网络层,数据路径短,延迟较低。
- 独立性: 每台服务器独享与其相连的存储设备,数据不与其他服务器共享,故安全性较高。
- 易用性: 配置简单,类似于添加额外的本地硬盘,适用于小规模环境或单机系统。
- 扩展性局限: 扩展能力有限,增加新的存储通常意味着服务器也需要重新配置或更换,不利于大规模数据存储和共享。
- 备份和恢复: DAS环境下进行数据备份可能较为复杂,需要在每台服务器上分别进行,管理负担较大。
3.NAS存储介绍
进入90年代初期,随着网络技术的快速发展和大量数据的共享与交换需求,网络附加存储(NAS)作为一种专用的网络存储设备崭露头角。NAS设备通过网络提供存储服务,尤其擅长处理多台前端服务器共享后端存储的情况。NAS设备上的存储空间借助CIFS(适用于Windows系统)和NFS(适用于类Unix系统)等网络文件系统协议进行共享,允许多个客户端同时读写同一个目录或文件。
NFS由Sun Microsystems于1984年创建,是一项Internet标准协议,旨在促进跨局域网的文件共享。NFS经历了多个版本的演进,从最初基于UDP协议的NFSv2,过渡到广泛采用TCP协议且增强了可靠性和效率的NFSv3,再到提高性能和安全性的NFSv4。NFS通过远程过程调用(RPC)机制运作,让客户端可以通过网络像访问本地文件系统一样访问远程文件。
与此同时,CIFS作为另一种重要的网络文件系统协议,主要服务于Windows主机间的文件共享。无论是NFS还是CIFS,NAS设备都通过网络节点的形式直接接入网络中,支持多种网络技术和拓扑结构,尤其是以太网,且可通过Web浏览器进行直观便捷的管理。
3.1 NAS存储特点
- 网络共享: NAS通过标准网络(如以太网)连接到多个客户端,提供文件级别的共享服务,实现数据集中化存储和管理。
- 文件服务: 内置操作系统和文件系统,支持CIFS、NFS等多种文件协议,易于跨平台数据共享。
- 易用性与灵活性: 用户可通过网络访问NAS设备上的文件,管理界面友好,可远程配置与监控,且能够根据需求动态调整存储空间分配。
- 数据备份与恢复: NAS通常配备内置的备份和恢复功能,简化了企业的数据保护流程。
- 性能考量: 由于NAS依赖于网络带宽,相比DAS,在大数据块传输或频繁随机I/O操作时,性能可能受到网络瓶颈影响。
4.SAN存储区域网络
存储区域网络(SAN)在90年代中后期兴起,它是通过专用的高速网络将一个或多个网络存储设备与服务器紧密集成的高可用存储系统。不同于LAN,SAN独立构建,专门为服务器与存储资源之间的通信服务。SAN采用可扩展的网络架构,通过光纤通道(Fibre Channel,FC)协议及FC交换机构建起了FC-SAN,使得存储设备不再绑定于单一服务器,而是作为一个对等资源在整个网络服务器间共享。
FC-SAN利用光纤技术,提供了高达4.25Gbit/s的数据传输速度,极大地提高了存储性能和扩展性,能够支持数百台服务器的同时接入,并提供快照、容灾等高级数据保护功能。
而在21世纪初,为了应对FC-SAN的成本门槛和复杂管理问题,IP-SAN(基于IP的存储区域网络)应运而生。IP-SAN利用现有的以太网基础设施,通过iSCSI(Internet Small Computer System Interface)协议将SCSI命令封装在TCP/IP包中进行传输,大大降低了建设成本并简化了管理。IP-SAN同样能提供高带宽链路速率,最高可达10Gbit/s,且同样支持快照、容灾等高级服务
4.1 SAN存储的特点
- 专用网络: SAN通过高速光纤通道网络连接服务器与存储设备,形成独立于LAN的存储网络,提供块级存储服务。
- 高性能: 使用光纤通道协议,支持高带宽和低延迟,适合大型数据库、实时交易系统等对性能要求极高的应用。
- 集中存储与资源共享: 存储资源可以在多台服务器间灵活分配和共享,避免了存储孤岛现象,提高资源利用率。
- 扩展性强: SAN架构支持线性扩展,可以轻松添加新存储设备或服务器,适应快速增长的数据存储需求。
- 高级功能: 提供诸如RAID、快照、镜像、复制等高级数据保护功能,保障数据安全性和可用性。
- 两种主流形式:
- FC-SAN: 采用光纤通道技术,具有极高稳定性和性能表现,但成本相对较高。
- IP-SAN(如iSCSI): 基于IP网络,利用以太网基础设施,降低了部署成本,同时实现了长距离数据传输和管理的便利性。
5.NAS与SAN的比较
NAS和SAN在存储领域各有优势。NAS具有文件操作和管理系统,方便用户进行文件级别的操作和管理。而SAN则专注于数据管理,为服务器提供高性能的存储通道。两者并不是相互冲突的,而是可以共存于一个系统网络中的。在实际应用中,可以根据具体需求选择适合的存储方案,或者将两者结合使用,以实现更加灵活和高效的存储管理。
6.总结
所以,总的来说,选择哪种存储类型取决于具体业务需求,如对性能、扩展性、成本、管理便利性等因素的不同考量。DAS适用于简单的、对性能要求不太高且不需要共享存储的小型环境;NAS是中小型企业理想的文件共享和备份解决方案;而SAN则是大型企业和数据中心实现高性能、高可用性和灵活扩展存储的理想选择。
OK。本期的分享就到这里啦,我们下期再见^_^
相关文章:
云计算探索-DAS、NAS与SAN存储技术演进及其应用比较
1,介绍 随着信息技术的飞速发展,数据存储的需求日益增长,各种存储技术也应运而生。在众多的存储解决方案中,直接附加存储(Direct Attached Storage,简称DAS)、网络附加存储(Network …...
手机有线投屏到直播姬pc端教程
1 打开哔哩哔哩直播姬客户端并登录(按下图进行操作) 2 手机用usb数据线连接电脑(若跳出安装驱动的弹窗点击确定或允许),usb的连接方式为仅充电(手机差异要求为仅充电),不同品牌手机要求可能不一样,根据实际的来 3 在投屏过程中不要更改usb的连接方式(不然电脑会死机需要重启) …...
SOA、分布式、微服务之间的关系?
分布式它本身就是一种系统部署的架构理念,意思就是将一个系统拆分为各个部分,然后分别部署到不同的机器上去,SOA和微服务项目的部署方式都可以是分布式架构。 而SOA和微服务它们都是面向服务的架构,但是微服务相比于SOA在服务粒度…...
Java多线程学习(概念笔记)
面试题:并行和并发有什么区别? 现在都是多核CPU,在多核CPU下 并发是同一时间应对多件事情的能力,多个线程轮流使用一个或多个CPU 并行是同一时间动手做多件事情的能力,4核CPU同时执行4个线程 面试题:创建线…...
【C++】set和map
set和map就是我们上篇博客说的key模型和keyvalue模型。它们属于是关联式容器,我们之前说过普通容器和容器适配器,这里的关联式容器就是元素之间是有关联的,通过上篇博客的讲解我们也对它们直接的关系有了一定的了解,那么下面我们先…...
yolov5 v7.0打包exe文件,使用C++调用
cd到yolo5文件夹下 pyinstaller -p 当前路径 -i logo图标 detect.py问题汇总 运行detect.exe找不到default.yaml 这个是yolov8里的文件 1 复制权重文件到exe所在目录。 2 根据报错提示的配置文件路径,把default.yaml复制放到相应的路径下。(缺少相应…...
保研线性代数机器学习基础复习2
1.什么是群(Group)? 对于一个集合 G 以及集合上的操作 ,如果G G-> G,那么称(G,)为一个群,并且满足如下性质: 封闭性:结合性:中性…...
vultr ubuntu 服务器远程桌面安装及连接
一. 概述 vultr 上开启一个linux服务器,都是以终端形式给出的,默认不带 ui 桌面的,那其实对于想使用服务器上浏览器时的情形不是很好。那有没有方法在远程服务器安装桌面,然后原程使用呢?至少ubuntu的服务器是有的&am…...
前端学习<二>CSS基础——12-CSS3属性详解:动画详解
前言 本文主要内容: 过渡:transition 2D 转换 transform 3D 转换 transform 动画:animation 过渡:transition transition的中文含义是过渡。过渡是CSS3中具有颠覆性的一个特征,可以实现元素不同状态间的平滑过渡…...
Sqoop 的安装与配置
目录 1 下载并解压2 修改配置文件3 添加环境变量4 拷贝 JDBC 驱动5 测试Sqoop是否能够成功连接数据库 下载地址 1 下载并解压 (1)上传安装包 sqoop-1.4.6.bin__hadoop-2.0.4-alpha.tar.gz 到 hadoop101 的 /opt/software 路径中 (2…...
Mysql设置访问权限(docker配置)
1.运行命令:docker exec -it 数据库名 bash,我这里是bot_test, docker exec -it bot_test bash 2.运行命令mysql -uroot -p --default-character-setutf8,输入密码连接数据库 3.运行命令show databases,查看当前的表 4.进入my…...
【Linux】详解软硬链接
一、软硬链接的建立方法 1.1软链接的建立 假设在当前目录下有一个test.txt文件,要对其建立软链接,做法如下: ln就是link的意思,-s表示软链接,test.txt要建立软链接的文件名,后面跟上要建立的软链接文件名…...
维修贝加莱4PP420.1043-B5触摸屏Power Panel 400工业电脑液晶
深圳捷达工控维修为贝加莱、HMI 显示电源面板 400 4PP420.1043-B5 提供专业电子维修。在 深圳捷达工控维修,我们拥有及时且经济高效地维修 B&R 、HMI Display Power Panel 400 4PP420.1043-B5 的经验。我们为发送给我们工厂维修的贝加莱 HMI 显示面板 400 4PP42…...
Java_21 完成一半题目
完成一半题目 有 N 位扣友参加了微软与力扣举办了「以扣会友」线下活动。主办方提供了 2*N 道题目,整型数组 questions 中每个数字对应了每道题目所涉及的知识点类型。 若每位扣友选择不同的一题,请返回被选的 N 道题目至少包含多少种知识点类型。 示例…...
【WPF应用21】WPF 中的 TextBox 控件详解与示例
在 Windows Presentation Foundation (WPF) 中,TextBox 控件是一个强大的输入控件,允许用户输入、编辑和选择文本。TextBox 控件在各种应用程序中都非常常见,例如表单、对话框和编辑器。本文将详细介绍 TextBox 控件的功能、使用方法、属性、…...
小程序页面传参?
小程序页面之间传递参数通常可以通过以下几种方式实现: 通过 URL 参数传递:可以在跳转目标页面时,在 URL 中添加参数,目标页面可以通过 options 参数获取传递过来的数据。 // 页面 A wx.navigateTo({url: targetPage?param1value…...
C++list的模拟实现
为了实现list,我们需要实现三个类 一、List的节点类 template<class T> struct ListNode {ListNode(const T& val T()):_pPre(nullptr),_pNext(nullptr),_val(val){}ListNode<T>* _pPre;ListNode<T>* _pNext;T _val; }; 二、List的迭代器…...
Leetcode 187. 重复的DNA序列
DNA序列 由一系列核苷酸组成,缩写为 ‘A’, ‘C’, ‘G’ 和 ‘T’.。 例如,“ACGAATTCCG” 是一个 DNA序列 。 在研究 DNA 时,识别 DNA 中的重复序列非常有用。 给定一个表示 DNA序列 的字符串 s ,返回所有在 DNA 分子中出现不…...
都江堰泛计算操作系统(多机)应用方向
1、异构多核芯片 DJYOS是全球唯一支持异构多核的操作系统。当前的系统级芯片,为了适应多样化的用户需求,基本上都采用了异构多核架构。传统操作系统就需要在一个芯片内,运行多种操作系统,开发工作更加复杂,运行协同性低…...
【第十二届“泰迪杯”数据挖掘挑战赛】【2024泰迪杯】B题基于多模态特征融合的图像文本检索—解题全流程(论文更新)
【第十二届“泰迪杯”数据挖掘挑战赛】【2024泰迪杯】B题基于多模态特征融合的图像文本检索更新(论文更新) 本节主要更新了论文、训练日志的log数据提取(Loss、ACC、RK)等数据可视化作图的代码 B题交流QQ群: 4583…...
Spring Boot 实现流式响应(兼容 2.7.x)
在实际开发中,我们可能会遇到一些流式数据处理的场景,比如接收来自上游接口的 Server-Sent Events(SSE) 或 流式 JSON 内容,并将其原样中转给前端页面或客户端。这种情况下,传统的 RestTemplate 缓存机制会…...
从零实现富文本编辑器#5-编辑器选区模型的状态结构表达
先前我们总结了浏览器选区模型的交互策略,并且实现了基本的选区操作,还调研了自绘选区的实现。那么相对的,我们还需要设计编辑器的选区表达,也可以称为模型选区。编辑器中应用变更时的操作范围,就是以模型选区为基准来…...
【HarmonyOS 5.0】DevEco Testing:鸿蒙应用质量保障的终极武器
——全方位测试解决方案与代码实战 一、工具定位与核心能力 DevEco Testing是HarmonyOS官方推出的一体化测试平台,覆盖应用全生命周期测试需求,主要提供五大核心能力: 测试类型检测目标关键指标功能体验基…...
深入浅出:JavaScript 中的 `window.crypto.getRandomValues()` 方法
深入浅出:JavaScript 中的 window.crypto.getRandomValues() 方法 在现代 Web 开发中,随机数的生成看似简单,却隐藏着许多玄机。无论是生成密码、加密密钥,还是创建安全令牌,随机数的质量直接关系到系统的安全性。Jav…...
【论文笔记】若干矿井粉尘检测算法概述
总的来说,传统机器学习、传统机器学习与深度学习的结合、LSTM等算法所需要的数据集来源于矿井传感器测量的粉尘浓度,通过建立回归模型来预测未来矿井的粉尘浓度。传统机器学习算法性能易受数据中极端值的影响。YOLO等计算机视觉算法所需要的数据集来源于…...
CMake 从 GitHub 下载第三方库并使用
有时我们希望直接使用 GitHub 上的开源库,而不想手动下载、编译和安装。 可以利用 CMake 提供的 FetchContent 模块来实现自动下载、构建和链接第三方库。 FetchContent 命令官方文档✅ 示例代码 我们将以 fmt 这个流行的格式化库为例,演示如何: 使用 FetchContent 从 GitH…...
06 Deep learning神经网络编程基础 激活函数 --吴恩达
深度学习激活函数详解 一、核心作用 引入非线性:使神经网络可学习复杂模式控制输出范围:如Sigmoid将输出限制在(0,1)梯度传递:影响反向传播的稳定性二、常见类型及数学表达 Sigmoid σ ( x ) = 1 1 +...
高效线程安全的单例模式:Python 中的懒加载与自定义初始化参数
高效线程安全的单例模式:Python 中的懒加载与自定义初始化参数 在软件开发中,单例模式(Singleton Pattern)是一种常见的设计模式,确保一个类仅有一个实例,并提供一个全局访问点。在多线程环境下,实现单例模式时需要注意线程安全问题,以防止多个线程同时创建实例,导致…...
Docker 本地安装 mysql 数据库
Docker: Accelerated Container Application Development 下载对应操作系统版本的 docker ;并安装。 基础操作不再赘述。 打开 macOS 终端,开始 docker 安装mysql之旅 第一步 docker search mysql 》〉docker search mysql NAME DE…...
QT3D学习笔记——圆台、圆锥
类名作用Qt3DWindow3D渲染窗口容器QEntity场景中的实体(对象或容器)QCamera控制观察视角QPointLight点光源QConeMesh圆锥几何网格QTransform控制实体的位置/旋转/缩放QPhongMaterialPhong光照材质(定义颜色、反光等)QFirstPersonC…...
