回到今天的主題,在《破解PCIeSSD進(jìn)化:從踩坑到解決方案》一文中,筆者并沒有討論Host-Based和Device-Based。當(dāng)時不是沒考慮過這一點(diǎn),但對于普通用戶來說,這個架構(gòu)差異對實(shí)際使用體驗(yàn)的直接影響并不是很大。但對于業(yè)內(nèi)專業(yè)人士則不同了,比如在本月16日舉行的《存儲技術(shù)之巔》第一次線下交流活動中,大家就展開了熱烈的討論。
在本文的標(biāo)題之前,似乎應(yīng)該加個定語“使用FPGA主控的PCIeSSD”,因?yàn)槟壳癆SIC控制器的卡,以PMC/IDT系和Intel為主基本都是Device-Based,不存在與Host-Based兩條技術(shù)路線之爭。
所謂Host-Based,即SSD的FTL——包括地址轉(zhuǎn)換/塊分配(通常所說的LBA)、磨損平衡和垃圾回收在OS驅(qū)動層實(shí)現(xiàn)。
而Device-Based則利用卡上FPGA控制器的處理資源來實(shí)現(xiàn)FTL,操作系統(tǒng)上安裝的驅(qū)動應(yīng)該不包含這部分工作。
在國內(nèi)最早宣傳Device-Based PCIeSSD的大約就是Memblaze,下面我們也來看看另外一家Shannon寶存科技是如何來對比二者的。
Host-Based的缺點(diǎn)是需要PCIeSSD容量1/1000的內(nèi)存來放元數(shù)據(jù),比如6.4TB的卡大約就是6.4GB,這一點(diǎn)上Device-Based完勝。那么容量、效率和靈活性這幾點(diǎn),我覺得可以歸結(jié)為一點(diǎn)——Device-Based卡上的FPGA需要干更多工作,功耗和發(fā)熱也許會大些?另外可能會受其處理能力的限制。
Device-Based溫度會不會更高?
關(guān)于這個問題,我曾聽說國外一家大品牌PCIeSSD的工作溫度能達(dá)到90多攝氏度(注:應(yīng)該不是Device-Based架構(gòu),這里指主控散熱片表面溫度),也就是說沒有必然性?
但到了SFF-8639和NVMe時代之后,F(xiàn)PGA的處理性能和散熱確實(shí)成為不可忽視的因素了(至少在Device-Based卡上如此),因此我們看到了PMCASIC主控的PBlaze4。
Host-Based能否實(shí)現(xiàn)NVMe?
由于NVMe在操作系統(tǒng)中集成標(biāo)準(zhǔn)驅(qū)動,那么Host-Based在驅(qū)動中實(shí)現(xiàn)FTL這種方式還可行嗎?寶存表示他們有“曲線救國”的方法,具體還不方便透露。據(jù)我所知,NVMe也允許個性化驅(qū)動,比如像希捷/LSINytro那樣的方案,SAS控制器也是能夠支持NVMe的。
RAID如何實(shí)現(xiàn)?
為了讓PCIeSSD像硬盤那樣支持RAID保護(hù),Memblaze和寶存分別提出了自己的方案。
上圖來自寶存在Flash Memory Summit2014上的演講《Buildingefficient RAID-5 systems across SSDs at the FTLLayer》,我們看到這個跨盤的RAID還帶有硬件加速,可能是使用FPGA的加速單元來做RAID5 XOR計算吧。
另一方面,我聽說Memblaze的RAID實(shí)現(xiàn)有點(diǎn)類似于Linux下的LVM(鏡像)?而且他們這款產(chǎn)品(應(yīng)該還是FPGA)已經(jīng)帶有一些Host-Based的色彩了。
不知大家有沒有Host-Based和Device-Based向融合發(fā)展的感覺?
提起HostRAID,筆者又想起了自己在10年前踩過的坑。
2003年,Adaptec在Ultra320SCSI上引入HostRAID0/1的支持,無需硬件RAID卡就能做簡單的陣列級別。我當(dāng)時推薦銷售在2個客戶的機(jī)器上用29320卡分別做的RAID0和1,結(jié)果在Windows下都出現(xiàn)了死機(jī)的問題,經(jīng)過反復(fù)排查才發(fā)現(xiàn)是卡的問題——確切說應(yīng)該是當(dāng)時HostRAID驅(qū)動還不成熟。
注意:Adaptec要支持那個HostRAID就不能使用普通的SCSI驅(qū)動,而LSI的SCSI卡(53C1020/1030)同樣的功能則對驅(qū)動程序透明。他們2個真的有點(diǎn)像今天的Host-Based和Device-Based,雖說做RAID0/1對CPU等資源的占用基本可以忽略不計。
還是那句話,穩(wěn)定的產(chǎn)品不是測出來的,但也少不了測試。
我又班門弄斧地寫了以上這些,不專業(yè)之處還望大家多指正。
本文出自黃亮的微信公眾號,企業(yè)存儲技術(shù)(微信號:huangliang_storage),歡迎大家關(guān)注!