【虚拟化实战】存储设计之五IOPS
来源:互联网 发布:西裤材质 知乎 编辑:程序博客网 时间:2024/05/01 10:15
作者:范军 (Frank Fan) 新浪微博:@frankfan7 微信:frankfan7
在存储设计中最常用的一个性能衡量参数就是IOPS,但是不是仅IOPS就足以帮助我们作出设计决定呢?这方面有很多认识上的误区。绝大多数情况下仅仅单独考虑IOPS是没有意义的。本文以一个案例来带你了解全面考虑影响存储性能的方方面面。
因为影响存储性能的因素太多了,而且不同存储产品的特性和处理方式也不同,为了简化的目的,本文暂不讨论Write/Read ratio,Sequential/random, RAID Penalty,Cache,Dedupe,auto-Tiering,Partition Alignment等因素。
衡量指标:
Throughput
单位时间内传输的数据量。往往以KBPS或MBPS来衡量。
Latency (响应时间)
指完成一个IO请求所需要的时间。往往以milliseconds来衡量。
IOPS
Input-Output Per Second。衡量在一秒内能完成多少读操作和写操作。
Latency和IOPS的关系
IOPS = 1000/(Seek Latency+ Rotational Latency)
以上公式仅仅是在单个Disk的情况下的计算。这当然不能反映真实环境。但帮助我们大概了解二者的关系。下图的数据很老,仅仅说明不同类型Disk支持的IOPS是不同的。
RPM
IOPS
SSD
6000
15K
175
10K
125
7200
75
5400
50
以上是最简化的情况,没有考虑Write/Read ratio,RAID Penalty,Cache等因素。
那么在使用商用存储阵列情况下,我们可不可以说IOPS越高,Latency就越低呢?不可以简单下这个结论。
IOPS和Latency不是简单的线性关系,在IOPS小于一个数值(比如3000之内),IOPS越高可能Latency就越低。一旦超过该临界点,比如IOPS在4000的时候,Latency可能是IOPS在3000时的3倍!这个临界点取决于使用的阵列。
在你看到某阵列支持Million IOPS的数据时,别高兴的太早。也许该阵列处理那么多IOPS时Latency会高达30 ms!如果你的应用对Latency要求很高,比如信用卡系统的实时Transaction,大于4ms的Latency足以让该Transaction失败.
Block Size,Throughput和IOPS的关系
虚拟化架构师常考虑的一个问题是,前端接口卡(HBA,iSCSINIC)的带宽需要多大?后台存储能否有能力处理预计的IOPS?
假设有一个桶,桶的容积是一定的。可以容下很多小球,可是只能容下几个大球。
这里球的容积指的是一个操作的BlockSize。
BLOCK SIZE:
Block size是由具体应用程序来决定的,同一个应用在不同情况下Block Size也是不同的。比如Oracle在处理Online Transaction时Block Size 是2KB或者4KB ,而在decision support system中的BlockSize是8KB,16KB 甚至16KB。EXCHANG2007使用8KB,SQL最小使用8KB,而SAP使用64KB
下面的公式是描述Block Size,Throughput和IOPS的关系
Throughput(MB perSecond)* 1024( Convert KB to MB)/Block Size (KB/IO) = IOPS
情景一
以某种备份应用程序为例,连续地写操作,Block Size是64KB,如果采用16Gb FC HBA, 那么Throughput是1700 MBps ,套用该公式得出:
1700MBps * 1024 /64KB = 27,2000 IOPS
相对于8Gb FC而言, 16Gb FC的Throughput值更大,也就意味着能传输更高的IOPS。千万注意这只是考虑了前端的情况。后台的存储能否处理这么多的IOPS呢?那就要咨询你的存储提供商了,在保证支持该IOPS的同时,Latency也要满足你应用的要求。
情景二
刚才我们是在预先假定Throughput一定的情况下来推算从前端传输到后台存储的IOPS,我们也可以反过来应用那个公式。
假设一个采用iSCSI共享存储的虚拟桌面环境,每台win7虚拟机20IOPS,一共有200台,那么对存储的要求是能处理20*200=4000 IOPS。通常window的I/O size是4KB,那么iSCSI NIC的速度需要多快呢?
X * 1024 / 4 KB = 4000
X=15.625 MBps or 0.12 Gbps.
这意味着1Gbps的iSCSI完全能满足上述要求。
通过我们上面的两个情景,一正一反两种方式应用了那个公式。
参考:
StorageBasics – Part IX: Alternate IOPS Formula
Understanding how storage design has a big impact onyour VDI (updated September 2011)
http://www.yellow-bricks.com/2009/12/23/iops/
UnderstandingIOPS
Moreon Performance Metrics: The Relationship Between IOPS and Latency
- 【虚拟化实战】存储设计之五IOPS
- 实战虚拟化存储设计之四本地存储
- 【虚拟化实战】网络设计之五IP Storage
- 实战虚拟化存储设计之LUN Sizing
- 实战虚拟化存储设计之三MultiPathing
- 【虚拟化实战】存储设计之六latency
- 【虚拟化实战】存储设计之七Block Size
- 【虚拟化实战】存储设计之一存储类型
- 实战虚拟化之设计模板
- Citrix 服务器虚拟化之五 Xenserver配置存储
- Citrix 服务器虚拟化之五 Xenserver配置存储
- 【虚拟化实战】网络设计之二vLAN
- 【虚拟化实战】网络设计之三PVLAN
- 【虚拟化实战】网络设计之四Teaming
- 【虚拟化实战】容灾设计之三Stretched Cluster
- 【虚拟化实战】容灾设计之四VPLEX
- 【虚拟化实战】VM设计之二内存机制
- 【虚拟化实战】VM设计之三内存资源控制
- java 环境变量配置
- 带分数
- 递归与分治策略
- hdoj_2048 神、上帝以及老天爷
- window.opener.location.reload() and href()的区别 弹出页修改后刷新父窗体 .
- 【虚拟化实战】存储设计之五IOPS
- android 即时通讯
- 基于spring的调用web形式的cxf服务的方法
- checkStyle代码规范
- apache_commons_io中的FileUtils学习
- WIN8开发中使用进度条
- windows7X64环境下wamp开启PHP_Curl组件
- COM技术
- 在重庆结点前插入新结点天津