TA的每日心情 | 开心 2019-11-19 15:19 |
---|
签到天数: 1 天 [LV.1]初来乍到
|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
转——从此,SSD不用再伪装成HDD 5 s9 z7 C3 i5 X& J9 N: [) u
/ j, G* H2 t3 L( ~0 N, V/ n2 S
5 _- l4 ?. Q! C5 ^
尽管SSD诞生已经很多年了,是当前企业存储系统中最重要的存储介质,但是悲哀的是目前的绝大部分SSD还是把自己伪装成HDD使用,为什么呢?因为现在从上层数据库、文件系统、SCSI协议等到主板基本上都是为HDD设计的,还没有为SSD做好改变。可喜的是,在2015年的闪存峰会上,有一家苦苦修炼了4年的公司终于揭去面纱,展示了他们的交响乐技术,这个技术使得Host主要在文件系统这一层按照SSD来重新设计,省去了很多不必要的功能,性能得到提升。
( v. w7 H' n, F
" n3 w. { @3 W( Y( e* e+ |. n c, N我们知道SSD根据FTL栖身何处可以分为device based和host based两种,device based FTL和各种算法都在SSD控制器内部完成,优势是扩展性好,不占用系统资源,缺点是性能差,因为嵌入式CPU不如PC CPU强大,内存速度和容量也受限制。同时host软件不知道SSD内部情况,不能最大效率的使用SSD,很多工作重复了,延迟变长。' J f" n$ h, M* D- Z. S
7 e) N6 D& _: v2 t+ y
host based SSD的FTL和各种算法都在PC上驱动程序中完成,优点是性能强大,因为这种方案基本都是在企业级服务器上使用,企业级CPU强大,往往是十几个核心,甚至有NUMA架构(就是多个有独立内存和芯片组的CPU),现在的服务器内存一般都有几十甚至上百GB,京东号称要配1TB内存。有了这些资源,SSD的性能就很强。同时,host软件可以通过驱动直接管理SSD内部资源,FTL都可以个性化定制,延迟变短。缺点是扩展性差,连了很多SSD后系统不一定吃得消,而HDD时代服务器配个几十个硬盘很正常。! @9 ^& r6 m5 J' t1 l, w
Q9 f- W, q. U" k3 w8 A5 [
而Radian的SSD交响乐技术结合了device based和host based的优点,同时克服了二者的缺点。SSD算法都在device控制器实现,不占用host资源,扩展性好。同时,host也能通过API直接管理SSD内部资源,避免了重复工作,提升性能,减少延迟。9 P" X6 ^+ y7 f
: c, T0 A# ^6 T/ {: K4 G( P; D1 x
假装成HDD的生活——惟有泪千行9 ?6 i# ?% @2 u7 O3 r0 \ W B
我们知道HDD内部的存储单元和PC的存储地址LBA是一一对应的,写那个地址就真的是在写这个地址。而SSD必须先擦除再写,所以永远是通过垃圾回收释放出新的空间给Host写操作,模拟成LBA提供给用户使用。这样做的代价就是性能和空间的巨大浪费,SSD要维护巨大的映射表,其实文件系统里面已经有一个元数据表了,来映射每个文件对应的LBA,文件系统还要定期做磁盘整理,高级一点的甚至要做镜像、克隆等等荣誉的操作,这些操作都对SSD产生了多余的写操作,消耗空间,提高写放大,缩短SSD的寿命。 {! d% g; b( L$ e; ^/ ]% ?7 N
* ~2 V. \( F. n, m2 ^
如下图,左边是Host文件系统里面数据管理,要做空间分配、维护、释放、清理、垃圾回收等等,而数据到了SSD内部之后,如右边的循环,SSD内部又得做一遍类似的工作。说起糟的这些罪,SSD惟有泪千行:谁叫俺生的比哥哥HDD晚,这么高还得穿人家穿过的辣么小的衣服!
: ]9 |3 q) P6 k7 P! |2 a
( H t* o a$ T$ x1 \/ U
9 q5 l+ u! ], Y, e5 P1 d软件定义闪存
' o# ? B' G9 Z$ g$ i4 K/ RRadian Memory System提出了他们心中的软件定义闪存概念:取消FTL,直接在Host端管理Flash内部资源,省得折腾两次。
; W$ m; F8 R3 F7 r+ A2 v
8 ?+ h$ Z; l+ Q他们的这套系统叫做协作式闪存管理:CFM,Coorperative Flash Management。Host端文件系统、块设备管理器、对象存储、Key/Value存储直接使用CFM API,管理Flash资源,SSD内部的后台引擎处理Host发的命令。看起来是Host里面有个模拟的SSD的布局,并且自定义SSD存储空间的地址管理,比如文件直接转成SSD内部Flash内Block,Page地址。Host在模拟器做完相关操作,直接转成SSD内部的实际命令。' ]+ `* c+ ?5 |
* J* ~( p9 l9 s& a* Q* H
/ D) w) t- k$ G; W" O4 F; K3 p0 x6 p我们来看看效果,假设旧的系统Host写放大系数1.5倍,SSD内部写放大系数2.0倍,那么采用新系统之后,写放大从1.5*2变成2,旧的系统比新系统写放大多了75%!
; Q9 Y" L/ A0 Z& p c" U
: N- K- K8 a6 s2 ^7 C这样Host的管理能在SSD内部完成相应,所以RMS把这个技术叫做交响乐技术:Symphonic。9 S) L' t# g* R' |
4 g3 V( R1 a# j% ?9 r* M% Z. I
文件复制太easy了!
7 {* h& a+ P, u% g' D6 {当文件系统直接管理SSD内部资源的时候,复制一个文件变得很简单,因为不用真的复制,只需要把映射表改一下就行了,这对性能是巨大的提升。如下图,传统SSD包含25%的复制操作时,要把数据读出来再写下去,里面还要做垃圾回收,性能受到影响,交响乐SSD就省了这一大堆麻烦,复制几乎就是不花时间。+ x! x, b7 x E
: J" `* c5 s8 c7 g, C+ m3 |
如下图的延迟对比,管理层次少了一层,延迟也大大降低了。
6 A2 n6 z+ x* Q* i
2 T3 h7 V @% w' B( J3D Xpoint是SSD的冬天
" j# T' m! d% E0 ]' e原来的存储架构是DRAM、Flash、HDD三层,自从3D XPoint技术诞生之后很多Flash的市场将被吃掉,因为速度比Flash快,那该怎么办呢?2 m7 w" Z, T4 |$ y& r# U
2 G9 T& v+ ^, G: s( U- i7 |) r% X. ]
/ Z) e( `% s. m$ _! Y$ B * l7 ~) v- y) O# e. l" U3 R
幸运的是我们有RMS的CFM SSD,性能比传统SSD要好,可以从3D XPoint手里抢回一部分地盘。
! R' K% e2 J/ l3 d/ D
1 V; c2 u! W s5 b" J: m |
|