XSKY 從 2016 年正式發(fā)布基于 XStore 的 SDS V2 產(chǎn)品,XStore 在當(dāng)時(shí)是業(yè)內(nèi)少數(shù)的用戶態(tài)緩存技術(shù),提供本地 SSD 緩存來(lái)加速讀寫性能,其后 XSKY 陸續(xù)增加了大塊 IO Bypass,可以自動(dòng)識(shí)別大塊 IO 直寫 HDD。
在 2018 年,我們意識(shí)到本地 SSD 緩存固然簡(jiǎn)單,但是隨著集群的長(zhǎng)期運(yùn)行,在 SSD 故障或者壽命到期后,SSD 對(duì)應(yīng)的全量 HDD 數(shù)據(jù)都需要進(jìn)行重構(gòu),大幅增加恢復(fù)時(shí)間,帶來(lái)了更高的運(yùn)維成本。同時(shí),XStore 僅能夠支持副本模式,而三副本的硬件成本相比使用 RAID 技術(shù)的集中性存儲(chǔ)并沒有顯著的規(guī)模化優(yōu)勢(shì)。
因此,XSKY 設(shè)計(jì)了新一代全局緩存架構(gòu) XSpeed,并在 SDS V5 發(fā)布會(huì)亮相。
XSpeed 實(shí)現(xiàn)了集群中緩存介質(zhì)的池化,可以整合全部緩存容量并以三副本冗余度提供高性能 IO 服務(wù)。整合后的全局緩存數(shù)據(jù)有更大的空間來(lái)進(jìn)行回刷,在回刷過(guò)程中會(huì)使用 EC 糾刪碼技術(shù)和數(shù)據(jù)壓縮功能,大幅提高集群的空間利用率。
新的架構(gòu)變化,使得不管是 SSD 還是 HDD 故障,都可以只重構(gòu)對(duì)應(yīng)容量的數(shù)據(jù),且 SSD 故障完全不會(huì)影響 HDD。
在 2021 年 V5 發(fā)布會(huì)后的 3 年時(shí)間里,大量的客戶享受到了新架構(gòu)帶來(lái)的收益,得盤率提高 300% 以上,運(yùn)維成本降低 94%。
從 XStore 到 XSpeed 的發(fā)展表明,在企業(yè)級(jí)存儲(chǔ)系統(tǒng)中,存儲(chǔ)軟件架構(gòu)是極其重要的。它可以決定系統(tǒng)的性能、TCO、擴(kuò)展性和可靠性這些關(guān)鍵因素。
硬件技術(shù)的發(fā)展帶來(lái)機(jī)會(huì)和挑戰(zhàn)
在 XSpeed 發(fā)布之后的三年時(shí)間里面,硬件技術(shù)已經(jīng)發(fā)生了非常大的變化。
在 2019 年,SATA/SAS SSD 還是主流,HDD 在持久化數(shù)據(jù)存儲(chǔ)中正發(fā)揮著主要作用。PCIe 還停留在 3.0,存儲(chǔ) 的 CPU 還是 8-12 Cores 為主,網(wǎng)絡(luò)還是 10Ge。
但在短短幾年內(nèi),技術(shù)的飛躍式進(jìn)步已經(jīng)顛覆了這一格局。特別是隨著 AI 相關(guān)業(yè)務(wù)驅(qū)動(dòng),硬件平臺(tái)迎來(lái)了大躍進(jìn)。
不管是 x86 還是信創(chuàng) CPU,單節(jié)點(diǎn)核數(shù)早已經(jīng)躍升至 32 Cores,而今年的數(shù)據(jù)中心大贏家 GPU 也已經(jīng)是主流算力,在網(wǎng)絡(luò)上,基于以太網(wǎng)的存儲(chǔ)網(wǎng)絡(luò)已經(jīng) 25Gb 起步,100Gb 也已經(jīng)普遍使用。SSD 介質(zhì)隨著 PCIe 5.0 落地和顆粒層數(shù)工藝進(jìn)步,擁有了更大的容量、更好的性能和更低的價(jià)格。
面對(duì)這些硬件技術(shù)變化和客戶需求,我們開始思考如何設(shè)計(jì)面向全場(chǎng)景的分布式閃存存儲(chǔ)系統(tǒng),其中會(huì)有哪些新的挑戰(zhàn)。
而隨著 AI、大數(shù)據(jù)的發(fā)展,客戶日益增長(zhǎng)的存儲(chǔ)需求中,一個(gè)突出的趨勢(shì)是對(duì)高效存儲(chǔ)解決方案的渴望??蛻舨粌H需要通過(guò)分配更高性能的存儲(chǔ)資源來(lái)處理更多任務(wù),還追求更高的空間效率和完善的數(shù)據(jù)保護(hù)服務(wù)。
而現(xiàn)有的面向全場(chǎng)景的分布式閃存存儲(chǔ)系統(tǒng)架構(gòu),很難完全滿足需求:
? 可靠性較低:隨著越來(lái)越低的性能延遲,應(yīng)用實(shí)實(shí)在在享受到更好的存儲(chǔ)性能所帶來(lái)的好處,但更快的處理意味著對(duì)于存儲(chǔ)可用性要求的提高。過(guò)去是 10 毫秒內(nèi)的存儲(chǔ)延遲,我們通常假設(shè) 10 秒內(nèi)的節(jié)點(diǎn)故障規(guī)格可以接受,而在全閃化后,延遲降低到 100 微秒級(jí)別,之前秒級(jí)的異常規(guī)格就變得不可接受。但現(xiàn)有市場(chǎng)上分布式全閃產(chǎn)品中,仍然只提供長(zhǎng)達(dá)數(shù)秒的故障切換指標(biāo)。? 性能服務(wù)水平不足:在不斷迭代的 NVME SSD 和高速網(wǎng)絡(luò)加持下,性能絕對(duì)值基本不再是挑戰(zhàn)。反而是在規(guī)?;娜W存里,在支持大規(guī)模高效寫入數(shù)據(jù)和元數(shù)據(jù)更新情況下,長(zhǎng)期的尾部延遲結(jié)果才能真正衡量存儲(chǔ)性能服務(wù)水平。因?yàn)樵诙哑龃罅?SSD 并基于高速網(wǎng)絡(luò)后,SSD 的 GC (垃圾回收)以及網(wǎng)絡(luò)偶發(fā)丟包等因素,導(dǎo)致的長(zhǎng)尾延遲抖動(dòng),是應(yīng)用性能體驗(yàn)的關(guān)鍵。因此,我們認(rèn)為需要更關(guān)注 P99 延遲的穩(wěn)定性,它才意味著真實(shí)的服務(wù)水平。? 成本仍然過(guò)高:SSD 和 HDD 的成本剪刀差在過(guò)去 8 年沒有發(fā)生根本性變化。用戶仍然期望在數(shù)據(jù)量持續(xù)增長(zhǎng)的背景下,能以適當(dāng)?shù)某杀精@得全閃存的巨大優(yōu)勢(shì)。如果在全閃存下,分布式存儲(chǔ)還依賴三副本且不具備任何數(shù)據(jù)縮減能力,它并沒有長(zhǎng)期競(jìng)爭(zhēng)力。
因此,如果在這三方面,我們?nèi)绻荒芎芎萌ソ鉀Q,只是有了一個(gè)高性能的分布式存儲(chǔ)系統(tǒng),是很難與集中式全閃相提并論,甚至在很多場(chǎng)景下,集中式全閃陣列借助 RAID 和壓縮技術(shù),會(huì)有更好的性價(jià)比。
因此,我們希望能夠利用新的硬件變化來(lái)進(jìn)一步推動(dòng)分布式存儲(chǔ)架構(gòu)變革,來(lái)更好解決這些最新需求。而最好的辦法,就是推出全新的架構(gòu)來(lái)適應(yīng)新時(shí)期的硬件和需求,也就是 XSKY 最新推出的“星海(XSEA,eXtreme Shared-Everything Architecture,極速全共享架構(gòu))”架構(gòu)。
面向全閃數(shù)據(jù)中心的星海架構(gòu)
星海架構(gòu)是 XSKY 過(guò)去 8 年在存儲(chǔ)技術(shù)領(lǐng)域,不斷磨礪與創(chuàng)新的結(jié)果,它仍然采用軟件定義的技術(shù),以最新的標(biāo)準(zhǔn)存儲(chǔ)協(xié)議和網(wǎng)絡(luò)技術(shù)作為基礎(chǔ),并引入了三項(xiàng)技術(shù)創(chuàng)新點(diǎn)。
第一,星海架構(gòu)采用了 Shared Everything (全共享)模型來(lái)實(shí)現(xiàn)全共享數(shù)據(jù)存儲(chǔ),使得每個(gè)節(jié)點(diǎn)都能直接訪問(wèn)所有 SSD,來(lái)提高了數(shù)據(jù)訪問(wèn)速度和靈活性;
其次,星海架構(gòu)采用了單層閃存介質(zhì)的設(shè)計(jì),來(lái)專門面向 TLC NVMe SSD 進(jìn)行優(yōu)化,可以減少硬件配置復(fù)雜性;
第三,星海架構(gòu)在 IO 路徑中采用端到端的 NVMe 實(shí)現(xiàn),不僅存儲(chǔ)系統(tǒng)對(duì)外提供 NVMF 協(xié)議,內(nèi)部復(fù)制網(wǎng)絡(luò)和 IO 處理也同樣采用 NVMF 技術(shù),確保 IO 路徑的高效處理。
Shared Everything 模型是新架構(gòu)基石
在過(guò)去十年乃至更久的時(shí)間里,Shared Nothing 模型因其物理資源隔離的能力、易于擴(kuò)展和管理的特點(diǎn),在大規(guī)模存儲(chǔ)解決方案中被廣泛認(rèn)可和應(yīng)用。從超融合存儲(chǔ)到分布式文件和對(duì)象存儲(chǔ),再到數(shù)據(jù)庫(kù)、數(shù)倉(cāng)系統(tǒng)等領(lǐng)域,都在使用 Shared Nothing 模型。
然而,隨著 NVMe 規(guī)范標(biāo)準(zhǔn)化和 100Gb 以上高速網(wǎng)絡(luò)的普及,遠(yuǎn)程訪問(wèn) SSD 的性能已經(jīng)可以媲美本地訪問(wèn)。Shared Nothing 模型過(guò)去基于網(wǎng)絡(luò)性能瓶頸的假設(shè)其實(shí)已經(jīng)不再適用。
在面對(duì)新的可靠性、性能服務(wù)水平和成本的挑戰(zhàn),我們看到 shared nothing 模型的局限性:? 性能擴(kuò)展性的局限性:在 Shared Nothing 架構(gòu)中,每個(gè)節(jié)點(diǎn)獨(dú)立處理數(shù)據(jù),而隨著節(jié)點(diǎn)增多,為了維持分布式事務(wù)的一致性,帶來(lái)了額外的軟件復(fù)雜性和 CPU 消耗,并可能導(dǎo)致寫放大。這樣的開銷限制了擴(kuò)容的收益,在全閃存系統(tǒng)里,這種瓶頸更為明顯;
? 資源利用浪費(fèi):在 Shared Nothing 架構(gòu)中,資源的獨(dú)立性限制了靈活性,使得各節(jié)點(diǎn)資源無(wú)法統(tǒng)一利用。例如,在處理高負(fù)載時(shí),每個(gè)節(jié)點(diǎn)必須配備足夠的硬件資源,導(dǎo)致規(guī)劃系統(tǒng)時(shí)需要進(jìn)行提前預(yù)留,在大規(guī)模部署中,會(huì)造成更大的浪費(fèi)。
? 服務(wù)質(zhì)量:在 Shared Nothing 架構(gòu)中,故障檢測(cè)和響應(yīng)機(jī)制常常缺乏業(yè)務(wù)層面的敏感度。一旦發(fā)生故障,節(jié)點(diǎn)間需要進(jìn)行復(fù)雜的一致性協(xié)商,導(dǎo)致故障切換時(shí)間過(guò)長(zhǎng)。在系統(tǒng)出現(xiàn)亞健康狀況時(shí),這種機(jī)制會(huì)更加脆弱,故障處理過(guò)程難以迅速有效地進(jìn)行。
? 局部視角問(wèn)題:Shared Nothing 架構(gòu)將每個(gè)節(jié)點(diǎn)劃分為獨(dú)立的單元,這種劃分會(huì)導(dǎo)致無(wú)法實(shí)施大比例的 EC 糾刪碼,數(shù)據(jù)恢復(fù)和后臺(tái) IO 操作也難以全局優(yōu)化。結(jié)果是,這些操作可能占用過(guò)多帶寬,影響正常的客戶端 IO 請(qǐng)求,進(jìn)而影響整體業(yè)務(wù)的穩(wěn)定性。
為應(yīng)對(duì) Shared Nothing 模型的挑戰(zhàn),星海架構(gòu)使用了 Shared Everything 的設(shè)計(jì),借助最新硬件平臺(tái)的支持,這一架構(gòu)可以克服 Shared Nothing 限制,來(lái)顯著提升性能、資源效率和整體服務(wù)質(zhì)量。
從上圖可知,BlockServer、FileServer 和 ChunkServer 作為一組無(wú)狀態(tài)容器分布在多個(gè)服務(wù)器集群中,它們通過(guò)共享內(nèi)存直接交互,無(wú)需通過(guò)網(wǎng)絡(luò)。而 IOServer 會(huì)將所有 SSD 通過(guò) NVMe-oF 協(xié)議暴露出物理卷,使得任意 ChunkServer 在啟動(dòng)時(shí),都可以掛載集群里的所有 NVMe 卷。這意味著不管是塊設(shè)備還是文件系統(tǒng),都可以直接獲得任意位置的 SSD 數(shù)據(jù)。
這樣的架構(gòu)設(shè)計(jì)在性能可擴(kuò)展方面具有明顯優(yōu)勢(shì)。
首先,隨著集群的橫向擴(kuò)展,由于每個(gè)節(jié)點(diǎn)無(wú)需跟其他節(jié)點(diǎn)的服務(wù)進(jìn)行通信,可以消除不必要的數(shù)據(jù)轉(zhuǎn)發(fā),實(shí)現(xiàn)了網(wǎng)絡(luò)的線性擴(kuò)展能力。
其次,存儲(chǔ)容量和性能,可以與 CPU、內(nèi)存資源解耦,為不同業(yè)務(wù)場(chǎng)景提供更高的靈活性和資源利用率。例如,在備份場(chǎng)景,可以使用較低的 CPU 和內(nèi)存資源;在 OLTP 場(chǎng)景中,則可以部署更高頻率的 CPU 以實(shí)現(xiàn)更低延遲的 IO 處理。
第三,Shared Everything 架構(gòu)設(shè)計(jì)賦予了每個(gè)節(jié)點(diǎn)全局?jǐn)?shù)據(jù)讀寫能力。這意味著,我們可以實(shí)施大比例的 EC 糾刪碼,如 20+4,大幅提升空間利用效率。也可以更好的進(jìn)行全局流控、后臺(tái)任務(wù)調(diào)度,并根據(jù)全局 SSD 的狀態(tài)進(jìn)行磨損均衡。
此外,在關(guān)鍵的可靠性方面,Shared Everything 架構(gòu)顯著提高了故障恢復(fù)能力。無(wú)論是節(jié)點(diǎn)、網(wǎng)絡(luò)還是 SSD 故障,其他節(jié)點(diǎn)都能迅速接管,保證業(yè)務(wù)連續(xù)性。這是因?yàn)槊總€(gè)服務(wù)都可以訪問(wèn)到所有數(shù)據(jù),而不用在故障時(shí)等待數(shù)據(jù)復(fù)制或狀態(tài)同步。這樣的設(shè)計(jì)可以在 100ms 內(nèi)實(shí)現(xiàn)故障切換,為存儲(chǔ)提供高可靠性保證。
面向 TLC SSD 優(yōu)化,單層閃存介質(zhì)設(shè)計(jì)
在定義存儲(chǔ)池的構(gòu)建方式時(shí),星海架構(gòu)挑戰(zhàn)了傳統(tǒng)的模式,該架構(gòu)放棄了常規(guī)的緩存加數(shù)據(jù)盤的組合,轉(zhuǎn)而采用了單層閃存介質(zhì)構(gòu)建,其背后是反映了 XSKY 對(duì) SSD 技術(shù)和傳輸標(biāo)準(zhǔn)演進(jìn)的深入理解。
從 PCIe 3.0 到 4.0,再到如今的 5.0,我們見證了 NVMe SSD 在帶寬吞吐方面的巨大飛躍。這意味著,現(xiàn)在我們可以用更少的 PCIe 通道實(shí)現(xiàn)更高的數(shù)據(jù)傳輸速率,使得 TLC 型 NVMe SSD 持續(xù)具備最好的性價(jià)比。
因此,星海架構(gòu)采用單層 TLC NVMe SSD 來(lái)構(gòu)建存儲(chǔ)池,簡(jiǎn)化集群的存儲(chǔ)硬件結(jié)構(gòu)。
在使用方式上,我們利用 Append Only 方式實(shí)現(xiàn)數(shù)據(jù)寫入,減少了寫放大現(xiàn)象。并通過(guò)精心設(shè)計(jì)的空間布局,在單個(gè) SSD 上實(shí)現(xiàn)了緩存和持久存儲(chǔ)的雙重功能。這些技術(shù)使得在沒有專用緩存介質(zhì)情況下,確保足夠的性能穩(wěn)定性。
根據(jù) XSKY 的評(píng)估,在常規(guī)的混合讀寫業(yè)務(wù)場(chǎng)景中,相比分層緩存方式,單層閃存可以顯著降低介質(zhì)成本 20%以上。
同時(shí)配合 Shared Everything 架構(gòu)模型帶來(lái)的全局 EC 和壓縮功能,使得集群的得盤率超過(guò)了 100%。就如去年,著名的 HCI 存儲(chǔ)軟件 vSAN 8.0 發(fā)布,正式宣布其全閃架構(gòu)從 OSA 演變?yōu)?ESA,而 ESA 架構(gòu)的關(guān)鍵設(shè)計(jì)就是采用了 Single Tier。
最大化硬件卸載,端到端的 NVMe
在端到端 IO 路徑上,星海架構(gòu)采用了標(biāo)準(zhǔn) NVMe over Fabric 協(xié)議進(jìn)行構(gòu)建。
過(guò)去,在存儲(chǔ)系統(tǒng)中,SCSI 協(xié)議一直占據(jù)主導(dǎo)地位。然而,SCSI 在并發(fā)處理能力和協(xié)議效率上存在約束。相比之下,NVMe 協(xié)議以其更高的并發(fā)性和較低的協(xié)議開銷脫穎而出,目前已得到主流操作系統(tǒng)內(nèi)核的原生支持。
星海架構(gòu)不僅在存儲(chǔ)訪問(wèn)方面采用了 NVMe over Fabrics 協(xié)議,而且在存儲(chǔ)內(nèi)部網(wǎng)絡(luò)中也全面實(shí)施了該協(xié)議。這意味著所有存儲(chǔ)節(jié)點(diǎn)都可以通過(guò) NVMe over Fabrics 高效地訪問(wèn)每一個(gè) NVMe SSD,從而避免了存儲(chǔ)協(xié)議轉(zhuǎn)換所帶來(lái)的額外開銷。
在端到端的 NVMe I/O 路徑上,也采用了高效的 Polling 模式處理每個(gè) I/O 請(qǐng)求,并通過(guò) NUMA 綁定優(yōu)化了不同服務(wù)的內(nèi)存訪問(wèn)效率。最后實(shí)現(xiàn)低至 100 微秒的端到端延遲。
此外,星海架構(gòu)持續(xù)適應(yīng)硬件技術(shù)的演進(jìn),通過(guò)與領(lǐng)先的智能網(wǎng)卡廠商合作,利用智能網(wǎng)卡來(lái)進(jìn)行 NVMF 協(xié)議的硬件卸載,在存儲(chǔ)設(shè)備上實(shí)現(xiàn)從計(jì)算節(jié)點(diǎn)到存儲(chǔ)的高效數(shù)據(jù)傳輸。
3 個(gè) 100 的架構(gòu)收益
通過(guò) shared everything、單層閃存介質(zhì)和端到端 NVMe,星海架構(gòu)可以實(shí)現(xiàn) 3 個(gè) 100:? 在 40%-60%負(fù)載下實(shí)現(xiàn) 100 微秒的超低延遲;? 通過(guò) EC 和數(shù)據(jù)壓縮技術(shù)實(shí)現(xiàn)超過(guò) 100%的存儲(chǔ)系統(tǒng)得盤率;? 在面對(duì)慢盤、亞健康網(wǎng)絡(luò)問(wèn)題時(shí),能在 100 毫秒內(nèi)快速切換,以保證系統(tǒng)的穩(wěn)定運(yùn)行。
這 3 個(gè) 100 的實(shí)現(xiàn),不僅是技術(shù)的飛躍,也直接回應(yīng)了前文提出的的三大主要挑戰(zhàn)。因此,星海架構(gòu)能夠?qū)崿F(xiàn)更高的可靠性、更優(yōu)異的性能服務(wù)水平,并有效控制成本。
成本優(yōu)先架構(gòu),帶來(lái)場(chǎng)景優(yōu)勢(shì)
基于星海架構(gòu),XSKY 已經(jīng)發(fā)布了星飛軟件和星飛 9000 一體機(jī)全閃存儲(chǔ),這也是業(yè)界首款采用全共享架構(gòu)的分布式全閃主存儲(chǔ)。
如上圖左側(cè)所示,當(dāng)前數(shù)據(jù)中心存儲(chǔ)結(jié)構(gòu)通常由高性能 NVMe DAS、全閃存陣列、容量型存儲(chǔ)及歸檔存儲(chǔ)構(gòu)成。在行業(yè)和用戶共同的推動(dòng)下,過(guò)去十年我們見證了容量型存儲(chǔ)領(lǐng)域分布式架構(gòu)的崛起,根據(jù) IDC 報(bào)告,分布式架構(gòu)的市場(chǎng)份額在容量型存儲(chǔ)持續(xù)增長(zhǎng)。
而星飛產(chǎn)品有更大的野心,希望能橫跨 NVMe DAS、全閃陣列和容量型存儲(chǔ)的使用場(chǎng)景,
為了驗(yàn)證這一定位,我們精心設(shè)計(jì)了三個(gè)實(shí)際場(chǎng)景的測(cè)試項(xiàng)目,分別與合作伙伴和客戶一同展現(xiàn)星海架構(gòu)的領(lǐng)先性和創(chuàng)新成效:? 第一個(gè)是面向 OLTP 數(shù)據(jù)庫(kù)場(chǎng)景,與本地 NVMe DAS 對(duì)比測(cè)試? 第二個(gè)是面向 OLAP 場(chǎng)景,與集中式全閃陣列對(duì)比測(cè)試? 第三個(gè)是在公有云上與高性能網(wǎng)盤的對(duì)比測(cè)試
NVMe DAS 對(duì)比測(cè)試
過(guò)去數(shù)年中,很多用戶反饋隨著 NVME SSD 價(jià)格下降,越來(lái)越多用戶在高性能應(yīng)用場(chǎng)景都選用本地 NVME SSD 提供存儲(chǔ)能力,但隨著 SSD 的規(guī)?;褂煤屠匣?,存儲(chǔ)介質(zhì)的運(yùn)維實(shí)際上是很大挑戰(zhàn),硬件亞健康問(wèn)題、SSD 容量和性能彈性需求都成為挑戰(zhàn)。
XSKY 聯(lián)合了 Intel Lab 做了面向數(shù)據(jù)庫(kù)場(chǎng)景的本地 NVMESSD 與星飛產(chǎn)品的對(duì)比測(cè)試,從性能、TCO 方面進(jìn)行評(píng)估。
根據(jù)英特爾中國(guó)區(qū)解決方案部技術(shù)總監(jiān)高豐的介紹,經(jīng)過(guò)雙方聯(lián)合測(cè)試,借助 QAT 加速數(shù)據(jù)壓縮/解壓縮的強(qiáng)大能力,與 NVMe DAS 配置相比,星飛 9000 獲得相同延遲的同時(shí),還可以實(shí)現(xiàn)更高的空間利用率,并大幅降低運(yùn)維成本,提升業(yè)務(wù)連續(xù)性。
在測(cè)試中,采用了 OceanBase 數(shù)據(jù)庫(kù)運(yùn)行在計(jì)算節(jié)點(diǎn)上,占用 48C 和 192GB 內(nèi)存。同時(shí)在計(jì)算節(jié)點(diǎn)上配備了兩塊 NVMe SSD,通過(guò) RAID1 來(lái)提供本地盤。
而星飛存儲(chǔ)系統(tǒng)運(yùn)行在配置 16 塊 1.92TB NVMe SSD 的三節(jié)點(diǎn)上,計(jì)算節(jié)點(diǎn)通過(guò) 2*100Gb 的網(wǎng)絡(luò)訪問(wèn)存儲(chǔ)。
三節(jié)點(diǎn)的星飛系統(tǒng)使用 EC 2+1 的冗余策略,啟用了 QAT 壓縮能力,并提供 NVMe over RDMA 協(xié)議的卷供 OceanBase 使用。
測(cè)試用例我們選擇了 sysbench 中的 Point Select,ReadOnly,WriteOnly 和 ReadWrite 四種用例,針對(duì)每種用例,我們分別執(zhí)行從 32 并發(fā)到 1024 并發(fā)的不同壓力,主要關(guān)注 QPS 和 P95 延遲指標(biāo)。
從下圖中可以看到,橙色塊是星飛系統(tǒng)的性能,另一個(gè)是本地 NVMe SSD 提供的性能。
從 32 到 1024 并發(fā),星飛性能和本地 NVMe SSD 基本平分秋色,唯一的不足是在 1024 并發(fā)的情況下,星飛系統(tǒng)的延遲是本地 NVMe SSD 的 2 倍,后續(xù)我們會(huì)進(jìn)一步探究問(wèn)題原因。該結(jié)果也證明了星飛系統(tǒng)實(shí)際上已經(jīng)達(dá)到了本地 NVMe SSD 的延遲水平,軟件損耗非常低。
另一方面,在存儲(chǔ)效率上,星飛通過(guò) EC 加壓縮的能力,在 1TB 的數(shù)據(jù)庫(kù)空間里,實(shí)際只占用了 880GB 的容量,壓縮比達(dá)到了 1.8,而使用 RAID 1 的本地 NVMe SSD,則占用了 2TB 的實(shí)際空間。相比而言,星飛系統(tǒng)只需要 44% 的本地 RAID1 方案的容量空間。再加上本地 NVMe SSD 的長(zhǎng)期運(yùn)維成本,星飛的圖形化管理運(yùn)維,以及閃存全局均衡,實(shí)際 TCO 下降到本地 NVMe SSD 的 30%。
集中式全閃對(duì)比測(cè)試
在銀行業(yè),數(shù)據(jù)庫(kù)跑批是相當(dāng)常見的一項(xiàng)業(yè)務(wù)。過(guò)去該業(yè)務(wù)一直運(yùn)行在集中性存儲(chǔ)廠商的全閃陣列上,江蘇省農(nóng)村信用社聯(lián)合社(簡(jiǎn)稱:江蘇農(nóng)信)也是如此。
隨著業(yè)務(wù)規(guī)模的增加,集中全閃架構(gòu)進(jìn)一步制約了江蘇農(nóng)信云的彈性服務(wù)能力,因此江蘇農(nóng)信也開始考慮在分布式存儲(chǔ)上進(jìn)行數(shù)據(jù)庫(kù)場(chǎng)景評(píng)估。
在面向 OLAP 數(shù)據(jù)庫(kù)場(chǎng)景的集中式全閃對(duì)比場(chǎng)景中,XSKY 與江蘇農(nóng)信進(jìn)行了聯(lián)合測(cè)試。
對(duì)銀行場(chǎng)景來(lái)說(shuō),高并發(fā)低延遲要求更嚴(yán)格,對(duì)賬差 1 分錢都不會(huì)過(guò)夜,晚上跑批對(duì)賬,做不到高性能低延遲,可能當(dāng)天的賬就無(wú)法按時(shí)對(duì)完,統(tǒng)計(jì)核算報(bào)表就沒法出。因此,做完這些基準(zhǔn)性能測(cè)試后,在星飛環(huán)境測(cè)試了一下跑批業(yè)務(wù),數(shù)據(jù)庫(kù)跑批業(yè)務(wù)主要有以下過(guò)程,分別是解壓、數(shù)據(jù)入庫(kù)、數(shù)據(jù)倉(cāng)庫(kù)轉(zhuǎn)換和數(shù)據(jù)集市處理。從這里可以看到,星飛相比混閃集群的運(yùn)行時(shí)間降低了 79 分鐘,而相比 IBM FS9200 基本持平,在數(shù)據(jù)集市處理階段階段表現(xiàn)更好。
通過(guò)這次測(cè)試,江蘇農(nóng)信堅(jiān)定了上云信心。過(guò)去受限于性能,集中存儲(chǔ)承接數(shù)據(jù)庫(kù)跑批業(yè)務(wù),分布式主要面向非數(shù)據(jù)庫(kù)庫(kù)業(yè)務(wù),通過(guò)本次測(cè)試,新架構(gòu)的高得盤率使得江蘇農(nóng)信對(duì)全閃分布式數(shù)據(jù)中心有了更多的信心,未來(lái)考慮建設(shè)大規(guī)模全 NVME 星飛云存儲(chǔ),進(jìn)一步提升云平臺(tái)存儲(chǔ)服務(wù)能力。測(cè)試結(jié)果也驗(yàn)證了星飛產(chǎn)品可以與集中全閃陣列做到相當(dāng)?shù)男阅軙r(shí)延,且規(guī)?;W存池化后提升資源利用率,降低成本
公有云高速云盤對(duì)比測(cè)試
公有云高性能云盤,實(shí)際上早已已成為眾多互聯(lián)網(wǎng)業(yè)務(wù)架構(gòu)中不可或缺的部分。這些云盤不僅提供了彈性的存儲(chǔ)能力,還滿足了業(yè)務(wù)對(duì)高性能的迫切需求。但有一個(gè)不爭(zhēng)的事實(shí)是,越來(lái)越多的客戶在關(guān)注多云化 IT 架構(gòu),特別是數(shù)據(jù)密集型業(yè)務(wù)的下云。
對(duì)于星飛而言,我們不僅希望能在云下提供高效存儲(chǔ)能力,也希望在公有云上也能支持,給客戶帶來(lái)一致的存儲(chǔ)體驗(yàn)。
我們與某互聯(lián)網(wǎng)客戶成立了聯(lián)合項(xiàng)目組,針對(duì)星飛產(chǎn)品在公有云環(huán)境中的性能和成本效益,我們進(jìn)行了一系列詳盡的對(duì)比測(cè)試。
我們選擇基于 AWS 云進(jìn)行測(cè)試,使用了高性能的虛擬機(jī)配置作為客戶端節(jié)點(diǎn),啟動(dòng)了 3 個(gè)適合作為存儲(chǔ)配置的虛擬機(jī)作為存儲(chǔ)節(jié)點(diǎn),該配置會(huì)掛載 4 個(gè) 7500GB 的本地 SSD,并部署了星飛系統(tǒng),創(chuàng)建了 EC 4+2:1 的存儲(chǔ)池并提供 12 個(gè)總可用容量為 116TB 的 NVMF 卷。具體配置在這里就不贅述了。
在每個(gè)客戶端節(jié)點(diǎn)上利用 NVMe over TCP 方式掛載分別掛載了 4 卷。我們通過(guò)簡(jiǎn)單性能壓測(cè),基本看到,這樣三節(jié)點(diǎn)星飛大約提供 615K IOPS 的讀寫 IOPS。
io2 是 AWS EBS 的高性能云盤,可以按需靈活提供 IOPS 和容量,其中容量?jī)r(jià)格為 0.125GB/月,每 IOPS 價(jià)格為 0.065。為了跟星飛提供的容量近似,我們創(chuàng)建了 16 個(gè)總?cè)萘繛?116TB 的 io2 類型卷。
在性能基準(zhǔn)測(cè)試中,基于同等容量的 16 個(gè) LUN,我們主要關(guān)注單卷隨機(jī) 4KB 延遲和集群整體延遲對(duì)比。
從性能對(duì)比中,可以看到在一致的 IOPS 性能下,AWS EBS io2 和星飛卷實(shí)現(xiàn)了同等數(shù)量級(jí)的延遲。另外由于星飛運(yùn)行在 AWS 虛擬網(wǎng)絡(luò)上,并使用 TCP/IP 協(xié)議通信,延遲高于云下的 RoCE/RDMA 網(wǎng)絡(luò),導(dǎo)致延遲高于 AWS EBS io2。針對(duì)該問(wèn)題,后續(xù)計(jì)劃支持公有云的 RDMA 網(wǎng)絡(luò)方案,來(lái)顯著降低延遲,接近或持平 AWS EBS 延遲。
在 TCO 對(duì)比環(huán)節(jié),我們分別計(jì)算了 AWS 星飛系統(tǒng)和 AWS EBS io2 的購(gòu)置成本。
星飛全閃總共提供 615K 的 IOPS,相比 EBS io2 預(yù)留 615K IOPS 的方案降低 87% 的成本。這個(gè)差距是巨大的。
我們都覺得這樣的成本對(duì)比可能并不公平,因?yàn)樾秋w系統(tǒng)提供的性能 IOPS 超出了大多數(shù)工作負(fù)載所需,在公有云使用中,用戶通常只會(huì)申請(qǐng)所需的 IOPS 來(lái)節(jié)約成本。因此我們將 AWS EBS io2 預(yù)留 IOPS 降低到 61K 來(lái)接近實(shí)際情況,但即使這樣,依然能降低 62% 的 EBS 成本。
通過(guò)這次測(cè)試,我們看到星飛產(chǎn)品,不僅可以面向最新的硬件技術(shù)設(shè)計(jì),也能夠運(yùn)行在公有云上,提供跟高性能云盤近似的性能。除了 AWS 外,后續(xù)星飛明年計(jì)劃支持國(guó)內(nèi)的 Top3 公有云平臺(tái)。
這次測(cè)試我們達(dá)成了這些目的:1. 首先,星飛可以提供一致的數(shù)據(jù)服務(wù),幫助實(shí)現(xiàn)多云化的 IT 架構(gòu),統(tǒng)一管理和運(yùn)維技能;2. 其次,相比公有云網(wǎng)盤的可用性承諾,基于公有云的星飛產(chǎn)品可以提供更高的冗余度和可靠性保證;3. 最后,利用低廉的快照成本和數(shù)據(jù)縮減能力,星飛產(chǎn)品至少可以降低 50% 以上的 TCO。
通過(guò)這些收益,我們認(rèn)為星飛確實(shí)能夠幫助用戶一起實(shí)現(xiàn)云上云下,一致體驗(yàn),成本節(jié)省一半。
面向未來(lái)全閃數(shù)據(jù)中心的架構(gòu)答案
綜上所述,無(wú)論從存儲(chǔ)系統(tǒng)的架構(gòu)演進(jìn),還是目前硬件產(chǎn)品的發(fā)展新趨勢(shì)、市場(chǎng)和應(yīng)用的需求,以及基于星海架構(gòu)的星飛產(chǎn)品的驗(yàn)證結(jié)果而言,星海架構(gòu)以及基于星海架構(gòu)的全閃存儲(chǔ),是最值得考慮的選擇。
作為行業(yè)的領(lǐng)先者,XSKY 致力于通過(guò)創(chuàng)新的星海架構(gòu),推動(dòng)全閃數(shù)據(jù)中心技術(shù)的發(fā)展,滿足日益增長(zhǎng)的數(shù)據(jù)存儲(chǔ)需求。