1
CXL技術(shù)路線現(xiàn)狀與未來規(guī)劃
阿里云目前的產(chǎn)品基于CXL 2.0技術(shù),但隨著CXL 3.0協(xié)議的演進,公司正積極規(guī)劃多代產(chǎn)品以逐步實現(xiàn)新協(xié)議的全部功能。CXL 3.0協(xié)議在可擴展性、緩存一致性以及互連架構(gòu)方面帶來了顯著變化,阿里云計劃通過分代產(chǎn)品逐步引入這些特性。
在系統(tǒng)池化架構(gòu)的演進上,阿里云已在CXL 2.0階段實現(xiàn)了內(nèi)存及持久化內(nèi)存的池化和共享,并打通了內(nèi)存池系統(tǒng)管控和運維的鏈路。,包括對池化資源的管理故障處理以及RAS方案等。未來,隨著CXL 3.0的引入,阿里云將規(guī)劃在多級Switch場景下擴大資源池化規(guī)模,并引入更多類型的資源,最終走向基于CXL Fabric的可組合架構(gòu),支持更靈活的資源配比和更高效的數(shù)據(jù)流動。
2
磐久服務器
CXL內(nèi)存池系統(tǒng)架構(gòu)
阿里云磐久服務器推出的CXL內(nèi)存池系統(tǒng),是業(yè)界首個基于CXL Switch的內(nèi)存池業(yè)務系統(tǒng)解決方案。該系統(tǒng)包含4臺2U通用計算服務器、阿里云自研的CXL Switch Box以及內(nèi)存節(jié)點(JBOM),通過CXL連接實現(xiàn)了高性能的內(nèi)存池化系統(tǒng)。
系統(tǒng)采用三層拓撲架構(gòu):
在機架的上層部署了多臺雙路CPU服務器;
機柜的中層是包含兩顆交換芯片以及一顆管理CPU的CXL Switch Box,其中每顆交換芯片的上行端口分別連接每臺服務器的兩個CPU Socket。同時Box內(nèi)的管理CPU通過25G高速控制網(wǎng)絡實現(xiàn)毫秒級資源調(diào)度。
機柜的下層是CXL內(nèi)存節(jié)點(JBOM),最多支持插入32塊阿里自研的Alimemory內(nèi)存模組,該模組支持128GB和256GB兩個規(guī)格,單箱容量最高達8TB(雖系統(tǒng)兼容512GB模組,但經(jīng)驗證128G/256G為TCO最佳選擇)。CXL Switch Box和JBOM都配備了獨立的BMC,經(jīng)帶外網(wǎng)絡接入統(tǒng)一的帶外管理系統(tǒng),實現(xiàn)CXL內(nèi)存池系統(tǒng)的管控運維。
基于RDMA的分布式方案存在的問題
在面對大客戶對數(shù)據(jù)庫容量和性能的高要求,阿里云PolarDB數(shù)據(jù)庫采用了三層解耦架構(gòu),將計算和內(nèi)存分層,并引入了分布式的內(nèi)存池。在CXL技術(shù)應用之前,該架構(gòu)依賴RDMA實現(xiàn)內(nèi)存層與計算池和存儲池的連接。但在超大規(guī)模數(shù)據(jù)庫場景中,現(xiàn)有基于RDMA的分布式方案存在以下問題:
內(nèi)存成本增加:雙端Buffer Pool架構(gòu)導致內(nèi)存成本上升——計算節(jié)點需保留本地內(nèi)存,同時額外部署遠端內(nèi)存池。
讀寫放大效應:RDMA不支持原生內(nèi)存語義,導致16KB數(shù)據(jù)頁即便僅訪問少量字節(jié)(如512B),也需將整頁從遠端內(nèi)存拷貝至本地內(nèi)存,引發(fā)高達32倍的帶寬浪費(16K/512B),致使一些場景下網(wǎng)絡吞吐成為系統(tǒng)性能瓶頸。
故障恢復速度慢:故障恢復慢一直是數(shù)據(jù)庫場景的一大挑戰(zhàn),尤其在需要通過redo log恢復數(shù)據(jù)頁的情況下
缺乏緩存一致性:在多主架構(gòu)下,所有DB節(jié)點都可以同時訪問整個數(shù)據(jù)庫所有的頁。在這種情況下會頻繁出現(xiàn)數(shù)據(jù)頁從一個節(jié)點遷移到另一個節(jié)點的情況,產(chǎn)生了額外的網(wǎng)絡帶寬開銷。
4
架構(gòu)創(chuàng)新
基于CXL Switch的三層解耦內(nèi)存層重構(gòu)
隨著CXL技術(shù)的引入,阿里云PolarDB數(shù)據(jù)庫對三層解耦架構(gòu)進行了全面改造,推出了業(yè)界首個基于CXL Switch的云數(shù)據(jù)庫PolarCXLMem。該架構(gòu)相比RDMA分布式內(nèi)存層,業(yè)務端到端性能提升了2倍以上,同時實現(xiàn)了跨節(jié)點的緩存共享,徹底解決了讀寫放大以及數(shù)據(jù)拷貝的問題。
核心優(yōu)勢:CXL技術(shù)賦能的多維性能突破
1. 低延遲與高帶寬:CXL在64B小粒度訪問(如事務操作)至16K大粒度數(shù)據(jù)頁訪問的全場景下,延遲性能顯著優(yōu)于RDMA,且?guī)拑?yōu)勢為大粒度數(shù)據(jù)傳輸(如完整數(shù)據(jù)頁讀寫)提供了更優(yōu)支持。
2. CXL原生支持內(nèi)存語義,一方面簡化了編程模式,另一方面也避免了RDMA方案中數(shù)據(jù)需從遠端通過RDMA網(wǎng)卡拷貝至本地緩存的額外開銷。通過直接將數(shù)據(jù)庫緩存頁構(gòu)建在CXL內(nèi)存內(nèi),消除了IO延遲及數(shù)據(jù)搬移的開銷。
3. 跨節(jié)點緩存一致性保障:針對多主場景,團隊設(shè)計了跨主機緩存一致性方案(當前為軟件方案,兼容未來CXL3.0硬件緩存一致性協(xié)議),通過集中式緩存管理模塊協(xié)調(diào)各節(jié)點緩存頁狀態(tài),解決了傳統(tǒng)分布式架構(gòu)中數(shù)據(jù)同步與一致性問題。
從理論到實踐的顯著提升
單點讀場景:吞吐量達RDMA方案的3倍以上,帶寬需求顯著降低;
全頁訪問(range-select):吞吐量提升2倍,平均延遲降低50%;
多主場景:在共享數(shù)據(jù)百分比較低的場景表現(xiàn)優(yōu)異(最大提升62%),即使在全共享和嚴重頁沖突(鎖系統(tǒng)瓶頸)的場景下,仍保持27%的性能優(yōu)勢(對比RDMA)。
結(jié)語:
阿里云在CXL技術(shù)領(lǐng)域的創(chuàng)新研發(fā)不僅為數(shù)據(jù)庫場景帶來了革新,更為未來計算架構(gòu)的發(fā)展指明了方向。隨著CXL技術(shù)的不斷成熟和應用場景的拓展,阿里云將繼續(xù)推動CXL技術(shù)的發(fā)展與應用,為全球用戶提供更高效、更靈活、更可靠的云計算服務。
此次分享不僅展示了阿里云在CXL技術(shù)上的深厚積累和實踐經(jīng)驗,更為行業(yè)內(nèi)的技術(shù)創(chuàng)新和生態(tài)建設(shè)提供了有力支持。未來,阿里云將攜手合作伙伴共同推動CXL技術(shù)的標準化和生態(tài)普及,開啟高效計算的新時代。