sth about ssd

31
Sth. About SSD @w 维西 MySQL_DBA [email protected]

Upload: xuezhang-wu

Post on 31-May-2015

2.060 views

Category:

Technology


9 download

DESCRIPTION

分享

TRANSCRIPT

Page 1: Sth About SSD

Sth. About SSD

@w 维西 MySQL_DBA

[email protected]

Page 2: Sth About SSD

Week 3 [email protected] Tuesday, November 22, 2011

Contents

FusionIO Intel SSD+LSI Raid FIO+Flashcache 安装备注 FIO 性能测试 OS/Percona 的参数设定

VS

Page 3: Sth About SSD

Week 3 [email protected] Tuesday, November 22, 2011

FusionIO-SSD_Raid

Page 4: Sth About SSD

Week 3 [email protected] Tuesday, November 22, 2011

FusionIO-SSD_Raid

Page 5: Sth About SSD

Week 3 [email protected] Tuesday, November 22, 2011

Page 6: Sth About SSD

Week 3 [email protected] Tuesday, November 22, 2011

≈Flashcache

Page 7: Sth About SSD

Week 3 [email protected] Tuesday, November 22, 2011

2nd gen 6Gb/s Raid Controller

上限提升近 3 倍

Page 8: Sth About SSD

Week 3 [email protected] Tuesday, November 22, 2011

FastPath 最适合 OLTP FastPath 的工作原理是通过 MegaRAID 控制卡的

Firmware 来开创一条延迟非常低的 I/O 路径,以此来充分优化 SSD 的性能。

≈HBA?

Page 9: Sth About SSD

Week 3 [email protected] Tuesday, November 22, 2011

Host Bus Adapter 在服务器和存储间进行 I/O 处理和物理连接的适配器 , 形成直

接的磁盘通道 ; 减轻 CPU 在数据存储和检索任务的负载,提高 IO 性能

几乎没有 performance limitation, 性能基本是单盘性能 x盘数;而 RAID 性能则受 RAID 形式以及 RAID 卡本身的限制;

HBA

Page 10: Sth About SSD

Week 3 [email protected] Tuesday, November 22, 2011

HBA 一般 HBA 的弱点:

1. 基本不算真正意义的硬件 raid ,现在的硬件 raid ,物理磁盘上都会带有一些 ddf 信息,而 HBA 组建的 raid 可能不带这些信息2. raid 的检验和纠错能力会比较弱3. 不带 cache ,对随机写性能影响很大

性能测试表现突出的原因挂上多块 SSD 后 , 随机读写的缺陷被填补上 , 但是数据效验这块还是短板 ,

推荐不用在严格生产系统中 淘宝 Oceanbase 收藏夹应用的当前架构

青岛机房 : (HBA+ 单 320GB-SSD )*10 台 流量 60%

杭州机房 : (raid 10 + 10 块 SAS)*22 台 流量 40%

Page 11: Sth About SSD

Week 3 [email protected] Tuesday, November 22, 2011

Intel SSD New Series——320

2011.Q1-Q2

Page 12: Sth About SSD

Week 3 [email protected] Tuesday, November 22, 2011

2012 年推出 , 最大支持 5TB 容量的 SSD ,随机写入 IOPS 最高可达 400K

目前 SandForce SF-2000 系列最高随机写入 IOPS数据大概在 60K

下一代 SSD 主控芯片 ?

Page 13: Sth About SSD

Week 3 [email protected] Tuesday, November 22, 2011

4K IOPS 70k8K IOPS 50k

Page 14: Sth About SSD

Week 3 [email protected] Tuesday, November 22, 2011

Fusion-IO 结构

Fusion-IO, 只能做软 raid 或者LVM新测试机是双卡 , 可通过sudo mdadm –D /dev/md0 查看

Page 15: Sth About SSD

Week 3 [email protected] Tuesday, November 22, 2011

Fusion-IO 比其他 SSD 方案更好 ?

Page 16: Sth About SSD

