码迷,mamicode.com
首页 > 其他好文 > 详细

磁盘相关知识点入门

时间:2018-06-21 11:24:33      阅读:176      评论:0      收藏:0      [点我收藏+]

标签:iops   pci   需要   申请   闪存   最大   索引   如何   mysq   

Ⅰ、磁盘的访问模式

磁盘性能和磁盘的访问模式有关

  • Sequential access
    技术分享图片

  • Random access
    技术分享图片

上面说的顺序和随机是逻辑上的,大多时候做不到完全顺序

数据库不是连续块的申请空间,是一次申请固定块大小的空间,在这一个块里面的数据是连续的

Ⅱ、HDD VS SSD

随机访问的性能叫IOPS,顺序访问的性能叫吞吐率

2.1 简单了解HDD

  • 机械磁盘,通过磁头旋转定位,单块盘一般100IOPS
  • 数据库的优化都是根据机械磁盘特性,随机转顺序,通过磁头旋转进行数据定位
  • 常见转速,笔记本5400r/min,台式机7200r/min,服务器硬盘1w/min,1.5w/min
  • 顺序访问性能较好,100M/s/~200M/s,这叫磁盘吞吐率,也叫带宽,可以通过做raid来提升磁盘带宽,可以做到一两个G
  • 随机访问性能较差,需要磁头旋转定位,IOPS较低

为什么数据库比较多的是随机访问?
B+ tree索引定位数据是比较随机的,所以数据库最看重的就是随机IO,也就是IOPS,顺序的话通常就是扫描了,两张表做join的话比的就是顺序的性能,MySQL通常用在大并发,小事务的OLTP场景

知道转速,对应的IOPS也出来了
IOPS=转速/60

带宽怎么转换为IOPS
每做一次io操作,io的大小是不一定的,比如4k的操作,通常厂商都给的数据都是4k大小的io,注意,MySQL中每个IO的大小是16k,即每个页的大小,所以和厂商给的性能数据相比会有所下降

48M的宽带算IOPS就是,1M/4k*48=12288

如何提升HDD的IOPS性能

  • 做raid
    功耗非常高

  • 通过购买共享存储
    价格昂贵
    共享存储,做高可用很方便,但是单点故障太坑爹,就像坐飞机,一般没问题,出了问题基本上就是死

然而提升都是非常有限的

tips:
通常来说数据库做raid10,性能和可靠性都要有保障

2.2 SSD

  • 固态硬盘,无磁头,纯电设备,控制器和闪存组成。单块盘7~8wIOPS
  • 读写速度非对称,一般来说写比读慢一半,高端ssd是对称的,机械盘也是对称的
  • 性能下降,以前的ssd用一段时间性能会急剧下降,现在基本解决了,强烈推荐英特尔的盘
  • 设备短命,性能抖动的问题现在也不用担心
  • 用MySQL一定要用SSD

SSD与数据库优化
1、磁盘调度算法设置为deadline或者noop,在ssd上,这个调整性能至少提升百分之七十,甚至多倍,现在CentOS7默认磁盘调度算法已经是deadline了而不是cfq

cat /sys/block/vda/queue/scheduler
echo deadline > /sys/block/vda/queue/scheduler

上面这个可以作一个模板,规定,HDD也因该这么设置,只是性能提升没这么大

2、InnoDB参数调整

InnoDB存储引擎参数设置
innodb_flush_neighbors = 0  -- 默认1,平缓刷新的,默认只刷脏页,不会将脏页所在的整个区刷新,把这个设为0,重做日志大小足够大,数据库测试时性能比较平稳,还有一定的提升
innodb_log_file_size = 4G   -- 默认128M,高端设备设置8G和16G都不为过,MySQL5.5最大只能设1.9G,无限接近于2G
innodb_io_capacity 设置为存储性能的一半

修改之后重启,等待时间比较长,是数据库在做扩展

上面两个配置不对性能抖动比较厉害,设置后性能平稳且提升百分之15

3、SSD的选择——PCIE or SATA/SAS?
SATA/SAS与PCIE的性能差距逐渐减小,PCIE快非常多,甚至达到50w,100wIOPS,没什么上限

PCIE的性能很少有应用可以完全使用,优先选择SATA/SAS接口的SSD

数据库的瓶颈已经不在磁盘上了

SSD品牌推荐:Intel、FusinIO、宝存

磁盘相关知识点入门

标签:iops   pci   需要   申请   闪存   最大   索引   如何   mysq   

原文地址:https://www.cnblogs.com/---wunian/p/9206849.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!