海量數(shù)據(jù)驅(qū)動(dòng)數(shù)據(jù)中心爆發(fā)式增長(zhǎng),巨大流量挑戰(zhàn)的背后,是算力、網(wǎng)力、存力共同支撐起的云計(jì)算基礎(chǔ)。與此同時(shí),數(shù)據(jù)中心正式跨入新的發(fā)展階段——云數(shù)據(jù)中心階段。
云技術(shù)進(jìn)入深水區(qū),軟件定義存儲(chǔ)的時(shí)代正在到來
“目前,全國(guó)80%的科技企業(yè)和超過一半的AI大模型公司跑在阿里云上”,阿里集團(tuán)董事長(zhǎng)蔡崇信在今年的云棲大會(huì)上如是說,“日后云計(jì)算將成為像水和電一樣的公共服務(wù),成就更多開發(fā)者和企業(yè)。”
換言之,在全球數(shù)字經(jīng)濟(jì)蓬勃發(fā)展下,深度用云將成為必然趨勢(shì)。
因此,為了滿足云上業(yè)務(wù)的迅猛發(fā)展,以CPU為代表的通用算力,以GPU、NPU為代表的的AI算力,都在以指數(shù)級(jí)迅速增加;網(wǎng)絡(luò)也從25GE、100GE、200GE快速演進(jìn),并將進(jìn)入400GE、800GE時(shí)代;而以SSD為代表的存力,同樣面臨著新的挑戰(zhàn)和訴求,軟件定義存儲(chǔ)的時(shí)代正在到來。
- 極致的性能
SSD是計(jì)算數(shù)據(jù)的來源與結(jié)果數(shù)據(jù)的目的地,其讀寫吞吐速率的高低,將制約整個(gè)計(jì)算系統(tǒng)的性能。
- 復(fù)雜負(fù)載下的穩(wěn)定時(shí)延
時(shí)延是SSD從收到命令到返回命令響應(yīng)的耗時(shí)。云上為了提高并發(fā)能力,業(yè)務(wù)請(qǐng)求通常會(huì)被拆分為多筆子請(qǐng)求分散到眾多SSD并發(fā)執(zhí)行。任何一塊SSD的時(shí)延發(fā)生抖動(dòng),都會(huì)造成整個(gè)業(yè)務(wù)請(qǐng)求的延遲。
- 更優(yōu)的TCO
綠色、減碳是云數(shù)據(jù)中心的一貫追求。如何提升能效,以更低的功耗,提供更高的性能,是SSD的重要挑戰(zhàn)。
- 更高的存儲(chǔ)密度
提高數(shù)據(jù)中心資源利用率是云的核心訴求。提高SSD的存儲(chǔ)密度,在單塊SSD內(nèi)提供更大的存儲(chǔ)容量,可以有效減少所需部署的服務(wù)器數(shù)量、交換機(jī)/路由器數(shù)量。
平頭哥為什么選擇自研SSD主控芯片?
在將平頭哥為何選擇自研SSD主控芯片之前,我們先來了解一下什么是SSD主控芯片。
一款SSD最核心的元件就是閃存顆粒(數(shù)據(jù)的最終存儲(chǔ)地)、內(nèi)存顆粒(用于暫存SSD內(nèi)的眾多管理表項(xiàng)、數(shù)據(jù)緩存)和SSD主控芯片。其中,SSD主控芯片作為SSD的大腦,通常占整體成本的15%左右(以M.2接口產(chǎn)品為例),主要任務(wù)是負(fù)責(zé)主機(jī)交互、協(xié)議解析與執(zhí)行、數(shù)據(jù)讀寫、數(shù)據(jù)糾錯(cuò)、數(shù)據(jù)管理、后臺(tái)任務(wù)、帶外管理。
一般來講,SSD主控芯片的主要參數(shù)包括支持的閃存顆粒類型、數(shù)量,支持的存取通道數(shù)、通道帶寬,支持的SSD存取標(biāo)準(zhǔn)、接口等。但到了云存儲(chǔ)時(shí)代,就需要更懂云的SSD出現(xiàn)。
目前,市場(chǎng)上比較主流的SSD主控品牌主要包括兩類,一類是三星、Intel、西數(shù)這樣的存儲(chǔ)多位一體大廠,還有一類是Marvell、慧榮、群聯(lián)、東芝、瑞昱、英韌等存儲(chǔ)主控領(lǐng)域的佼佼者。
但大家有沒有發(fā)現(xiàn),這些企業(yè)都不是主要的云提供商,而阿里云作為全球排名第三的云廠商,擁有得天獨(dú)厚的應(yīng)用端資源,也最懂面向云計(jì)算的SSD主控芯片的需求是怎樣的。同時(shí)阿里旗下平頭哥又具備為數(shù)據(jù)中心等應(yīng)用場(chǎng)景提供強(qiáng)有力的算力底層支撐的實(shí)力,就這樣一拍即合。
當(dāng)然,對(duì)于具體的產(chǎn)品定義,為了實(shí)現(xiàn)緊密的軟硬件耦合,從而提高數(shù)據(jù)中心的整體效能,平頭哥的架構(gòu)團(tuán)隊(duì)和兄弟需求部門花了超過半年的時(shí)間反復(fù)審度,最終確定了鎮(zhèn)岳510的設(shè)計(jì)目標(biāo),在靈活性和高效之間實(shí)現(xiàn)了最佳的平衡。
“擴(kuò)展+定制”,鎮(zhèn)岳510有幾把刷子
大家是不是很好奇,這顆來自于需求端,又經(jīng)歷了和軟件側(cè)、系統(tǒng)側(cè)多倫推敲打磨的SSD主控芯片到底有何特點(diǎn)?
根據(jù)阿里云存儲(chǔ)產(chǎn)品線總經(jīng)理吳結(jié)生的介紹,鎮(zhèn)岳510支持先進(jìn)的PCIe 5.0接口,支持DDR5.0技術(shù),內(nèi)置玄鐵910 RISC-V多核CPU,采用平頭哥自研緊耦合芯片架構(gòu),對(duì)SSD任務(wù)進(jìn)行高度抽象,可固化任務(wù)硬化為加速算子以提升性能,F(xiàn)TL關(guān)鍵任務(wù)則運(yùn)行于玄鐵910CPU以保持靈活性。
鎮(zhèn)岳510每秒可處理高達(dá)340萬筆IO,一顆鎮(zhèn)岳510的性能,相當(dāng)于1萬塊高性能HDD的性能總和。此外鎮(zhèn)岳510擁有極高的能效比,每瓦功耗可提供42萬筆IO訪問。以一個(gè)部署了10萬塊SSD的數(shù)據(jù)中心為例,相比目前主流的PCIe 4.0SSD,鎮(zhèn)岳510在相同的性能下,僅主控芯片即每年節(jié)省260萬度電,按照一度電排放0.785千克二氧化碳計(jì)算,每年可減少二氧化碳排放2千噸。
鎮(zhèn)岳510內(nèi)置創(chuàng)新的IO自動(dòng)化處理機(jī)制,前端IO解析與處理,由專用硬件模塊自動(dòng)完成,實(shí)現(xiàn)了業(yè)界領(lǐng)先的超低的時(shí)延(4μs),可以帶給應(yīng)用極佳的體驗(yàn),比業(yè)界SSD降低30%以上。不僅如此,鎮(zhèn)岳510芯片內(nèi)實(shí)現(xiàn)了IO/SYS/GC的全鏈路隔離,極大的降低這些任務(wù)之間的相互干擾,提供了既低又穩(wěn)定的時(shí)延表現(xiàn)。
鎮(zhèn)岳510內(nèi)置了平頭哥自研的高性能LDPC糾錯(cuò)算法,編碼效率逼近香農(nóng)極限,同時(shí)ErrorFlow相比業(yè)內(nèi)SSD更優(yōu)一個(gè)數(shù)量級(jí);同時(shí)借助平頭哥自研閃存電壓預(yù)測(cè)算法,可以在各種閃存的不同工況、壽命、溫度等條件下,準(zhǔn)確預(yù)測(cè)閃存電壓漂移,進(jìn)一步降低LDPC解碼器的輸入誤碼率。其實(shí)現(xiàn)了低至10^-18的UBER,相當(dāng)于每讀取百億億筆數(shù)據(jù),才可能有一筆數(shù)據(jù)糾錯(cuò)失敗。
此外,鎮(zhèn)岳510通過云和底層芯片的全方位融合聯(lián)合設(shè)計(jì),還可以提供更好的用戶體驗(yàn)。
第一:消除SSD接口稅。通過存儲(chǔ)軟件與NAND特性完美契合,達(dá)到數(shù)據(jù)排布的最優(yōu)化,后臺(tái)操作的最小化。
第二:全鏈路QoS優(yōu)化。延遲敏感型與帶寬敏感型IO實(shí)現(xiàn)了精細(xì)化區(qū)分處理,提升延遲敏感型IO的SLA。
第三:智能卸載??煽啃杂?jì)算卸載至SSD,實(shí)現(xiàn)全路徑存儲(chǔ)語義校驗(yàn),同時(shí)也減輕了服務(wù)器主機(jī)算力開銷。
當(dāng)然,除了以上這些功能和性能的擴(kuò)展以外,鎮(zhèn)岳510還為云做了不少定制,帶來了更優(yōu)秀的存儲(chǔ)體驗(yàn)。
在傳統(tǒng)的系統(tǒng)方案中,SSD與存儲(chǔ)系統(tǒng)分離設(shè)計(jì)。SSD負(fù)責(zé)底層閃存數(shù)據(jù)排布,但無存儲(chǔ)語義而無法達(dá)到最佳排布;SSD負(fù)責(zé)后臺(tái)任務(wù),但無法判斷最佳啟停時(shí)機(jī);而存儲(chǔ)系統(tǒng)有存儲(chǔ)語義卻無法排布閃存數(shù)據(jù),有最佳時(shí)機(jī)卻無法啟停SSD后臺(tái)任務(wù)。上下的割裂給整個(gè)存儲(chǔ)系統(tǒng)的性能與壽命帶來了額外消耗,這被稱為“SSD接口稅”。
因此ZNS協(xié)議被發(fā)展出來,通過將盤內(nèi)FTL層上移至存儲(chǔ)系統(tǒng),達(dá)到了存儲(chǔ)系統(tǒng)與閃存特性的完美匹配,消減了“SSD接口稅”。2021年5月,ZNS協(xié)議被收入NVMe規(guī)范2.0版本中,并得到了SPDK、Linux以及各設(shè)備商的支持。
鎮(zhèn)岳510完美實(shí)現(xiàn)了ZNS協(xié)議,通過靈活的硬件表項(xiàng)加速保持了高IO性能,而Zone分區(qū)狀態(tài)則交由玄鐵910CPU維護(hù),保留了對(duì)新協(xié)議的靈活性。此外,鎮(zhèn)岳510定制了Last Sector 隨機(jī)寫功能,實(shí)現(xiàn)了小報(bào)文的多次反復(fù)下盤,簡(jiǎn)化了ZNS的應(yīng)用難度。
數(shù)據(jù)請(qǐng)求可以分為帶寬敏感型與時(shí)延敏感型,不同的請(qǐng)求應(yīng)予以不同的處理策略,才能達(dá)到業(yè)務(wù)最佳SLA。NVMe規(guī)范中制定了以隊(duì)列為粒度的標(biāo)準(zhǔn)SQ調(diào)度機(jī)制,但其靈活性較差,對(duì)于業(yè)務(wù)種類復(fù)雜、追求靈活可配的云存儲(chǔ)系統(tǒng)來說,它并不是最佳選擇。鎮(zhèn)岳510在支持NVMe標(biāo)準(zhǔn)的SQ調(diào)度機(jī)制的同時(shí),額外定制了基于IO粒度的優(yōu)先級(jí)調(diào)度機(jī)制,允許系統(tǒng)按IO打標(biāo),優(yōu)先級(jí)種類多達(dá)8級(jí),結(jié)合云存儲(chǔ)系統(tǒng),能夠更好的保障延遲敏感型業(yè)務(wù)的服務(wù)質(zhì)量。
云存儲(chǔ)系統(tǒng)的完整數(shù)據(jù)鏈路 ,從計(jì)算端開始,通過網(wǎng)絡(luò)到存儲(chǔ)服務(wù)器,再通過內(nèi)部互聯(lián)到達(dá)SSD。為了保障數(shù)據(jù)的高可靠,全鏈路應(yīng)采用語義一致的完整性校驗(yàn)。但NVMe規(guī)范只規(guī)定了以Sector為單位按照T10 DIF/DIX的校驗(yàn)機(jī)制,與存儲(chǔ)系統(tǒng)的語義并不相同,因此SSD的校驗(yàn)與存儲(chǔ)系統(tǒng)的校驗(yàn)產(chǎn)生了差異。
鎮(zhèn)岳510以IO為粒度,遵循上層存儲(chǔ)語義進(jìn)行校驗(yàn),補(bǔ)齊了整個(gè)存儲(chǔ)系統(tǒng)的數(shù)據(jù)鏈路校驗(yàn)的最后一環(huán)。不僅如此,鎮(zhèn)岳510還支持以存儲(chǔ)語義對(duì)內(nèi)部數(shù)據(jù)進(jìn)行后臺(tái)巡檢,而無需再讀出至服務(wù)器,節(jié)省了寶貴的PCIe帶寬、服務(wù)器內(nèi)存帶寬與CPU算力。
寫在最后
眾所周知,飛天盤古是阿里云統(tǒng)一的存儲(chǔ)平臺(tái),當(dāng)前鎮(zhèn)岳510已成功落地飛天盤古,并通過深度協(xié)同設(shè)計(jì),提升了數(shù)據(jù)可靠性、SLA以及存儲(chǔ)效能,構(gòu)建了從芯片到系統(tǒng)的全棧自研分布式存儲(chǔ),同時(shí)鎮(zhèn)岳510提供的ZNS能力與飛天盤古存儲(chǔ)引擎協(xié)同,增強(qiáng)了云存儲(chǔ)的靈活性,推進(jìn)了數(shù)據(jù)中心往軟件定義閃存方向的發(fā)展。
此外,隨著SSD向ESSD的技術(shù)演進(jìn),端到端的數(shù)據(jù)交叉校驗(yàn)、多層次的數(shù)據(jù)靜默風(fēng)險(xiǎn)掃描、靈活的新硬件故障防御機(jī)制、高性能和高彈力能力、均一的性能表現(xiàn)、多樣的性能彈性和隔離訴求,以及面向征集的性能容量成本考量都變得非常重要,而隨著鎮(zhèn)岳510 SSD在ESSD產(chǎn)品中的逐步落地,其正在成為ESSD最堅(jiān)固的基石。