Week 3 [email protected] Tuesday, November 22, 2011

Fusion IO 等 PCIe 卡在全随机写方面有一定的性能优势,但其所标称的性能一般以优化配置情形下的数据为准,如 512Byte 文件大小,做 50% over-provision. 另一些厂商,则对典型 workload 做特别算法优化,比如4kB 文件大小性能最好,而 2kB/8kB 等则较差;建议针对实际情形测试

Intel SSD in RAID 模式,在 read intensive workload 或者是读写混合(如 3:1 R/W )下,其性能能达到甚至远超过(如全随机读)主流的 PCIe 卡方案,同时具有其他方面的优势,如:数据安全性(可以配置RAID ),断电保护,容量 / 性能性价比,可置换性

Page 17: Sth About SSD

Week 3 [email protected] Tuesday, November 22, 2011

Contents

FusionIO Intel SSD+LSI Raid FusionIO+Flashcache 安装备注 FIO 磁盘性能测试工具 OS/Percona 的参数设定

VS

Page 18: Sth About SSD

Week 3 [email protected] Tuesday, November 22, 2011

Fsuion‐io ioDrive  安装指南

系统内存要求:ioDrive 需要系统提供足够的内存来

保存元数据,大部分情况下 iodrive 对于内存的最小要求是:

320G ‐‐‐1.7G  640G ‐‐‐3.4G  系统类型版本 Fusion‐io  只支持 64 位的操作系统,

目前 Fusion‐io ioDrive 不是可启动 OS 的设备。 OS要安装在原有的硬盘设备上。 尽可能

最新

Page 19: Sth About SSD

Week 3 [email protected] Tuesday, November 22, 2011

IO driver驱动 命令行工具

Page 20: Sth About SSD

Week 3 [email protected] Tuesday, November 22, 2011

FlashCache details Write-through & write-back 多模式 先进先出和 LRU 的快管理 需自行编译核心模块 也适用于 ibdata1/ib_logs

Page 21: Sth About SSD

Week 3 [email protected] Tuesday, November 22, 2011

查看现有的设备状态sudo fio-status (fct0,fct1) sudo fdisk -l (fioa,fiob)

sudo fdisk -l /dev/md0 确认文件系统 安装编译 Flashcache1.编译内核 tree

mkdir -p ~/rpmbuild/{BUILD,RPMS,SOURCES,SPECS,SRPMS}

echo '%_topdir %(echo $HOME)/rpmbuild' > .rpmmacros安装源码 RPM 后 , SPECS 下生成 kernel.spec增加%define _default_patch_fuzz 2 (某些新版本 rpmbuild默认

为 0)

Fio+Flashcache 安装 TIPS

Page 22: Sth About SSD

Week 3 [email protected] Tuesday, November 22, 2011

2.拷贝配置cp /boot/config-2.6.32….x86_64 ~/rpmbuild/BUILD/kernel-/linux-/cd ~/rpmbuild/BUILD/kernel-...el6/linux-...el6.x86_64/make oldconfig && make prepare && make modules_preparecp /usr/src/kernels/2.6…/Module.symvers \

~/rpmbuild/BUILD/kernel-/linux-/

3.编译根据手册修改Makefile make KERNEL_TREE=~/rpmbuild/BUILD/kernel-/linux-…/

4.加载验证sudo insmod ./src/flashcache.kosudo lsmod | grep flash

5.搭建挂载 flashcachesudo PATH=/sbin ./flashcache_create -b 4k -p back cachea /dev/md0 /dev/sda12

sudo mkfs.ext3 /dev/mapper/cachea

Fio+Flashcache 安装 TIPS

Page 23: Sth About SSD

Week 3 [email protected] Tuesday, November 22, 2011

Contents

FusionIO Intel SSD+LSI Raid FusionIO+Flashcache 安装备注 FIO 磁盘性能测试工具 OS/Percona 的参数设定

VS

Page 24: Sth About SSD

Week 3 [email protected] Tuesday, November 22, 2011

