Kissinger
1 Nickel

RAID类型性能讨论贴

转到解答

存储公司经常发布一些性能测试数据,而有些数据又存在矛盾,造成我对于RAID类型的性能优劣存在争端,比如说RAID 5RAID10,可以介绍一下RAID 5适合那些应用类型,RAID10适合那些应用类型吗?谢谢!

标记 (1)
0 项奖励
1 个已接受解答

已接受的解答
Celia_Lee
2 Iron

Re: RAID类型性能讨论贴

转到解答

目前磁盘的性能比较差的原因是这种HDD的磁盘是需要寻址的, 而内存不需要寻址, 所以访问速度比较快. 而且现在很多的主板架构当中内存直接和CPU相连, 信道的传输时间也短. 所以大多数存储都使用内存来做为硬盘的缓存, 专门把内存划出一块来做为磁盘数据读写的缓存就是cache.

Cache是存储性能的一个重要指标. Cache越大, 缓存的数据越多, 存储的性能就越好.

Cache足够大, 主机写入的数据都能在内存里做缓冲, 这样就是命中.

如果存储的cache不够大, 这样不是所有的交互数据可以写入cache, 或是从cache读出, 这就是写入或是读出的miss, 这样需要通过磁盘做数据交互, 性能就差了.

所以命中率越高, 性能就好.

0 项奖励
17 条回复17
Jeffey1
4 Ruthenium

Re: RAID类型性能讨论贴

转到解答

楼主,评估RAID性能需要考虑几个因素,如:缓存大小、缓存命中率、读写数据类型等,不能抛开这些因素简单的来谈RAID类型性能。

就应用来说,我认为小I/O的数据库类型操作,如ERP等应用程序适合采用RAID10,大型文件存储和数据仓库等如视频编辑、监控程序等从空间利用的角度建议采用RAID5,可以减少磁盘空间浪费。

Roger_Wu
5 Tungsten

Re: RAID类型性能讨论贴

转到解答

大多数(80%)是读操作的随机I/O:RAID 5或6和同数量的RAID 1/0相同;如果是相同容量,那RAID 1/0更快:

random_io_read.jpg

大多数(20%+)是写操作的随机I/O:RAID 1/0最快:

random_io_write.jpg

高带宽的大数据块顺序I/O:RAID 5比RAID 1/0稍快;RAID 3比RAID 5稍快。但如果在混合型负载的应用下,RAID 1/0最合适,无论是顺序还是随机I/O都能很好地工作:

seq_io.jpg

Fenglin1
4 Ruthenium

Re: RAID类型性能讨论贴

转到解答

如果你的应用读比较多,写入比较少,Raid5还是个比较好的选择,经济与性能兼顾。显然你不可能把数据的事务日志存放在Raid5的磁盘上,那个更新太频繁。如果你是数据仓库,数据存在那里更新比较少,只是在生产报表的时候会有大量读取,raid5的多个盘并发读取会有助于这种情况。

如果不考虑成本的话,Raid10还是最好的选择,容错性能兼顾,写入性能比Raid5好多了。

Kissinger
1 Nickel

Re: RAID类型性能讨论贴

转到解答

非常感谢大家的解惑。对于缓存大小和缓存命中率在磁盘访问中的作用可以解释一下吗?设备中都有enable read cache和enable write cache的设置。

0 项奖励
Jeffey1
4 Ruthenium

Re: RAID类型性能讨论贴

转到解答

缓存的作用具体体现在读与写二个不同的方面:

写操作:一般存储阵列只要求数据写到缓存就算完成了写操作,当写缓存的数据积累到一定程度,阵列才把数据刷到磁盘,可以实现批量的写入。因此理论上缓存足够大,那么数据其实一直是写入缓存和后端RAID类型关系不大。

读操作:磁盘从开始寻道到找到数据花费的时间一般比较久,这对于密集型I/O的应用不理想。缓存为数据访问提供了命中可能,如果所需要读取的数据能在缓存中命中的话,将大大降少磁盘寻道所需要的时间。有数据显示磁盘寻道需要5ms,而读缓存只需要1ms以内。

因此,缓存大小和命中率有时候比RAID类型更加重要。

0 项奖励
Celia_Lee
2 Iron

Re: RAID类型性能讨论贴

转到解答

目前磁盘的性能比较差的原因是这种HDD的磁盘是需要寻址的, 而内存不需要寻址, 所以访问速度比较快. 而且现在很多的主板架构当中内存直接和CPU相连, 信道的传输时间也短. 所以大多数存储都使用内存来做为硬盘的缓存, 专门把内存划出一块来做为磁盘数据读写的缓存就是cache.

Cache是存储性能的一个重要指标. Cache越大, 缓存的数据越多, 存储的性能就越好.

Cache足够大, 主机写入的数据都能在内存里做缓冲, 这样就是命中.

如果存储的cache不够大, 这样不是所有的交互数据可以写入cache, 或是从cache读出, 这就是写入或是读出的miss, 这样需要通过磁盘做数据交互, 性能就差了.

所以命中率越高, 性能就好.

0 项奖励
Kissinger
1 Nickel

Re: RAID类型性能讨论贴

转到解答

那使用EFD盘是不是对缓存的需求就没有一般磁盘大了呢?

0 项奖励
xiaolong1
2 Bronze

Re: RAID类型性能讨论贴

转到解答

如何提高Cache命中率?EMC对提高Cache命中率有那些技术?

0 项奖励
Roger_Wu
5 Tungsten

Re: RAID类型性能讨论贴

转到解答

就随机I/O来说,EFD相比传统磁盘要快好几个数量级,因此对缓存需求就没那么大;

对顺序I/O这样的带宽型应用,EFD总有一个带宽极限(包括前端接口),因此还是需要缓存,特别是写缓存的。

0 项奖励