MySQL Disk--SSD与RAID
===================================================
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的更多相关文章
- PatentTips - Solid State Disk (SSD) Device
BACKGROUND OF THE INVENTION A SSD apparatus is a large-capacity data storage device using a nonvolat ...
- MySQL服务器SSD性能问题分析与测试
[问题] 我们有台HP的服务器,SSD在写IOPS约5000时,%util达到80%以上,那么这块SSD的性能究竟有没有问题,为解决这个问题做了下面测试. [工具] blktrace是linux下用来 ...
- SystemTapでMySQL 5.5のDisk I/Oを分析する
http://d.hatena.ne.jp/sh2/20111121 2010年1月の記事SystemTapでMySQLのDisk I/Oを分析するの続きです.以前作成したSystemTapスクリプト ...
- SSD阵列卡方案优化:考虑使用RAID 50替代RAID 10
最近一直在研究RAID 50,因为牺牲一半的容量的RAID 10代价实在太大了,而且它提供的可用性也并不是百分百的,我们首先来看下RAID 10的可用性分析: 以同等容量的不同RAID方式作为案例分析 ...
- Percona 开始尝试基于Ceph做上层感知的分布式 MySQL 集群,使用 Ceph 提供的快照,备份和 HA 功能来解决分布式数据库的底层存储问题
本文由 Ceph 中国社区 -QiYu 翻译 英文出处:Using Ceph with MySQL 欢迎加入CCTG Over the last year, the Ceph world drew m ...
- 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 ...
- mysql主从延迟
1. MySQL数据库主从同步延迟原理.要说延时原理,得从mysql的数据库主从复制原理说起,mysql的主从复制都是单线程的操作,主 库对所有DDL和DML产生binlog,binlog是顺序写,所 ...
- 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 ...
- MySQL 数据库架构
1 架构 master-slave性能,qps,tps,cpu,disk,memory,network,raid卡,fashion卡, 并发量:同一时刻需要db处理 连接量: 大表:1000w行或者表 ...
随机推荐
- ArcGIS API for Silverlight——小滑块
Widgets翻译过来是小玩具.如果使用过Dojo或者ExtJS等js框架肯定会了解到这个“小玩具”也有大用处,能够在很大程度上减少我们的工作量,快速完成功能需求.能减少多大工作量呢?让我们先来,点击 ...
- Enter键实现按钮相同功能
1.在所在的按钮(Enter键功能)的容器上加上onkeydown="saveForKeyDown()",通常加载body上 <!-- 添加窗口--> <div ...
- git 添加tag
前言 什么是tag?tag是节点的意思,一般在上线的时候使用.比如说:你在本地做了好几个功能,然后把这些功能提交到了上线的分支上,某个时刻,你想上线你的新功能,这个时候你需要你个tag来标记一下,告诉 ...
- 『Networkx』常用方法
这是一个用于分析'图'结构的包,由于我只是用到了浅显的可视化功能,所以这个介绍会对其使用浅尝辄止. 解决matplotlib中文字体缺失问题, from pylab import mpl mpl.rc ...
- bzoj2595: [Wc2008]游览计划 斯坦纳树
斯坦纳树是在一个图中选取某些特定点使其联通(可以选取额外的点),要求花费最小,最小生成树是斯坦纳树的一种特殊情况 我们用dp[i][j]来表示以i为根,和j状态是否和i联通,那么有 转移方程: dp[ ...
- HDU-1272 小希的迷宫 (并查集、判断图是否为树)
Description 上次Gardon的迷宫城堡小希玩了很久(见Problem B),现在她也想设计一个迷宫让Gardon来走.但是她设计迷宫的思路不一样,首先她认为所有的通道都应该是双向连通的,就 ...
- 通过一个uri获取一个Bitmap对象
Android 开发过程中,可能会用到的,通过一个uri获取一个Bitmap对象 private Bitmap getBitmapFromUri(Uri uri){ try { // 读取ur ...
- OAF 通过个性化 在标准事件上添加验证
在实际的开发过程中,我们经常会遇到以下情况: 在执行标准的功能之前要对个性化的内容进行校验. 比如:在某个标准页面通过个性化添加了一个勾选框,在点击下一步的时候必须去验证此勾选框是否勾选. 具体实现如 ...
- 使用GAN 进行异常检测——anoGAN,TODO,待用于安全分析实验
先说实验成功的代码: git clone https://github.com/tkwoo/anogan-keras.git mkdir weights python main.py --mode t ...
- 51nod1269Devu and Flowers
题解: 如果没有限制每一种花有多少,那么就是简单的排列组合问题. 那么我们强制让一些花一定都要选. 暴力搜索,然后组合数(逆元) 采用容斥原理来计算最后的答案 代码: #include<bits ...