FIO编译及使用 sudo yum install libaio-devel make && sudo make install sudo fio -filename=innodb.dat -direct=1 -

ioengine=psync -directory=/u01 -rw=randrw -bs=16k -size=5G -numjobs=32 -runtime=10 -group_reporting -name=mysqlio

Page 25: Sth About SSD

Week 3 [email protected] Tuesday, November 22, 2011

参数介绍 readwrite=str, rw=str

read # 连续读 write # 连续写 randread # 随机读 randwrite # 随机写 rw # 混合连续读写 randrw # 混合随机读写

rwmixread = 90 混合读写比例 , 参考 ICDB 10:1 direct = 1 不使用 io 设备 buffer directory=/u01 测试目录 , 用于指定磁盘 runtime=10 测试时长 (秒 ) name=io_test 作业名 filename= innodb.dat 文件名 bs= 16k 块大小 bssplit=4k/40:8k/60 可分比例

Page 26: Sth About SSD

Week 3 [email protected] Tuesday, November 22, 2011

参数介绍 :IO Engines fio 支持 : sync psync libaio posixaio mmap

splice syslet-rw sg null net netsplice cpuio guasi

MySQL先前是自写的 Fake AIO(xiyu) innodb走 sync 较多,即使启用 aio,  做过统计

真正走 aio 的 5% 不到 (chuba) InnoDB Plugin 1.1 supports native AIO on

Linuxhttp://blogs.innodb.com/wp/2010/04/innodb-performance-aio-linux/

建议每次测试前低格 fioa,fiob;重做 flashcache

Page 27: Sth About SSD

Week 3 [email protected] Tuesday, November 22, 2011

[global]

direct=1

size=2G

bs=16k

timeout=30

[bin-log]

directory=/u02

rw=write

ioengine=sync

bsrange=512-1024

numjobs=64

支持参数文件[innodb-log]stonewalldirectory=/u02bsrange=512-2048ioengine=syncrw=writenumjobs=64

[innodb-rdread]stonewalldirectory=/u01bs=16Kioengine=psyncrw=randreadsize=200Gnumjobs=32

[innodb-rdrw]

stonewall

directory=/u01

bs=16K

ioengine=psync

rw=randrw

rwmixread=90

size=200G

numjobs=32

Page 28: Sth About SSD

Week 3 [email protected] Tuesday, November 22, 2011

Contents

FusionIO Intel SSD+LSI Raid FusionIO+Flashcache 安装备注 FIO 磁盘性能测试工具 SSD+Percona 的参数设定

VS

Page 29: Sth About SSD

Week 3 [email protected] Tuesday, November 22, 2011

CPU 软中断 淘宝核心系统和 Intel 都出了新的 patch

echo 2 > /sys/block/sdX/queue/rq_affinity

在 RHEL6 + Dell H700 时,关闭 rq-affinity ,小于 7万 iops ,跑满一个 core;打开后 10万 iops RHEL6 + Dell H200 + HBA 时,打开 rq-affinity,22.5万 iops ,打开严格模式可达 26.5万 iops

Page 30: Sth About SSD

Week 3 [email protected] Tuesday, November 22, 2011

Percona 参数设定– innodb_thread_concurrency=0 – innodb_read_ahead=0– innodb_adaptive_flushing=1– innodb_adaptive_checkpoint=keep_average– innodb_max_dirty_pages_pct=60– innodb_flush_method=O_DIRECT– innodb_io_capacity=10000 – Innodb_flush_neighbor_pages=0– innodb_read_io_threads=8 (16 for writes)– innodb_page_size = 4K | 8K | 16K(Use carefully)– innodb_flush_neighbor_pages= ON | OFF– innodb_log_block_size = 512 | 4096– innodb_doublewrite_file– innodb_log_file_size > 4GFusionIO 工程师在 Percona New York展会上的分享

Page 31: Sth About SSD

Week 3 [email protected] Tuesday, November 22, 2011

Fusion-IO@Percona Live 2011 NYC