存储系统是IT系统的重要组成部分,负责数据的可靠存储和IO访问,其评价标准主要为存储的可靠性、性能和可提供的存储容量。目前的信息技术领域的热点依然是云计算、AI、大数据分析以及5G带动的IoT,而传统企业级应用的IT系统已经日趋完善。
目前的IT市场格局主要由互联网厂商、传统IT厂商和新兴初创型技术公司组成,而IT系统的建设部署主要包括公有云、企业自建数据中心(On-Premises),以及近两年发展起来的边缘计算。
Gartner于今年7月发布的《2022年存储与数据保护技术成熟度曲线报告》显示出如下未来存储市场发展趋势:
下文将对数据中心、公有云、边缘计算这三种主要部署场景中的存储技术的发展趋势进行分析。
一、数据中心(On-Premises)存储技术发展趋势
数据中心主要承载企业的生产业务,以ERP、CRM、SCM等传统应用为主。目前此类应用已主要采用全闪存存储,其中NVMe全闪存逐渐成为主流趋势。同时存储与前端应用主机的网络存储协议开始采用NVMe over Fabrics(NVMe-oF)。
NVMe-oF是一种存储网络协议,通过网络将NVMe命令传送到远程NVMe子系统,以利用NVMe 全闪存的并行访问和低延迟,该规范定义了一个协议接口,旨在与高性能fabric技术配合使用,包括通过实现RDMA技术的InfiniBand、RoCE v2、iWARP或TCP。
NVMe-oF是一种使用NVMe协议将访问扩展到远程存储系统的非易失性存储器(NVM)设备的方法。这使得前端接口能够连接到存储系统中,扩展到大量NVMe设备,并延长数据中心内可以访问NVMe子系统的距离。NVMe-oF的目标是显著改善数据中心网络延迟,并为远程NVMe设备提供近似于本地访问的延迟,目标为10us。今后,NVMe over TCP很可能会发展成为NVMe-oF非常重要的数据中心传输机制,VMware在2021年已宣布对NVME over TCP的官方支持。
目前对NVMe-oF的软件支持仍处于起步阶段,但随着它的扩展和成熟,像金融、电信运营商等信息化建设领先者,要么使用NVMe over RoCE v2部署NVMe-oF,要么在基于TCP/IP的产品上部署NVMe-oF,以利用最新的以太网部署,从而简化过渡并提供投资保护。
目前NVMe和基于NVMe-oF的解决方案主要应用场景包括关系型数据库或内存数据库的事务处理、AI/ML、HPC等需要高IOPS、高带宽和极低访问延迟的场景。
二、公有云存储技术发展趋势
公有云目前基于软件定义存储技术,采用分布式存储架构提供分布式块存储、对象存储以及分布式文件访问服务。
目前公有云存储技术有两个新的发展趋势:xPU和容器存储。
(1)xPU技术
xPU包括SmartNIC、DPU(Data Processing Unit)、IPU(Infrastructure Processing Unit)、FAC(Function Accelerator Card)、NAPU(Network Attached Processing Unit)等。这是一类具有专用硬件加速器和可编程处理器的设备,可加速网络、安全和存储功能,为数据流、包处理提供性能优化,提供加速、卸载和本地服务,部署为ASIC、FPGA或SoC。
xPU除了能够连接到网络外,还可提高数据运营和服务、服务器可用性以及网络性能和安全性。xPU具有板载存储器和多种网络接口,可以独立运行。xPU通过虚拟交换、安全和应用交付控制(ADC)等卸载功能,将服务器性能提高多达50%。目前xPU主要被AWS、Microsoft Azure、阿里云等公有云采用。
xPU可实现经济高效的数据中心环境,同时提高性能。通过卸载高开销的各种功能,它们允许服务器运行更多工作负载,从而提高服务器的资源利用率,在某些情况下,还可以降低基础设施软件的License费用。
AI/ML工作负载、3D建模、地震分析和大数据分析的兴起对存储和网络产生了前所未有的需求,从而导致延迟和带宽问题。xPU也越来越多地用于高性能全闪存存储系统中,以提高IOPS并最大限度地减少延迟。xPU可以提供基于fabric的NVMe-oF和GPU直接存储,实现NVMe-oF加速和AI/ML加速,加速远程资源之间的数据传输,可用于HPC、AI/ML以及各种高性能分析等应用场景。
(2)容器原生存储(Container Native Storage)
公有云环境需要新的数据管理工具和流程,以便提供由容器中运行并由K8S编排的有状态应用程序访问的存储服务。K8S存储标准化受益于容器存储接口(CSI)的引入和日益普及,CSI接口由云原生计算基金会(CNCF)推广。
容器原生存储(CNS)是专门设计用于支持容器工作负载,专注于满足独特的云原生架构、粒度和性能需求,同时提供与容器管理编排系统的深度集成。CNS与微服务体系结构原则保持一致,并遵循容器本机数据服务的要求,包括与硬件无关、API驱动以及基于分布式软件体系结构。
许多基于容器的应用程序需要支持持久性数据,容器原生存储专门设计用于运行云原生应用程序,其通用基础通常基于分布式、软件定义的统一存储池,并具有数据服务的容器级粒度。容器原生存储的整个堆栈通常使用K8S进行编排,以管理容器生命周期集成。
容器存储支持部署有状态云原生应用程序,从而提高弹性、可用性以及混合云和多云集成,并且消除了在构建和部署现代云原生应用程序的端到端过程中实现便携式基础设施敏捷性的瓶颈。容器原生存储可以部署在本地或云中,成为混合云和多云部署基础设施的最佳选择。由于CNS函数基于软件,因此可以在容器中实现,从而可以使用与容器化应用程序相同的业务流程函数对其进行管理。容器存储最适合新的云本机应用程序,或者将进行重大重构修订的应用程序。未来公有云会选择符合微服务架构原则并符合容器原生数据服务要求的存储解决方案,例如与硬件无关、API驱动、基于分布式架构,并且能够支持边缘、核心或公有云部署。
三、边缘计算存储技术发展趋势
边缘计算包括许多特定应用场景,比如加密、视频编码、AI/ML面部识别等,其特点是数据要在本地快速处理,并通过网络将处理结果传输到数据中心或者公有云/混合云中。目前的技术限制主要在于本地数据处理能力和网络传输带宽不足。通过压缩/解压缩引擎,使驱动器能够在每GB闪存中存储更多数据,并能在窄带内保持高传输性能是边缘计算的核心存储需求,而最新流行的计算存储将成为适合边缘计算的最佳存储技术。
计算存储(Computational Storage)将主机数据处理从CPU主内存卸载到存储设备,涉及位于存储设备上的更复杂的处理功能。计算存储采用FPGA、ASIC更强大的处理能力,SSD上配置低功耗CPU内核。由于需要将操作任务卸载到SSD驱动器中,主机应用程序必须能够与计算存储的存储驱动器充分通信。全球存储网络工业协会(SNIA)目前已发布计算存储V1.0标准,这个开放标准框架使主机服务器应用程序能够与计算存储设备进行交互。
计算存储是一种新型存储驱动器,可为延迟敏感型应用场景(如AI/ML、IoT、沉浸式和混合现实流以及本地和边缘的高频交易)提供一致的性能。边缘计算是计算存储应用的一个主要场景,有利于分布式处理和电源效率的应用程序未来也可以利用计算存储。在边缘计算中,计算存储可减少与应用程序相关的内存管理挑战,这解决了与存储相关的数据移动问题。与传统SSD相比,计算存储的低功耗和低占用空间提高了每瓦性能,降低了边缘应用的功耗成本。同时,将更强大的嵌入式计算引擎与SSD控制器进行集成可以大幅缩短数据处理时间,提高压缩效率,改善其它关键驱动功能。
计算存储减少在存储和应用程序计算资源之间移动数据时的性能低效率、能耗和延迟敏感问题,就近处理数据并分析数据生成和存储的位置,使用户能够在设备级别提取业务分析数据。随着数据量的增加和数据移动网络带宽成为瓶颈,计算存储可以明显减少边缘工作负载的延迟。存储效率的显著提升和成本的降低将使计算存储成为边缘计算的最佳技术选择。
但不管哪类存储,企业用户都要从性能、可靠性、稳定性、备份容灾等多角度考量,在面对核心业务应用场景的方案选择时,对开源存储均持谨慎态度。特别是本身对安全稳定要求比较高的金融客户,还要面临后续软件维护、更新迭代等一系列技术挑战。因此,在核心业务、生产系统和大规模部署情况下,企业用户选择存储系统的观念依然“保守”,相比开源存储,自研存储系统依然是企业用户核心业务的首选。