作者:范军 (Frank Fan)新浪微博:@frankfan7 微信:GetToCloud
在实战存储设计之六Latnecy我们介绍Latency过高的原因和一些建议。本文重点分析Block Size对性能特别是latency的影响。
什么是Block Size?
Block Size这个词在不同的语境中有不同含义。在此文中指的是在OS中运行的应用发出一个IO读或写请求所传送的数据单元的大小。无论你采用传统存储架构,还是融合,超融合等架构,IOBlock Size对性能都有影响。
如同下图所示,一个IO请求比如搬一块砖,砖块的大小对整个存储架构中的很多组件的负荷都有影响。比如HBA,存储交换机,存储系统的CPU等等,当然存储介质本身对不同砖块的处理能力也不同。
上图摘自博客vmpete.com
为什么Block Size对存储性能有很大影响?
对Throughput的影响:
Throught = IOPsx Block size
同样是10IOPs,256K blocks 需要传输的数据是4K Blocks 的64倍!那么自然会对存储网路的带宽以及存储控制器的CPU消耗都有影响。
对时延Latency的影响
上图摘自vmpete.com。 这是在采用存储性能分析软件PernixData Architect之后,显示了不同Block Size对Lantency的影响。可见当Block Size大于64K时对Lantency的影响最大。