與DRAM內(nèi)存相比,英特爾® 傲騰™ 持久內(nèi)存不但提供相近的性能,還具備更高的容量和性價比,且有非易失性、按字節(jié)尋址等獨到優(yōu)勢;
快手在推薦系統(tǒng)存儲升級中借它降低TCO達30%,將故障恢復用時縮短達百倍;
寧德時代MES系統(tǒng)利用它將落盤速度提升到原來的6.2倍,將系統(tǒng)重啟耗時從數(shù)十分鐘縮短至5-10分鐘。
傳統(tǒng)上,在一個計算系統(tǒng)中,貼近計算的數(shù)據(jù)(熱數(shù)據(jù))和遠離計算的數(shù)據(jù)(溫、冷數(shù)據(jù))被分別“安置”在易失性的處理器緩存和DRAM內(nèi)存,以及擁有數(shù)據(jù)持久性的固態(tài)盤和硬盤中。在全球數(shù)據(jù)規(guī)模呈幾何級增長的背景下,在所有用戶都急切盼望重構(gòu)存儲介質(zhì)或設備之間的層級關系,以提升數(shù)據(jù)處理效率之際,這個傳統(tǒng)的內(nèi)存-存儲架構(gòu)正變得十分脆弱。
問題到底出在哪里了呢?如圖一所示,如果我們把系統(tǒng)讀寫、處理數(shù)據(jù)的過程比作資料書籍的查詢或調(diào)閱,處理器內(nèi)的寄存器和高速緩存就像是家中的書桌和書柜,書桌上擺著的數(shù)據(jù)無疑唾手可得,可只有幾頁紙或幾本書的容納量;書柜里的資料書籍數(shù)量更多些,但取用的耗時也略長一些。
圖一 用書的存放和查找做例子,來理解不同存儲層級的特點
到了DRAM內(nèi)存這一級,情況就會發(fā)生一些變化,因為它已不再是處理器硅片上集成的存儲部件了,但又是其他存儲部件或設備中距離處理器最近的,因此更像是離家較近的社區(qū)圖書館,收藏的書籍或資料要比家里豐富得多,但要去找書查資料,就得出家門(延時更長)、攜帶量也受限(數(shù)據(jù)傳輸性能也低一些)。
轉(zhuǎn)遍了社區(qū)圖書館,所需的書或資料還沒找到的話,就不得不長途跋涉前往固態(tài)盤和硬盤了。這兩種存儲設備或介質(zhì)與處理器內(nèi)的寄存器、緩存,還有剛剛提及的內(nèi)存更加不同,它們就好比大型的城市級甚至是國家級的圖書館,存放的數(shù)據(jù)資料可謂浩如煙海,但更傾向于容量的設計目標也使得它們在性能表現(xiàn)上有更多犧牲,因此拜訪一次的耗時不菲且能取回的數(shù)據(jù)量更為受限。
上述的類比,就是傳統(tǒng)內(nèi)存-存儲架構(gòu)的形象體現(xiàn),如果要有更精確的印象,不妨看看表一基于不同存儲層級的真實性能和延時數(shù)據(jù)所做的比較。從中我們不難發(fā)現(xiàn),醒目的性能鴻溝或者說缺口正夾在DRAM內(nèi)存和固態(tài)盤/硬盤之間,其差距足有千倍以上。
表一 不同存儲介質(zhì)的延時速度類比
由此,要理解內(nèi)存計算或內(nèi)存數(shù)據(jù)庫技術的緣起,也就是件自然而然的事兒了——畢竟處理器硅片上寸土寸金,功耗上也有更多限制,因此大幅擴展緩存容量的設計,往往會因此讓步給增添全新計算單元或集成更多周邊組件的想法,而盡可能擴展內(nèi)存容量,并將更多熱數(shù)據(jù)存入其中就成了加速數(shù)據(jù)分析和處理的有效途徑,同時也是在成本上更容易讓人承受的法子。這就像自家的房子不可能為了容納超大的書桌和書房而動輒蓋成數(shù)百或上千平米之大,但把離家最近的社區(qū)圖書館擴建一下,則是更加實惠、也利人利已的做法。
然而,計劃再好,也經(jīng)常趕不上變化。隨著移動互聯(lián)網(wǎng)和互聯(lián)網(wǎng)時代的到來,也隨著海量數(shù)據(jù)處理技術的成熟,DRAM內(nèi)存在容量和成本上也開始不敷應用。以現(xiàn)在很多APP背后常用的推薦系統(tǒng)為例:其核心的分布式索引系統(tǒng)為了應對高并發(fā)需求,通常需要基于內(nèi)存數(shù)據(jù)庫構(gòu)建,而且對于承載這個數(shù)據(jù)庫的內(nèi)存的容量要求也越來越高,過去上百或幾百GB就能滿足,現(xiàn)在則恨不能以TB起步。然而要構(gòu)建這樣的內(nèi)存系統(tǒng),DRAM內(nèi)存普遍單條128GB的容量是很難實現(xiàn)的,而且即使計算系統(tǒng)提供了更多內(nèi)存通道和更多內(nèi)存插槽,DRAM內(nèi)存高昂的價格,也會讓人望而卻步。
因此,不論是最終用戶,還是IT廠商,都認為在DRAM內(nèi)存和固態(tài)盤/硬盤之間亟需開發(fā)一種全新的存儲部件或設備,來解決DRAM內(nèi)存在容量和成本上面臨的兩難局面,并滿足更大內(nèi)存數(shù)據(jù)庫的構(gòu)建需求。
英特爾® 傲騰™ 持久內(nèi)存就是英特爾針對上述需求推出的創(chuàng)新產(chǎn)品,其創(chuàng)新的3D XPoint™ 存儲介質(zhì),與先進的內(nèi)存控制器和其它軟硬件技術相結(jié)合,使其在性能上接近DRAM內(nèi)存,在容量上又能有數(shù)倍的提升。它的出現(xiàn),如圖三所示,填補了內(nèi)存與傳統(tǒng)存儲間的缺口,也顛覆了傳統(tǒng)的內(nèi)存-存儲架構(gòu)。用它來擴建扮演社區(qū)圖書館角色的內(nèi)存系統(tǒng),不但容量上更易達標(單條容量可達512GB),造價也能較易承受。
圖三 英特爾® 傲騰™ 持久內(nèi)存填補DRAM內(nèi)存與固態(tài)盤/硬盤之間的缺口
選用英特爾® 傲騰™ 持久內(nèi)存,還有兩個附帶收獲,即可按字節(jié)尋址和數(shù)據(jù)持久性。前者針對的是固態(tài)盤和硬盤常用的按塊讀寫機制,這種機制就如同去圖書館借書時,必須要把放置著目標書籍的書架上的所有書都背回家再做分揀,而按字節(jié)尋址則能精準定位目標書籍的位置,并僅僅將其借出拿走。數(shù)據(jù)持久性則是對DRAM內(nèi)存先天不足的補全,即在斷電后依然能保留數(shù)據(jù),這就讓大體量的內(nèi)存數(shù)據(jù)庫在計算系統(tǒng)出現(xiàn)計劃內(nèi)或計劃外停機時,重啟及恢復服務的速度大大加快,畢竟中間節(jié)省了把數(shù)百GB,甚至是TB級數(shù)據(jù)從固態(tài)盤或硬盤上讀回內(nèi)存的耗時。
英特爾® 傲騰™ 持久內(nèi)存這種種應用優(yōu)勢,絕非紙上談兵。以互聯(lián)網(wǎng)行業(yè)的快手為例,它就用英特爾® 傲騰™ 持久內(nèi)存升級了推薦系統(tǒng)的存儲系統(tǒng),在滿足性能要求之余,使其TCO降低了30%,故障恢復用時也獲得高達百倍的縮短[1]。
再以正積極推進制造業(yè)數(shù)字化和智能化轉(zhuǎn)型的寧德時代為例,其基于內(nèi)存數(shù)據(jù)庫的制造執(zhí)行系統(tǒng)(MES)導入英特爾® 傲騰™ 持久內(nèi)存后,數(shù)據(jù)落盤速度提升到原來的6.2倍,系統(tǒng)重啟的耗時也從原來的數(shù)十分鐘縮短至5-10分鐘[2],這就讓該系統(tǒng)能夠以更優(yōu)的效率響應生產(chǎn)的實時數(shù)據(jù)處理需求,并為產(chǎn)能的快速擴展提供更可靠的保障。
圖四 寧德時代MES Data Merge性能
在采用英特爾® 傲騰™ 持久內(nèi)存前后的性能對比
[1] 如欲了解快手案例的更多細節(jié),請訪問:
https://www.intel.cn/content/www/cn/zh/architecture-and-technology/kuaishou-recommendation-system-and-redis-services-storage-upgrade.html
[2] 如欲了解寧德時代案例的更多細節(jié),請訪問:
https://www.intel.cn/content/www/cn/zh/customer-spotlight/stories/catl-customer-story.html