当前位置: 首页 > news >正文

云计算与大数据进阶 | 27、存储系统如何突破容量天花板?可扩展架构的核心技术与实践—— 分布式、弹性扩展、高可用的底层逻辑(上)

数据中心里,存储系统是至关重要的组成部分。由于相关硬件组件与存储操作系统的多样性和复杂性,如何在保证存储稳定、安全、可靠的同时,实现灵活扩展和自服务,一直是困扰数据中心全面云化的难题。

简单来说,现在的难题就在于:硬件和软件的复杂性导致存储系统像一堆零散的积木,拼起来费劲,改起来更麻烦,而云化又需要它像变形金刚一样,既能随时调整结构,又能稳稳当当不出错。那么,如何把这些零散的积木变成一个灵活又可靠的整体,就成了数据中心全面云化必须要跨过的一道坎。

如图1所示,常见的存储系统通常可分为三大:

  1. 直连存储(DAS)系统
  2. 网络附接存储(NAS)系统
  3. 存储区域网(SAN)系统
图1:存储系统的三大类

 

这3类存储系统实现扩展的方式各不相同,老夫在后文中分别讨论如何对它们实现可扩展性。

一、DAS系统的扩展性

想象一下,你有个超大的仓库(数据中心),里面堆满了数据。随着货物越来越多,怎么在不换仓库的前提下,高效管理这些东西?这就是 DAS(直接附加存储)系统扩展性要解决的问题 —— 不靠扩建仓库(增加昂贵硬件),而是用软件来指挥货物摆放(数据存储)。

1、DAS 的优势:软件搞定一切​

传统仓库管理可能依赖坚固的货架(硬件冗余),但 DAS 仓库玩的是 “软件流”。比如 Hadoop 的 HDFS,它就类似像个仓库管理员:​

  • 不用高端货架(不需要 RAID 硬件),普通货架(普通硬盘)就能用。​
  • 当某个货架坏了(硬盘故障),或者新来了货架(新增节点),它自动把货物挪到其他安全地方,保证所有货物都能快速找到。​
图1 Hadoop原生系统架构(DAS架构)

见上图所示,在软件逻辑层面,HDFS负责在出现硬盘故障(或增加新节点)时对数据进行自动重新平衡。类似的数字计算中心(Digital Computing Appliance,DCA)或超融合架构解决方案中也主要是通过软件系统来实现基于DAS的可扩展存储系统,比较典型的两个例子是VMware公司的Virtual SAN与EMC公司的ScaleIO。

2、三个 “仓库管理员” 大 PK​

1. Hadoop HDFS:大数据界的 “搬运工”​

Hadoop 是大数据处理的老大哥,它的仓库能塞进几千个货架(节点),而且越塞越顺手。适合处理海量日志、分析用户行为这种 “粗犷型” 任务,对货架偶尔坏几个根本不在乎,反正有软件自动补位。​

2. VMware Virtual SAN:VMware 家的 “管家”​

Virtual SAN 就像 VMware 家的 “专属管家”,只认 VMware 的仓库(vSphere 虚拟化平台)。它管理的货架最多 64 个,早期只有 32 个。好处是和自家系统配合得天衣无缝,适合中小型企业搭建自家的数据 “小仓库”。​

图2:Virtual SAN的逻辑架构

3. EMC ScaleIO:存储界的 “钥匙”​

ScaleIO 是个 “万能选手”,能适配各种仓库(Linux 系统或虚拟化平台),货架数量轻松上千,而且加得越多,干活越快(吞吐量线性增长)。无论是大型企业的核心数据库,还是云计算中心,它都能轻松驾驭。​

具体选谁好?看需求!​见下表:

需求场景​

推荐 “管理员”​

理由​

处理海量文件​

Hadoop HDFS​

抗造又能装​

自家 VMware 系统​

Virtual SAN​

省心不折腾​

超大型存储集群​

ScaleIO​

能者多劳,灵活适配​

​二、NAS系统的扩展性

 前面说完了 DAS,再来看看 NAS 系统,它就像是另一种风格的仓库。

NAS 系统是基于 IP 的高性能文件共享存储系统,好比是一个专门用来共享货物清单的仓库。

专用的 NAS 存储设备,由两部分组成:NAS 控制器(就像仓库的管家,也叫 “机头”)和底层的存储阵列(存放货物的货架)。

“管家” 负责和外面的客户(客户端)沟通联系,还能把客户要文件的请求,翻译成仓库里找货物的具体指令。而存储阵列就更灵活了,它可以不依赖 “管家” 单独工作,还能和其他仓库(主机)一起分享货物(服务其他存储接口类型)。

有些 NAS 系统还会把计算和存储分开,就像把仓库的 “货物搬运工”(计算能力)和 “货物存放区”(存储能力)分开管理。这样一来,“搬运工” 和 “存放区” 就能根据需要各自扩展,互不影响。而且通过加强 “仓库总管”(NameNode),还能避免出现单点故障,保证仓库一直正常运转。

图3: NAS存储设备的构成

