大话
This presentation is the property of its rightful owner.
Sponsored Links
1 / 38

大话 SSD PowerPoint PPT Presentation


  • 158 Views
  • Uploaded on
  • Presentation posted in: General

大话 SSD. 淘宝核心系统数据库组 褚霸 http://yufeng.info 2011/06/25. Agenda. 初见 相识 相知 相爱. 设备. IOPS. 接口. 7200 RPM SATA drives. ~90 IOPS. SATA II. 15k RPM SCSI drives. ~180 IOPS. SAS. Intel X25-M G2 (MLC). ~8,600 IOPS. SATA II. ioDrive, a PCI-Express card with Flash.

Download Presentation

大话 SSD

An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

Presentation Transcript


Ssd

大话SSD

淘宝核心系统数据库组褚霸

http://yufeng.info

2011/06/25


Agenda

Agenda

初见

相识

相知

相爱


Ssd

设备

IOPS

接口

7200 RPM SATA drives

~90 IOPS

SATA II

15k RPM SCSI drives

~180 IOPS

SAS

Intel X25-M G2 (MLC)

~8,600 IOPS

SATA II

ioDrive, a PCI-Express card with Flash

with Flash 140,000 Read IOPS, 135,000 Write IOPS 

PCIe

Fusion-io ioDrive Octal

1,180,000+ Random Read/Write IOPS

PCIe

存储设备IOPS演变史


Ssd

设备

价格/每GB

SATA 7200转

0.1 USD

SAS 10000转

0.4 USD

Intel X25-M 160G

* USD

FusionIO  iodrive MLC 320G

* USD

Virident  tachion SLC 400G

* USD

存储设备价格对照


Ssd

淘宝使用案例

  • CDN 

  • IC库

  • TC主库

  • TC读库

  • Oceanbase

  • Vstore

  • 图像搜索

  • Tair

  • ...


Agenda1

Agenda

初见

相识

相知

相爱


Pci e sata

PCI-E/SATA接口


Intel x25 m sata

Intel X25-M/SATA


Fusionio iodrive pci e

FusionIO iodrive/PCI-E


Virident tachion pci e

Virident tachion/PCI-E


Ssd

SSD写入如何发生的呢?


1 nand

Generation

SLC

MLC

eMLC

2x

100,000

2,500

3x

100,000

5,000

35,000

5x

100,000

10,000

背景知识1:Nand芯片擦写次数


Ssd

背景知识2:写放大倍数

写放大倍数的定义:SSD物理写字节数/应用逻辑写字节数

放大倍数越大,说明:

  • 设备不够好

  • 我们没用好

  • 寿命杀手


Intel x25 m nand

Intel X25/M Nand内部布局


Ssd 1

数据如何写入SSD(1)


Ssd 2

数据如何写入SSD(2)


Ssd 3

数据如何写入SSD(3)


Ssd 4

数据如何写入SSD(4)


Ssd

垃圾收集导致IO性能下降


Agenda2

Agenda

初见

相识

相知

相爱


Ssd

适用环境

  • 对IOPS要求高,离散读多。

  • 离散写多。

  • 需要低延迟。

  • 作为后备内存。

  • 作为L2 Cache 。


Ssd

对程序员的影响

  • SSD=/=磁盘,传统软件基于机械硬盘设计。

  • IOPS不再是问题,如果利用好是问题。

  • 离散读写非常快(3个数量级),顺序读写没优势。

  • 读写延迟时间小。

  • 读不消耗寿命,写消耗,越小的数据写越不合算。

  • 同一个位置写,由于均衡算法的存在,不会磨损芯片的同一位置。

  • 尽量合并写。


Ssd

对程序员的影响(续)

  • SSD IO吞吐量1.XG/s,内存是4-6G/s, 可看作是更大的内存?

  • MMAP做后备内存,和jemalloc这样的内存分配器配合。

  • 异步IO, 保证IO请求队列深度。

  • 对SSD的特性进行算法优化。

  • fsync能力是数据类应用天花板。


Ssd

使用SSD通常要考虑的问题


Agenda3

Agenda

初见

相识

相知

播种


Ssd

选择

  • 多线程和IOPS

  • 文件系统的选择

  • IO块大小

  • SLC还是MLC

  • 写放大倍数

  • 数据安全性

  • 驱动对应用的影响

  • 抖动/延迟

  • L2 Cache方案


Ssd

离散读性能/线程数目


Ssd

离散写性能/线程数目


Ssd

文件系统的影响


Ssd

IO块大小的影响


Nand mlc slc

Nand: MLC还是SLC


Ssd

写放大倍数和寿命

数据库典型的应用:

Intel X25-M:   5-8倍

FusionIO iodrive: 2-3倍

可以透过ssd设备提供的监控程序(如smartctl)来获取这些参数 .

寿命:

Intel X25-M: 200T

FusionIo iodrive 320G: 4P


Ssd

数据安全性

数据校验: 

  • ECC校验

  • Raid冗余

  • Intel X25-M支持硬件raid卡,FusionIO 只能做软raid

    掉电保护:

  • 大电容保护

  • 日志系统

    数据恢复时间:

  • FusionIO最多10分钟左右(内部日志系统)


Ssd

驱动对应用的影响

Sata接口:标准Linux驱动,驱动开销很小

PCI-E接口:每个厂家驱动不同,对CPU和内存的消耗可能会非常大。 FusionIO在峰值的时候可能会占用1-2G内存,最多1x0%CPU, Virident由于板载处理器CPU消耗比较小。

中断开销:

  • 中断多的时候是否可以考虑均衡


Ssd

抖动和延迟

由于数据整理的不可避免性,抖动也是不可避免的。

Intel:

脏块回收做的不是很好,在使用过程中,数据写入多的情况下抖动会很厉害。

FusionIO:

相对好些,但是也会有轻微抖动。

可以通过加大reserve容量(通常默认20%)来大大缓解这个问题。

延迟时间可能会达到1ms.


Ssd l2cache

SSD作为L2Cache方案

好处:

  • 低成本,高性能

  • 对应用透明

    可选方案:

  • Facebook FlashCache

  • FusionIO DirectCache

  • 文件系统

    存在问题:

  • 性能损失

  • 单点故障

  • 数据热点问题


Agenda4

Agenda

初见

相识

相知

相爱


Ssd

交流时间

谢谢大家!

SSD未来会很快普及,

我们做好相爱的准备了吗?


  • Login