===================================================
SSD与RAID 5
1、在RAID 5这类Parity-RAID上存在partial-stripe写问题,当发生partial-stripe写时,首先需要将条带中没有被更新的数据读取出来,然后与新写入的数据进行合并,在计算校验值,将新更新的数据和校验值一起写入到磁盘,整个Partial-stripe写过程即“读--修改--写", Partial-strip写会严重影响性能,增加IO延迟。由于SSD采用out-of-place的数据更新方式,频繁地Partial-stripe写会导致SSD写放大系数增大,影响SSD的使用寿命。

2、当RAID5中出现故障盘时,需要对更换的磁盘从头到尾巴做全部数据重构,SSD采用FTL(Flash Translation Layer)进行Page/Block隐射,如果新盘的可用page页耗尽,会触发SSD启用垃圾回收(GC)机制,影响SSD磁盘性能。

3、相同类型的SSD盘的使用寿命基本相同,Parity-RAID将条带中的数据均匀分布到所有磁盘上,使得所有磁盘的IO均等,导致SSD磁盘同时发生故障的概率身高。

由于RAID 5配置会严重SSD磁盘性能和使用寿命,因此不建议基于SSD磁盘配置RAID 5这类Parity-RAID。

===================================================
SSD 与 RAID 0
使用两块SSD磁盘做RAID0与单块SSD磁盘做对比,结果如下:
1、对于顺序写和顺序读,RAIDO的IOPS性能和IO吞吐能力是单块SSD的两倍。
2、对于随机写和随机读:
    A)当队列深度为1时,RAIDO的IOPS性能与单块SSD的IOPS性能基本持平。
    B)当队列深度为64时,RAIDO的IOPS性能和IO吞吐能力是单块SSD的两倍。
3、IO延迟问题
    A)对于读操作,RAID0的IO延迟略高于单块SSD。
    B)对于写操作,RAID0的IO延迟远高于单块SSD。
    C)增加磁盘队列深度并不会降低RAID0的IO延迟问题。

参考:
http://blog.51cto.com/alanwu/1430288

MySQL Disk--SSD与RAID的更多相关文章

  1. PatentTips - Solid State Disk (SSD) Device

    BACKGROUND OF THE INVENTION A SSD apparatus is a large-capacity data storage device using a nonvolat ...

  2. MySQL服务器SSD性能问题分析与测试

    [问题] 我们有台HP的服务器,SSD在写IOPS约5000时,%util达到80%以上,那么这块SSD的性能究竟有没有问题,为解决这个问题做了下面测试. [工具] blktrace是linux下用来 ...

  3. SystemTapでMySQL 5.5のDisk I/Oを分析する

    http://d.hatena.ne.jp/sh2/20111121 2010年1月の記事SystemTapでMySQLのDisk I/Oを分析するの続きです.以前作成したSystemTapスクリプト ...

  4. SSD阵列卡方案优化:考虑使用RAID 50替代RAID 10

    最近一直在研究RAID 50,因为牺牲一半的容量的RAID 10代价实在太大了,而且它提供的可用性也并不是百分百的,我们首先来看下RAID 10的可用性分析: 以同等容量的不同RAID方式作为案例分析 ...

  5. Percona 开始尝试基于Ceph做上层感知的分布式 MySQL 集群,使用 Ceph 提供的快照,备份和 HA 功能来解决分布式数据库的底层存储问题

    本文由 Ceph 中国社区 -QiYu 翻译 英文出处:Using Ceph with MySQL 欢迎加入CCTG Over the last year, the Ceph world drew m ...

  6. 14.2.1 MySQL and the ACID Model

    14.2 InnoDB Concepts and Architecture InnoDB 概念和结构体系: 14.2.1 MySQL and the ACID Model 14.2.2 InnoDB ...

  7. mysql主从延迟

    1. MySQL数据库主从同步延迟原理.要说延时原理,得从mysql的数据库主从复制原理说起,mysql的主从复制都是单线程的操作,主 库对所有DDL和DML产生binlog,binlog是顺序写,所 ...

  8. MySQL 5.6 Reference Manual-14.2 InnoDB Concepts and Architecture

    14.2 InnoDB Concepts and Architecture 14.2.1 MySQL and the ACID Model 14.2.2 InnoDB Multi-Versioning ...

  9. MySQL 数据库架构

    1 架构 master-slave性能,qps,tps,cpu,disk,memory,network,raid卡,fashion卡, 并发量:同一时刻需要db处理 连接量: 大表:1000w行或者表 ...

随机推荐

  1. 16S 基础知识、分析工具和分析流程详解

    工作中有个真理:如果你连自己所做的工作的来龙去脉都讲不清楚,那你是绝对不可能把这份工作做好的. 这适用于任何行业.如果你支支吾吾,讲不清楚,那么说难听点,你在混日子,没有静下心来工作. 检验标准:随时 ...

  2. sgu 126 Boxes

    题意:较大的容量减较小的容量,较小的容量翻倍.问操作几回其中一个空. 开始用set判重,重复就不可行.不过状态最多有2e18种.不仅爆内存,还超时.然后找规律.发现只有比例为1:1,1:3,1:7,3 ...

  3. dubbo监控报错Error creating bean with name 'uriBrokerService'

    在jdk1.8下面会出现此错误 解决方法: 1.更换服务器jdk版本.(会影响其他项目环境) 2.修改dubbo-admin tomcat默认jdk版本. 3.修改dubbo-admin项目依赖(de ...

  4. Python装饰器、生成器、内置函数、json

    这周学习了装饰器和生成器,写下博客,记录一下装饰器和生成器相关的内容. 一.装饰器 装饰器,这个器就是函数的意思,连起来,就是装饰函数,装饰器本身也是一个函数,它的作用是用来给其他函数添加新功能,比如 ...

  5. Silverlight 5 Developer Rumtime

    因为更新了Silverlight SDK,所以也要更新相应的Silverlight开发运行时. Silverlight 5 Developer Rumtime (32bit): http://go.m ...

  6. iOS UI-团购案例(通过xib文件自定义UITableViewCell)

    一.Model #import <Foundation/Foundation.h> @interface Goods : NSObject @property (nonatomic, co ...

  7. win10解除密码

  8. PHP中输出本地时间

    <?php header("Content-Type:text/html;charset=utf-8"); // 输出日 echo date("l") . ...

  9. learning shell built-in variables (1)

    Shell built-in variables [Purpose]        Learning shell built-in variables, example $0,$1,$2,$3,$#, ...

  10. javascript开发HTML5游戏--斗地主(单机模式part2)

    最近学习使用了一款HTML5游戏引擎(青瓷引擎),并用它尝试做了一个斗地主的游戏,简单实现了单机对战和网络对战,代码可已放到github上,在此谈谈自己如何通过引擎来开发这款游戏的. 客户端代码 服务 ...