IO性能最重要的三个指标_第1页
IO性能最重要的三个指标_第2页
IO性能最重要的三个指标_第3页
IO性能最重要的三个指标_第4页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、最重要的三个指标IOPSIOPS即每秒钟处理的IO请求数量。IOPS是随机访问类型业务(OLTP类) 很重要的一个参考指标。一块物理硬盘能提供多少IOPS从磁盘上进行数据读取时,比较重要的几个时间是:寻址时间(找到数据 块的起始位置),旋转时间(等待磁盘旋转到数据块的起始位置),传输时间 (读取数据的时间和返回的时间)。其中寻址时间是固定的(磁头定位到数据 的存储的扇区即可),旋转时间受磁盘转速的影响,传输时间受数据量大小的 影响和接口类型的影响(不用硬盘接口速度不同),但是在随机访问类业务 中,他的时间也很少。因此,在硬盘接口相同的情况下,IOPS主要受限于寻址时间和传输时间。以一个15K的

2、硬盘为例,寻址时间固定为 4ms,传输时间为 60s/15000*1/2=2ms,忽略传输时间。1000ms/6ms=167 个 IOPSOS的一次IO请求对应物理硬盘一个IO吗?在没有文件系统、没有 VM (卷管理)、没有RAID没有存储设备的情况 下,这个答案还是成立的。但是当这么多中间层加进去以后,这个答案就不是 这样了。物理硬盘提供的IO是有限的,也是整个IO系统存在瓶颈的最大根源。所 以,如果一块硬盘不能提供,那么多块在一起并行处理,这不就行了吗?确实 是这样的。可以看到,越是高端的存储设备的 cache越大,硬盘越多,一方面通过 cache异步处理IO,另一方面通过盘数增加,尽可能

3、把一个OS的IO分布到不同硬盘上,从而提高性能。文件系统则是在cache上会影响,而VM则可能是一个IO分布到多个不同设备上(Striping)。所以,一个OS的10在经过多个中间层以后,发生在物理磁盘上的10是不确定的。可能是一对一个,也可能一个对应多个。IOPS能算出来吗?对单块磁盘的IOPS的计算没有没问题,但是当系统后面接的是一个存储系 统时、考虑不同读写比例,IOPS则很难计算,而需要根据实际情况进行测试。 主要的因素有:o存储系统本身有自己的缓存。缓存大小直接影响 IOPS理论上说,缓存 越大能cache的东西越多,在cache命中率保持的情况下,IOPS会越高。oRAID级别。不

4、同的RAID级别影响了物理10的效率。o读写混合比例。对读操作,一般只要 cache能足够大,可以大大减少物理 10,而都在cache中进行;对写操作,不论cache有多大,最终的写还是会落到 磁盘上。因此,100%写的IOPS要越狱小于100%的读的IOPS同时,100%写的 IOPS大致等同于存储设备能提供的物理的IOPSo 一次IO请求数据量的多少。一次读写1KB和一次读写1MB,显而易见, 结果是完全不同的。当时上面N多因素混合在一起以后,IOPS的值就变得扑朔迷离了。所以, 一般需要通过实际应用的测试才能获得。IO Resp onse Time即IO的响应时间。IO响应时间是从操作系

5、统内核发出一个IO请求到接收 到IO响应的时间。因此,IO Response time除了包括磁盘获取数据的时间,还包 括了操作系统以及在存储系统内部IO等待的时间。一般看,随IOPS增加,因为 IO出现等待,IO响应时间也会随之增加。对一个 OLTP系统,10ms以内的响应 时间,是比较合理的。下面是一些IO性能示例:一个8K的IO会比一个64K的IO速度快,因为数据读取的少些。一个64K的10会比8个8K的10速度快,因为前者只请求了一个10而 后者是8个10。串行I0会比随机I0快,因为串行I0相对随机I0说,即便没有Cache 串行I0在磁盘处理上也会少些操作。需要注意,I0PS与 l

6、OResponseTime有着密切的联系。一般情况下,IOPS增 加,说明IO请求多了,IO Response Time会相应增加。但是会出现IOPS一直增 加,但是IO Response Time变得非常慢,超过20ms甚至几十ms,这时候的 IOPS虽然还在提高,但是意义已经不大,因为整个IO系统的服务时间已经不可取。Throughput为吞吐量。这个指标衡量标识了最大的数据传输量。如上说明,这个值在 顺序访问或者大数据量访问的情况下会比较重要。尤其在大数据量写的时候。吞吐量不像IOPS影响因素很多,吞吐量一般受限于一些比较固定的因素, 如:网络带宽、IO传输接口的带宽、硬盘接口带宽等。一

7、般他的值就等于上面 几个地方中某一个的瓶颈。一些概念IO Chu nk Size即单个IO操作请求数据的大小。一次IO操作是指从发出IO请求到返回数 据的过程。IO Chu nk Size与应用或业务逻辑有着很密切的关系。比如像Oracle一类数据库,由于其blocksize一般为8K,读取、写入时都此为单位,因此,8K 为这个系统主要的IO Chunk Size IO Chunk Size小,考验的是IO系统的IOPS能力;IO Chunk Size,考验的时候IO系统 的IO吞吐量。Queue Deep熟悉数据库的人都知道,SQL是可以批量提交的,这样可以大大提高操作效 率。3 / 4IO

8、请求也是一样,10请求可以积累一定数据,然后一次提交到存储系统, 这样一些相邻的数据块操作可以进行合并,减少物理I0数。而且QueueDeep如其名,就是设置一起提交的I0请求数量的。一般 Queue Deep在I0驱动层面上 进行配置。Queue Deep与IOPS有着密切关系。Queue Deep主要考虑批量提交10请 求,自然只有IOPS是瓶颈的时候才会有意义,如果I0都是大10,磁盘已经成 瓶颈,QueueDeep意义也就不大了。一般来说,IOPS的峰值会随着QueueDeep 的增加而增加(不会非常显著),Queue Deep一般小于256。随机访问(随机10)、顺序访问(顺序10)

9、随机访问的特点是每次I0请求的数据在磁盘上的位置跨度很大(如:分布 在不同的扇区),因此 N个非常小的I0请求(如:1K),必须以N次I0请求 才能获取到相应的数据。顺序访问的特点跟随机访问相反,它请求的数据在磁 盘的位置是连续的。当系统发起 N个非常小的I0请求(如:1K)时,因为一次 I0是有代价的,系统会取完整的一块数据(如4K、8K),所以当第一次I0完成时,后续I0请求的数据可能已经有了。这样可以减少I0请求的次数。这也就是所谓的预取。随机访问和顺序访问同样是有应用决定的。如数据库、小文件的存储的业 务,大多是随机I0。而视频类业务、大文件存取,则大多为顺序10。选取合理的观察指标:以上各指标中,不用的应用场景需要观察不同的指标,因为应用场景不 同,有些指标甚

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论