NAS系统扩展最典型的例子是EMC公司的Isilon产品,除了为业界所熟知的OneFS文件系统(在一个逻辑文件系统内可以管理超过50PB的巨大容量以及支持高达375万的IOPS)​,它对Hadoop系统的优化也值得业界借鉴。Isilon对Hadoop系统的优化主要集中在两方面,如下图所示,具体如下:

图4:Isilon对Hadoop架构的优化

Isilon 在存储上就很聪明,别人存数据可能要准备 3 份备份(3 倍镜像),它只需要 1.3 份备份(1.3 倍镜像),就能达到差不多的安全效果,这样一来,成本更低,性价比更高(ROI 更高)。

Isilon 是怎么做到能不断扩展的呢?这里要引入一个概念:横向扩展的NAS。

横向扩展NAS集群分别使用独立的内部网络和外部网络进行前端和后端连接,其中内部网络提供用于群集内通信的连接,外部网络的连接使客户端能够访问和共享文件数据。群集中的每个节点均连接到内部网络。内部网络可提供高吞吐量和低时延,且使用高速网络技术,例如InfiniBand或千兆乃至万兆以太网。若要使客户端能够访问某节点,则该节点必须连接到外部以太网网络,可以使用冗余的内部或外部网络以获得高可用性。InfiniBand可提供主机与外围设备之间低时延、高带宽的通信链路;可提供串行连接,且常用于高性能计算环境中服务器间的通信。InfiniBand支持远程直接存储器访问(Remote Direct Memory Access,RDMA),使设备(主机或外围设备)能够直接从远程设备的内存中访问数据。InfiniBand还支持单一物理链路使用多路复用技术同时传输多个通道的数据。

简单来说,它就像给仓库建了两条 “传送带”:一条内部传送带(内部网络),专门供仓库内部工作人员(节点)传递消息、搬运货物,速度快、不堵车;另一条外部传送带(外部网络),负责和外面的客户对接,让客户能随时拿到想要的货物(访问和共享文件数据)。而且,为了保证的传送带速度够快,它会用一些高速网络技术,比如 InfiniBand,这就好比给传送带装上了一个发动机,有了它,仓库里的设备之间传递数据又快又稳,还能同时处理好多任务。所以说,NAS 系统能不能灵活扩展、稳定运行,很大程度上就看这些传送带(网络设备)给不给力了。

由以上描述可知,NAS系统的可扩展性以及高可用性在很大程度上是依赖于网络设备的,特别是高带宽路由器解决方案,以确保分布式的存储系统中的各节点间的高数据吞吐量。以Hadoop over Isilon为例,OneFS的并发数据吞吐量可高达100GB/s。图5展示了NAS系统的横向扩展。

图5: NAS系统的横向扩展

今天我们深入了解了 DAS 与 NAS 系统的扩展性奥秘,而存储的世界远比这更精彩。明天,老夫将继续探索SAN系统统一存储系统的扩展性,看看它们如何为数据存储带来更多可能!!88~

 (文/Ricky - HPC高性能计算与存储专家、大数据专家、数据库专家及学者) 

http://www.xdnf.cn/news/548641.html

相关文章:

  • 第7天-Python+PyEcharts实现股票分时图实战教程
  • workflow:高效的流式工作架构
  • BPMN.js编辑器设计器与属性面板数据交互
  • 【动手学深度学习】系列
  • 【AI News | 20250520】每日AI进展
  • 5.20 note
  • 什么是 AI 人工智能?什么是机器学习?什么是深度学习?三者啥关系
  • 基于AutoDL市场下的Pycharm远程控制
  • Redis从入门到实战 - 高级篇(中)
  • Jedis快速入门【springboot】
  • NMOS和PMOS的区别
  • 大语言模型 14 - Manus 超强智能体 开源版本 OpenManus 上手指南
  • 从混乱到高效:我们是如何重构 iOS 上架流程的(含 Appuploader实践)
  • 南柯电子|储能EMC整改:从单点整改到智能预测的进化路径
  • 瑞萨单片机笔记
  • #渗透测试#批量漏洞挖掘#LiveBos UploadFile(CVE-2021-77663-2336) 任意文件上传漏洞
  • Translational Psychiatry | 注意缺陷多动障碍儿童延迟厌恶的行为与神经功能特征茗创科技茗创科技
  • MySQL与Redis一致性问题分析
  • 数据库与存储安全
  • DeepSeek在政务与公共服务中的智能化实践
  • 中国国际软件发展大会荣誉揭晓,远光九天 AI 应用开发平台获评“软件行业突破性技术成果”
  • 多模态实时交互边界的高效语音语言模型 VITA-Audio 介绍
  • 全球氰化物测定仪市场:现状、趋势与展望
  • PLC系统中开关量与模拟量信号解析
  • 跳空高低开策略思路
  • 优化Hadoop性能:如何修改Block块大小
  • SpringBoot与GeoHash整合,实现骑手就近派单功能
  • Go语言实战:使用 excelize 实现多层复杂Excel表头导出教程
  • Github 2025-05-20Python开源项目日报 Top9
  • 重要通知!!2025年上半年软考考试准考证打印通知(附各地区打印时间表)