英特爾® 傲騰? 持久內(nèi)存是一款革命性的持久內(nèi)存產(chǎn)品,補齊了DRAM與磁盤之間的需求缺口,重構(gòu)內(nèi)存/存儲層次架構(gòu),集大容量、經(jīng)濟性和持久性于一身,幫助用戶優(yōu)化數(shù)據(jù)中心基礎(chǔ)設(shè)施,滿足大數(shù)據(jù)分析、數(shù)據(jù)庫、云與虛擬化、分布式存儲等多種應(yīng)用場景需求。為了幫助用戶通過傲騰持久內(nèi)存來實現(xiàn)應(yīng)用創(chuàng)新優(yōu)化,助力企業(yè)業(yè)務(wù)系統(tǒng)實現(xiàn)性能突破,浪潮發(fā)布了基于英特爾® 傲騰? 持久內(nèi)存的多種場景方案,本方案是基于英特爾® 傲騰? 持久內(nèi)存200系列的Redis應(yīng)用方案。
Redis是一個高性能的鍵值分布式內(nèi)存數(shù)據(jù)庫,具有微秒級的數(shù)據(jù)存取速度,廣泛應(yīng)用于游戲、視頻、新聞、導(dǎo)航等領(lǐng)域。它不僅性能強勁,而且還具有復(fù)制特性以及為解決問題而生的獨一無二的數(shù)據(jù)模型。Redis提供了5種不同類型的數(shù)據(jù)結(jié)構(gòu),各式各樣的問題都可以很自然地映射到這些數(shù)據(jù)結(jié)構(gòu)上。除此之外,通過復(fù)制、持久化(persistence)和客戶端分片(client-side sharding)等特性,用戶可以很方便地將Redis擴展成一個能夠包含數(shù)百GB數(shù)據(jù)、每秒處理上百萬次請求的系統(tǒng)。
挑戰(zhàn):內(nèi)存成本限制了容量擴展
Redis的強勁性能很大程度上是由于其將所有數(shù)據(jù)都存儲在內(nèi)存中,Redis的可用內(nèi)存受限于服務(wù)器對于內(nèi)存容量的支持,這導(dǎo)致Redis出現(xiàn)部分數(shù)據(jù)不能存儲在內(nèi)存中,溢出到磁盤,Redis性能優(yōu)勢將無法充分發(fā)揮的情況。
傳統(tǒng)的解決方案是利用Redis的集群功能來解決內(nèi)存不足的問題,但這樣意味著企業(yè)要采購大量的內(nèi)存,而且為了擴展內(nèi)存,企業(yè)將不得不部署更多的服務(wù)器,這增加了企業(yè)的成本壓力。
英特爾®傲騰?持久內(nèi)存創(chuàng)新性解決方案新增內(nèi)存擴展方式專為打破服務(wù)器內(nèi)存容量限制而優(yōu)化,補齊了內(nèi)存與DRAM與磁盤之間的需求缺口,打造高性能、大容量的持久內(nèi)存層,有助于更加高效地挖掘數(shù)據(jù)的潛在價值。
圖1:英特爾®傲騰?持久內(nèi)存存儲層
英特爾®傲騰?持久內(nèi)存新一代產(chǎn)品200系列(Barlow Pass,即BPS)基于第三代英特爾®至強®可擴展處理器優(yōu)化,容量有128GB、256GB和512GB三種。相對于上一代100系列產(chǎn)品,Ice Lake平臺單顆CPU容量最大支持到4TB,內(nèi)存頻率提升至3200MT/Sec,單通道平均性能提升25%。
英特爾®傲騰?持久內(nèi)存200系列具有兩種工作模式:內(nèi)存模式(MM)和App Direct 模式(AD)
內(nèi)存模式,CPU內(nèi)存控制器將所有英特爾®傲騰?持久內(nèi)存200系列視為易失性系統(tǒng)內(nèi)存(無數(shù)據(jù)持久性),以更低的成本提供更大的內(nèi)存容量,無需更改應(yīng)用,并且性能接近 DRAM。
App Direct模式,能夠?qū)崿F(xiàn)較大內(nèi)存容量和數(shù)據(jù)持久性,支持持久內(nèi)存編程,軟件和應(yīng)用能夠直接與英特爾®傲騰?持久內(nèi)存通信,降低了堆棧的復(fù)雜性,并充分利用緩存一致性的字節(jié)可尋址特性,將持久內(nèi)存的使用擴展到本地節(jié)點之外;App Direct模式提供一致的低延遲,同時支持更大的數(shù)據(jù)集。
圖2:英特爾®傲騰?持久內(nèi)存工作模式
本方案使用英特爾®傲騰?持久內(nèi)存來擴展內(nèi)存容量,以解決服務(wù)器內(nèi)存不足的問題。本次測試采用內(nèi)存模式 ,內(nèi)存模式具有容量大、成本低、易用性等特點。設(shè)備即插即用,不需要客戶業(yè)務(wù)系統(tǒng)做任何修改。
圖3:BPS內(nèi)存擴展方案與DRAM方案對比
本次使用Benchmark測試了Redis在DRAM和BPS平臺內(nèi)存同容量下的讀寫性能
|
配置項 |
BPS |
DRAM |
硬件配置 |
CPU |
2*Icelake 6348 2.60GHz |
|
Memory |
256G(16*16G DDR4) |
1T(32*32G DDR4) |
|
Barlow Pass |
1T(8*128G)MM |
|
|
Network |
2*10Gbps |
表1:方案對比配置
圖4:DRAM vs BPS(8+4)不同讀寫比例Redis測試結(jié)果對比
測試結(jié)果說明,Redis開啟同樣實例數(shù)的場景下,BPS在延遲和吞吐量方面與DRAM基本相當,可以達到DRAM的98%以上。
基于英特爾®傲騰?持久內(nèi)存的Redi應(yīng)用場景說明,英特爾®傲騰?持久內(nèi)存表現(xiàn)了優(yōu)秀的穩(wěn)定性和性能,提供了高性價比的內(nèi)存擴展方案,滿足Redis性能需求的前提下,顯著降低了內(nèi)存成本。