“話說(shuō)天下大勢(shì),分久必合,合久必分。周末七國(guó)分爭(zhēng),并入于秦。及秦滅之后,楚、漢分爭(zhēng),又并入于漢。漢朝自高祖斬白蛇而起義,一統(tǒng)天下,后來(lái)光武中興,傳至獻(xiàn)帝,遂分為三國(guó)。”這是 “分久必合,合久必分”典故的出處。
天下大勢(shì)如此, 數(shù)據(jù)信息產(chǎn)業(yè)的發(fā)展也概莫能外。但是大家也有一個(gè)疑問(wèn):現(xiàn)在的技術(shù)發(fā)展是三足鼎立呢?還是分久必合的趨勢(shì)?
在2022中國(guó)數(shù)據(jù)與存儲(chǔ)峰會(huì)上,來(lái)自英特爾的三位技術(shù)專家英特爾數(shù)據(jù)中心事業(yè)部 云解決方案架構(gòu)師高偉、英特爾中國(guó)政企事務(wù)部及全球OEM解決方案經(jīng)理吳國(guó)安、英特爾網(wǎng)絡(luò)與邊緣計(jì)算事業(yè)部云計(jì)算軟件開(kāi)發(fā)工程師裴迪分別從CSAL/WSR、持久內(nèi)存存儲(chǔ)和IPU SPDK存儲(chǔ)卸載加速/優(yōu)化的角度對(duì)數(shù)據(jù)存儲(chǔ)的問(wèn)題給出了解讀。這些技術(shù)各有特色,依托各自強(qiáng)大的優(yōu)勢(shì)鼎立支持英特爾的技術(shù)發(fā)展。 同時(shí)他們也具備一個(gè)共性,就是要解決爆炸式數(shù)據(jù)增長(zhǎng)所帶來(lái)的數(shù)據(jù)處理方面的問(wèn)題。如Cloud Storage Accelerate Layer——CSAL(此前叫WSR),是利用QLC和傲騰構(gòu)建云存儲(chǔ)方面的價(jià)值,在提高性能和SLA的同時(shí),提高存儲(chǔ)密度,降低數(shù)據(jù)處理合存儲(chǔ)的成本;傲騰持久內(nèi)存存儲(chǔ)模式優(yōu)化,主要解決外部數(shù)據(jù)存儲(chǔ)IO性能瓶頸的問(wèn)題;相比,SPDK結(jié)合英特爾IPU對(duì)存儲(chǔ)相關(guān)協(xié)議進(jìn)行卸載和優(yōu)化,則是充分利用IPU等異構(gòu)計(jì)算來(lái)解決高性能和擴(kuò)展性的問(wèn)題。 讓我們一起深入了解,這些技術(shù)是如何操作和實(shí)現(xiàn)的。
CSAL(WSR)助力阿里云打造更具競(jìng)爭(zhēng)優(yōu)勢(shì)的云存儲(chǔ)
隨著CPU性能的不斷提升,以及PCIe 4.0時(shí)代的來(lái)臨,原本基于磁盤的存儲(chǔ)方案越發(fā)捉襟見(jiàn)肘。磁盤存儲(chǔ)容量有所提升,但單位容量的性能卻不斷降低,從而使得SLA下降。 以阿里云的一個(gè)實(shí)踐案例來(lái)看,阿里云旗下大數(shù)據(jù)計(jì)算密集型實(shí)例規(guī)格族D2C采用的是磁盤的配置,在采用了CSAL和QLC加傲騰的技術(shù)組合后,阿里云推出了新的D3C實(shí)例。 新的D3C實(shí)例不僅存儲(chǔ)性能和SLA有所提升,而且,整體密度增加3倍,RACK級(jí)別實(shí)現(xiàn)了3倍節(jié)省,減少了機(jī)架的空間占用,令阿里云受益良多。
D3C實(shí)例需要使用最新的QLC存儲(chǔ)介質(zhì),但是QLC在耐久性上和寫(xiě)性能方面有許多問(wèn)題,特別是在處理小IO的時(shí)候,其性能并沒(méi)有比磁盤高多少,甚至在小數(shù)據(jù)塊的順序?qū)憟?chǎng)景中,其性能還不如磁盤。 在分享中高偉詳細(xì)分析了造成此現(xiàn)象的原因:簡(jiǎn)單用QLC閃存盤替換磁盤的做法是行不通的。
阿里云旗下有I系列和D系列兩類提供EBS本地存儲(chǔ)的ECS實(shí)例,I系列強(qiáng)調(diào)低延遲和高性能,主要用于數(shù)據(jù)庫(kù)場(chǎng)景,D系列強(qiáng)調(diào)低成本和大容量,主要用于大數(shù)據(jù)分析場(chǎng)景,新推出的D3C實(shí)例在性能上有大幅提升。 在構(gòu)建實(shí)例的過(guò)程中,為了解決QLC在耐久性和性能方面的問(wèn)題,英特爾和合作伙伴在過(guò)去一年里開(kāi)展了一個(gè)叫CSAL的項(xiàng)目,而CSAL的作用主要有四個(gè)方面: 1,可根據(jù)用戶工作負(fù)載需求自由調(diào)整的NAND存儲(chǔ)性能和容量; 2,使用性能和耐久性都很高的傲騰來(lái)彌補(bǔ)QLC性能和耐久性不足的問(wèn)題; 3,提供英特爾至強(qiáng)原生的高性能存儲(chǔ); 4,多租戶下有更穩(wěn)定的QoS表現(xiàn),機(jī)架級(jí)別實(shí)現(xiàn)了三倍節(jié)省;
新的D3C實(shí)例采用了新一代的代號(hào)為Ice Lake的英特爾至強(qiáng)可擴(kuò)展處理器,搭配CSAL技術(shù)和傲騰加QLC的技術(shù)組合,在計(jì)算和存儲(chǔ)性能方面都有了大幅提升。 與此前的D2C相比,原來(lái)一臺(tái)服務(wù)器只能提供一個(gè)大規(guī)格的虛擬機(jī),而現(xiàn)在,一臺(tái)服務(wù)器可以提供兩個(gè)大規(guī)格的虛擬機(jī)。 并且,從TPCx-HS和TPC-DS兩個(gè)跑分測(cè)試數(shù)據(jù)來(lái)看,新的D3C的性能表現(xiàn)都比原來(lái)的D2C有所提升。
此外,高偉還介紹了CSAL架構(gòu)方面的更多細(xì)節(jié),以及CSAL在新一代ZNS閃存盤上的一些性能數(shù)據(jù),如何未來(lái)發(fā)揮更多作用。 英特爾傲騰持久內(nèi)存存儲(chǔ)模式的優(yōu)化,值得期待 英特爾傲騰技術(shù)的研發(fā)始于2012年,2019年英特爾傲騰持久內(nèi)存100系列與第二代英特爾至強(qiáng)可擴(kuò)展處理器共同發(fā)布,隨后,隨著第三代英特爾至強(qiáng)可擴(kuò)展處理器的發(fā)布,又發(fā)布了第二代的英特爾傲騰持久內(nèi)存200系列,而第三代英特爾傲騰持久內(nèi)存也將在明年年初與第四代英特爾至強(qiáng)可擴(kuò)展處理器一道發(fā)布。
從英特爾技術(shù)專家吳國(guó)安的介紹中了解到,第三代英特爾傲騰持久內(nèi)存的性能相比于200系列還會(huì)有大幅地提升。令人遺憾的是,由于一些原因,英特爾不再開(kāi)發(fā)第四代傲騰持久內(nèi)存產(chǎn)品,但后續(xù)將依靠至強(qiáng)平臺(tái)支持的CXL協(xié)議來(lái)擴(kuò)展內(nèi)存的容量及帶寬。
吳國(guó)安分享的重點(diǎn)是持久內(nèi)存SNIA編程模型的優(yōu)化問(wèn)題,如圖可見(jiàn),編程模式分兩種,一種是右側(cè)的內(nèi)存編程模式,另一種是左側(cè)是存儲(chǔ)編程模式,左側(cè)是此次關(guān)注的重點(diǎn)。 與內(nèi)存編程模式不同,存儲(chǔ)編程模式不需要修改代碼,并且,可以像操作普通磁盤和固態(tài)盤那樣把傲騰當(dāng)做塊設(shè)備來(lái)使用,之所以能做到這點(diǎn),很重要一方面就是因?yàn)橛幸粋€(gè)叫BTT的核心算法。BTT核心算法可以將字節(jié)訪問(wèn)的持久內(nèi)存設(shè)備,映射成為Block原子性的塊設(shè)備,從而將持久內(nèi)存設(shè)備視為是快速且低延時(shí)的SSD。也因此,它具有了和SSD一樣的編程模型,這意味著它可以利用現(xiàn)有的SSD的生態(tài),使用傳統(tǒng)的讀寫(xiě)接口,在所有現(xiàn)有的文件系統(tǒng)下正常工作。 在這種模式之下,傲騰持久內(nèi)存可以像普通SSD一樣,作為緩存來(lái)加速存儲(chǔ)性能。 最近,Linux內(nèi)核方面有兩個(gè)優(yōu)化,這兩個(gè)優(yōu)化可以大大提升這種模式下的性能表現(xiàn)。分享中詳細(xì)介紹了持久內(nèi)存存儲(chǔ)編程核心算法-BTT的更多細(xì)節(jié),介紹了兩種優(yōu)化存儲(chǔ)模式的方法,一種是算法優(yōu)化,將BTT算法在持久內(nèi)存中的16字節(jié)的bflog操作邏輯變?yōu)閮?nèi)存中的操作,減少寫(xiě)操作的開(kāi)銷。
另一種是動(dòng)態(tài)控制deepflush,利用英特爾平臺(tái)的ADR功能而無(wú)需使用deepflush指令從而獲得非常好的性能提升。
最后,讓我們?cè)倏闯志脙?nèi)存存儲(chǔ)編程模式可能的發(fā)展方向。新一代的英特爾至強(qiáng)可擴(kuò)展處理器將內(nèi)置DSA的加速器,它可以卸載CPU的數(shù)據(jù)搬遷工作,從而節(jié)省CPU的資源,又比如CXL技術(shù)將來(lái)可以和持久內(nèi)存存一起來(lái)獲得更優(yōu)的存儲(chǔ)性能。 詳細(xì)的技術(shù)細(xì)節(jié)也可以參考:持久內(nèi)存BTT實(shí)現(xiàn)及優(yōu)化(一)及持久內(nèi)存BTT實(shí)現(xiàn)及優(yōu)化(二)。
相關(guān)的代碼可以參考:[PATCH] BTT: Use dram freelist and remove bflog to otpimize perf以及[PATCH] ACPI/NFIT: Add no_deepflush param to dynamic control flush operation。 SPDK在英特爾IPU的存儲(chǔ)卸載中有重要作用 SPDK提供了一系列的工具和類庫(kù)來(lái)創(chuàng)建高性能、可擴(kuò)展的、用戶態(tài)的存儲(chǔ)應(yīng)用,能用于構(gòu)建超高性能的存儲(chǔ)應(yīng)用。 去年,英特爾正式發(fā)布了兩款I(lǐng)PU(Infrastructure Processing Unit),一個(gè)叫Big Spring Canyon(BSC),另一個(gè)叫Mount Evans,兩款I(lǐng)PU都能對(duì)存儲(chǔ)進(jìn)行卸載,并利用SPDK來(lái)提高性能。
英特爾技術(shù)專家裴迪介紹了IPU推出的背景和IPU的諸多價(jià)值。IPU不僅可以減少CPU資源的浪費(fèi),讓CPU得到更充分利用,還能提升性能和降低延遲,此外,通過(guò)軟硬件的結(jié)合,從而為云基礎(chǔ)設(shè)施帶來(lái)更高的靈活性。
Big Spring Canyon(BSC)是由英特爾至強(qiáng)D系列處理器和FPGA智能網(wǎng)卡來(lái)構(gòu)建的,其優(yōu)勢(shì)在于可以利用英特爾至強(qiáng)強(qiáng)大的軟件生態(tài),性能強(qiáng)大,功能強(qiáng)大,還可以應(yīng)對(duì)未來(lái)新的需求和定制化的需求。 Big Spring Canyon(BSC)卡的使用場(chǎng)景可以分為虛擬化模式和裸金屬模式兩種,裴迪結(jié)合兩種典型的使用場(chǎng)景在技術(shù)層面上做了一些具體的介紹。 裴迪介紹了SPDK軟件結(jié)合Big Spring Canyon(BSC)來(lái)支持存儲(chǔ)卸載和彈性塊設(shè)備的技術(shù)細(xì)節(jié),讓我們看到了SPDK軟件在Big Spring Canyon(BSC)卡的存儲(chǔ)卸載方面有重要作用,之所以使用SPDK來(lái)完成存儲(chǔ)卸載工作,是因?yàn)镾PDK具有強(qiáng)大的優(yōu)勢(shì): 一方面,因?yàn)镾PDK是一個(gè)用戶態(tài)的軟件,使用了Polling mode避免了內(nèi)核態(tài)IO處理頻繁上下文切換帶來(lái)的性能開(kāi)銷,SPDK的數(shù)據(jù)面零拷貝和無(wú)鎖的特性也極大提高了性能。另一方面,SPDK目前已經(jīng)比較成熟,支持多種遠(yuǎn)端存儲(chǔ)。
Mount Evans是一款基于ASIC芯片和ARM CPU打造的IPU,提供2 x 100G的網(wǎng)絡(luò)能力,它是由英特爾和谷歌合作開(kāi)發(fā)設(shè)計(jì)的。 Mount Evans繼承了以往多款基于FPGA的智能網(wǎng)卡和IPU的開(kāi)發(fā)經(jīng)驗(yàn),可應(yīng)對(duì)各種真實(shí)的工作負(fù)載。它不僅擁有強(qiáng)大的性能,而且,在安全性和隔離性上面也具有更高水平的實(shí)現(xiàn),從設(shè)計(jì)之初就將安全性和隔離性視為重中之重。 Mount Evans在硬件層面有許多技術(shù)創(chuàng)新,比如,它具有業(yè)內(nèi)一流的可編程的包處理引擎,它擁有從英特爾傲騰拓展而來(lái)的NVME存儲(chǔ)接口,它支持下一代可靠傳輸技術(shù),它還帶有先進(jìn)的解壓縮加速器。 在軟件生態(tài)方面,Mount Evans經(jīng)由軟件開(kāi)發(fā)人員、硬件開(kāi)發(fā)人員和加速器開(kāi)發(fā)人員共同設(shè)計(jì)開(kāi)發(fā),有更好的軟硬協(xié)同。它支持Barefoot P4 Studio,可以為開(kāi)發(fā)者提供更好的可編程性。另外,卡上運(yùn)行的Linux操作系統(tǒng)能夠充分利用DPDK、SPDK以及IPDK等軟件生態(tài)。 在Mount Evans的CPU上也運(yùn)行著SPDK存儲(chǔ)服務(wù),可以提供存儲(chǔ)卸載和加速,SPDK在不同形態(tài)的IPU產(chǎn)品上都可以快速的匹配對(duì)應(yīng)的硬件,同時(shí)提供高性能、高可擴(kuò)展性,可對(duì)接到不同的存儲(chǔ)服務(wù)中,為IPU加速產(chǎn)品化提供存儲(chǔ)生態(tài)上的支持。
裴迪介紹了Mount Evans用SPDK卸載存儲(chǔ)的技術(shù)細(xì)節(jié)和一些典型的使用場(chǎng)景,在技術(shù)實(shí)現(xiàn)上,重點(diǎn)提到了一個(gè)叫vDPA的技術(shù),vDPA技術(shù)增加了更多硬件實(shí)現(xiàn)的功能,從而帶來(lái)性能加速效果。 同時(shí)在IPU結(jié)合SPDK的使用場(chǎng)景中,也有涉及到最近比較熱門的FaaS (Function as a Service)云原生相關(guān)的支持。 ?
編輯:黃飛
?
評(píng)論
查看更多