仔细研究存储延迟及其重要性

作者 | 2023年2月27日 | 全部, 技术

即时满足有多快?对于大多数软件用户来说,研究表明 0.1 秒或更短的延迟是 被认为是瞬时的。某一秒,用户的思绪开始走神。如果应用程序没有响应 五六秒,用户可能会感到沮丧或完全停止使用该应用程序。大多数时候,存储基础设施是这些延迟的罪魁祸首,这会导致最终用户体验不佳并对业务产生其他负面影响。

但组织数据存储基础设施中的多种不同因素可能会导致等待时间过长。存储行业常常关注每秒输入/输出操作数 (IOPS) 或吞吐量 (MB/s),而不是延迟,而延迟才是最重要的指标。

 

 

什么是存储延迟?

存储延迟是指存储设备发送并响应读或写请求所需的时间。具体来说,存储延迟是读取或写入命令在整个存储生态系统中移动(从应用程序请求到最终输出)所需的时间。该指标受到生态系统所有四个组成部分的影响:

      • 闪存
      • 存储固件
      • 为固件供电的 SSD 控制器
      • 存储系统基础设施

延迟考虑了存储固件的效率以及它利用 CPU 资源处理输入/输出请求的速度。

就像计算中的大多数事情一样,越快越好。请求遍历存储系统所需的时间越少,延迟就越低,请求处理的速度就越快。延迟是评估计算工作负载性能时应考虑的最重要因素之一,尤其是那些事务繁重的计算工作负载。

 

 

为什么存储延迟如此重要?

一个 福布斯文章 用一个有趣的类比来解释为什么延迟在存储中如此重要:

“你上下班时主要在高速公路上开车。高速公路具有一定的特征,如车道数量,类似于带宽,以及一定的每小时汽车总数,类似于IOPS。问题是,即使你知道这两个价值观,你也无法回答最重要的问题:上班需要多长时间?”

它接着说,延迟是最终的衡量标准,即开始工作所需的时间。当您计划通勤时,这才是真正重要的,虽然高速公路的数量和每小时汽车的容量会影响出行时间,但实际花费的时间才是效率的真正衡量标准。

当延迟较低时,计算系统的总体空闲时间就会减少。资源利用更加高效,组织实际上可以从现有存储中获得更多价值。

 

闪存在某些方面改善了延迟

当硬盘驱动器 (HDD) 作为首选存储介质时,延迟时间下降到毫秒(千分之一秒)范围内。与今天的 NAND 闪存固态硬盘 (SSD)但是,我们现在以微秒(百万分之一秒)为单位测量延迟。这是一个相当大的改进,但您可能会惊讶地发现延迟有时会达到峰值 10 倍。

虽然随着 NAND 闪存技术的发展,闪存介质提高了吞吐量并减少了延迟,但它根本没有影响其他存储系统组件的延迟。 SSD 供应商可以通过改善存储系统其他级别的延迟来使自己脱颖而出。

例如,SSD 控制器在增加或减少延迟方面发挥着非常重要的作用。它是协调通过系统发送读取或写入请求的整个过程的组件。无论闪存介质有多快,如果控制器无法快速发送或接收数据,延迟仍然会很高。此外,输入/输出 (I/O) 操作请求可能会被分配给已经在处理 I/O 操作的闪存芯片,并因此排队。

SSD 可能具有较高延迟的其他原因包括:

      • 磨损均衡——磨损均衡机制有两种类型:动态和静态。静态磨损均衡定期移动很少访问的静态/冷块,以便低使用率单元能够被其他数据使用。虽然这种技术可以延长设备的使用寿命,但复杂的后台进程涉及多个移动静态数据的操作,这将导致延迟并影响 SSD 的性能。
      • 垃圾收集(GC)——GC是存储系统中长尾延迟问题的主要原因之一。 GC 导致的长尾延迟比第 99 个百分位数的平均延迟高 100 倍以上。在这个幕后过程中,SSD 控制器会识别块中的陈旧数据页,并在将这些块上的所有有用数据移到其他地方后将其擦除。这会减慢 SSD 的速度并增加延迟。
      • 介质扫描 – SSD 控制器有时会在后台运行介质扫描,以主动查找并修复介质错误,以免在读/写操作期间造成真正的问题。这可能会导致 SSD 延迟增加。

 

 

群联如何解决存储延迟问题

作为业界领先的PCIe NVMe SSD控制器和SSD模组供应商之一, 群联科技大力投入研发——不仅要开发明天的技术解决方案,还要改进现有的解决方案。

Phison 帮助减少 SSD 解决方案延迟的一些方法包括:

      • 优化的固件设计——群联可以根据不同的使用案例和客户需求定制固件。例如,某些固件操作可以设计为在空闲时间执行,以避免增加延迟。可以利用群联的内部技术来优化服务质量,以满足独特的企业需求。在大多数情况下,群联可以根据特定需求和指定的延迟性能(包括超低延迟)设计定制SSD控制器和模块。
      • 专有的 CoXProcessor 2.0 – 该协处理器包括一个硬件加速器,可以减轻部分原始 CPU 的负载,有助于提高存储设备发出读/写命令的效率。
      • 双 CPU 设置 – 每个 CPU 在单个 SSD 中独立执行,驱动器可以同时处理多个读/写命令。不同的操作可以并行处理,从而减少延迟。
      • 垃圾收集固件 – Phison SSD 将垃圾收集负载分成小块并一点一点地处理它们,以帮助减少延迟并提高一致性。

 

 

加速创新的基础™

zh_CN简体中文