当前位置: 首页 > 科技观察

人工智能对大规模存储基础设施的要求

时间:2023-03-17 16:42:49 科技观察

大规模人工智能(AI)在容量和性能方面提高了存储基础设施的门槛。对于人工智能或机器学习(ML)环境,容量增长到数十甚至数百TB的情况并不少见。尽管那些只提供全闪存阵列的供应商可能会声称,这些环境实在是太大了,无法仅存储在全闪存的一层上。这些环境中的大多数(由于它们的并行性质)从硬盘获得的服务几乎与从闪存获得的一样好。要求1:高性能网络AI/ML环境创建使用内部或直连存储(DAS)的计算服务器集群并不少见。尽管共享存储在使用可用容量和跨计算节点更均匀地分配工作负载方面效率更高,但组织愿意牺牲这些效率来消除计算节点和共享存储创建之间的网络延迟。NVMeoverFabric(NVMe-oF)是专为闪存和非易失性存储器等基于内存的存储设备而设计的下一代网络。它提供与DASNVMe几乎相同的延迟。NVMe的深度命令也非常适合高度并行化的工作负载,而AI/ML可能是所有工作负载中最并行的。NVMe-oF可能是专门为内存存储设计的,但它也是为AI/ML量身定制的。需求2:共享存储如果NVMe-oF能够解决计算和存储之间的延迟问题,它将实现第二个需求,即共享存储。借助NVMe-oF连接的共享存储解决方案,工作负载可以从共享存储的所有自然属性中受益。首先,所有节点都可以访问所有数据,这意味着工作负载可以更均匀地分配它们的计算负载。这也意味着具有图形处理单元(GPU)的节点可以访问所有数据。由于GPU比CPU昂贵得多,因此让GPU保持忙碌是当务之急,而共享存储使这变得更容易。当测量数十甚至数百PB时,在满足工作负载容量要求的情况下,存储效率的任何提高都可以带来显着的成本节约。在每个计算节点都有专用驱动器的集群中,IT无法轻松地将可用存储容量重新分配给集群中的其他节点。直接附加存储(DAS)模型中缺乏资源池也意味着组织无法有效地使用制造商推向市场的大容量驱动器。现在,双用途节点(计算和存储)可以安装12个或更多16TB+闪存驱动器或18TB+HDD,单个节点可能无法有效使用。如果AI/ML存储架构将来自专用服务器的相同HDD池化,则可以更精细地分配它。AI/ML工作负载不仅需要扩展以满足容量需求,还必须能够直接访问存储节点以满足性能需求。要求3:多层存储考虑到AI/ML数据集的大小,分层几乎是必须的,因为数十PB的闪存太昂贵了。公平地说,一些AI工作负载不遵循80/20规则,即80%的数据在任何给定时间都处于非活动状态。这些工作负载可以从100%休眠变为100%活跃。尽管如此,它们仍然是高度并行的,并且数百个性能较低的硬盘驱动器可以同时为工作负载提供服务,以提供这些工作负载所需的性能。如果没有,他们可以在当前网络技术允许的情况下尽可能快地传送数据。要求4:并行访问并行访问是指存储基础架构中的每个节点都为AI/ML集群中的每个计算节点提供对其所需数据的直接访问。单个控制节点不会成为瓶颈。由于可能需要同时访问存储池的大量计算节点,高水平的并行性对于AI/ML至关重要。正是这种并行性使得吞吐量能够使硬盘驱动器成为AI/ML存储基础设施中的组件。并行文件系统几乎总是需要客户端或代理,但除了提供并行访问外,代理通常比提供典型访问所需的开销更少。要求5:多协议虽然处理需要并行访问,但另一个要求是多协议访问,这对于将数据提取到存储基础设施中特别有用。许多人工智能和机器学习项目从物联网(IoT)设备接收数据。这些设备通常需要与它们附带的协议进行通信。许多设备通过SMB或NFS进行通信,少数使用S3。而且,几乎没有人使用本机并行文件系统客户端。要求6:高级元数据处理AI/ML工作负载是大量元数据,尽管通常不是因为它们使用媒体和娱乐工作负载等丰富的元数据。元数据在AI/ML工作负载中的重要性来自其常见文件的数量。在大多数情况下,数十亿至数百PB的人工智能工作负载包含数十亿个文件。这些文件中的每一个都有元数据,就像其他工作负载一样,大多数IO事务都来自元数据。AI/ML存储基础设施必须管理元数据,以便即使文件数量增加也能保持系统性能。元数据需要分布在整个存储集群中,以便所有节点都可以参与其管理。供应商还可以查看每个存储节点中闪存上的存储元数据,以确保系统始终响应。结论AI/ML工作负载与组织过去可能运行的任何其他工作负载有着根本的不同。早期的AI/ML项目已经依赖DAS进行数据存储。问题在于直连存储(DAS)无法均匀分配负载,这对于增加每个AI工作负载的GPU数量至关重要。此外,直连存储(DAS)效率极低,复制和移动数据所浪费的容量和时间消除了廉价硬盘驱动器的价格优势。