分佈式存儲架構發展及技術分析

從雲和互聯網的業務場景來看,其存儲域主要採用基於服務器部署分佈式存儲服務的融合方式,它面臨如下挑戰 :

1.數據保存週期與服務器更新週期不匹配。大數據、人工智能等新興業務催生出海量數據,大量數據需按照其生命週期策略(例如 8~10 年)進行保存。

2.性能可靠與資源利用率難以兼得。支撐業務的分佈式存儲系統大致可以分爲性能型存儲和容量型存儲,它們均無法同時實現高性能可靠與高資源利用率。具體地,性能型存儲主要運行數據庫、虛擬化等關鍵業務,通常採用三副本或兩副本並配合獨立冗餘磁盤陣列卡模式 ;這類方案雖兼顧了性能和可靠性,但其大約 30% 的空間利用率卻是對存儲資源的極大浪費。

容量型系統爲了提升空間利用率,採用糾刪碼(Erasure Code,EC)方式,然而,EC 計算過程中的讀寫、重構等會消耗大量網絡資源,導致系統重構效率低下、重構時間長,給系統可靠性帶來風險(如圖 1 所示)。

3.新型分佈式應用的極簡高效共享存儲訴求。

以無服務器(serverless)應用爲代表的新型分佈式應用在近些年湧現,這類應用從無狀態化向有狀態化擴展,比如數據庫、消息總線等組件紛紛容器化,數據共享訪問的訴求不斷增多。與此同時,人工智能和機器學習等應用需要大量異構算力協同,甚至產生共享內存訪問的訴求,它們關注高帶寬、低時延的訪問能力,僅需要輕量、便捷的共享存儲系統即可,不需要搭載具有複雜企業特性的傳統存儲。

4.數據中心稅導致數據密集型應用效率低下。

面向數據密集型場景,在基於以 CPU 爲中心的服務器架構下,應用爲獲取數據所繳納的 “數據中心稅”(datacenter tax)日益加重。例如,服務器內的 CPU 爲處理網絡及存儲 IO 請求,需要消耗高達 30% 的算力 [3] ;此外,由於通用 CPU 並不擅長數據處理運算,導致其能效比低下。

傳統存算分離架構將算力資源和存儲資源(機械硬盤、固態硬盤等)分離至彼此獨立的計算域和存儲域,並通過以太網或專用存儲網絡(例如光纖通道)將二者互連,實現了存儲資源的靈活擴展和高效共享(如圖 2 左側所示);該架構主要爲複雜的傳統企業特性設計,難以應對上述挑戰,爲了讓雲和互聯網存儲域服務兼顧資源利用率、可靠性、性能、效率等衆多訴求,亟須基於新型軟硬件技術構建新型存算分離架構。

一、硬件技術趨勢

面對數據中心在容量利用率、存力效率等方面的挑戰,近年來,專用數據處理器、新型網絡等技術快速發展,爲數據中心基礎設施的重構提供了技術基礎。

首先,爲取代服務器本地盤,很多廠商推出以太網閃存簇(Ethernet Bunch of Flash,EBOF)高性能盤框(例如,近期陸續發佈的西數 OpenFlex、Vast Data Ceres 高性能盤框等)。這類盤框不再具有複雜企業特性,而是注重採用新型的數據訪問標準,比如支持 NoF(NVM Express over Fabric)等接口,以提供高性能存儲實現對本地盤的替換。NoF 協議由 NVM Express (NVMe)標準組織在 2016 年發佈,提供了 NVMe 命令到多種網絡傳輸協議的映射,使一臺計算機能夠訪問另一臺計算機的塊存儲設備。同時,一些研究機構進一步探索遠程內存池化技術,例如,韓國 KAIST 實驗室實現了基於 FPGA 的 CXL(Compute Express Link)互連協議 ;CXL 爲英特爾於 2019 年 3 月在 Interconnect Day 2019 上推出的一種開放性互聯協議,能夠讓 CPU 與 GPU、FPGA 或其他加速器之間實現高速高效互聯,從而滿足高性能異構計算的要求。

其次,業界湧現出越來越多的數據處理單元(Data Processing Unit,DPU)和基礎設施處理單元(Infrastructure Processing Unit,IPU)專用芯片,在數據流處理路徑上取代通用處理器,提升算力能效比。同時,基於可編程交換機的網存協同也是研究熱點,例如在網數據緩存的 NetCache、KV-Direct,在網數據協調的 NetLock、SwitchTx,在網數據聚合的 SwitchML、NetEC,在網數據調度的 FLAIR、AlNiCo 等。

最後,數據訪問網絡標準也在持續增強,比如 CXL 協議新版本加強了內存池化方向的技術特性,同時吸收了 Gen-Z(由 AMD、ARM、HPE 等公司發起定義的面向內存語義的技術)、OpenCAP(Open Coherent Accelerator Processor Interface,最早由 IBM 提出的異構計算接口)等技術的成果,正逐步成爲業界主流高速互聯標準。NVMe 2.0 也在向着語義統一、Fabric 統一和介質統一方向演進。

這些新型存儲、計算和網絡硬件爲構建面向雲和互聯網場景的新型存算分離架構帶來了諸多機遇,譬如使用 DPU 等專用芯片能夠打破傳統以 CPU 爲中心的服務器架構,由此提升數據密集型應用的效率。

二、新型存算分離架構的特徵

隨着遠程直接內存訪問(Remote Direct Memory Access,RDMA)、CXL、可編程網絡設備、高性能 NVMe SSD、持久性內存等新型硬件技術的發展,需要構建新型存算分離架構,以確保雲和互聯網存儲域服務能夠兼顧資源利用率、可靠性、性能、效率等衆多訴求。相較於傳統架構,新型存算分離架構最爲顯著的區別在於 :

(1)更爲徹底的存算解耦,該架構不再侷限於將 CPU 和外存解耦,而是徹底打破各類存算硬件資源的邊界,將其組建爲彼此獨立的硬件資源池(例如處理器池、內存池、機械硬盤(HDD)/ 固態硬盤(SSD)池等),從真正意義上實現各類硬件的獨立擴展及靈活共享 ;

(2)更爲細粒度的處理分工,即打破了傳統以通用 CPU 爲中心的處理邏輯,使數據處理、聚合等原本 CPU 不擅長的任務被專用加速器、DPU 等替代,從全局角度實現硬件資源的最優組合,進而提供極致的能效比。

總結來說,新型存算分離架構具有如下特徵 :

1.無盤化的服務器。新型存算分離架構將服務器本地盤拉遠構成無盤化(diskless)服務器和遠端存儲池,同時還通過遠程內存池擴展本地內存,實現了真正意義上的存算解耦,可極大提升存儲資源利用率。業務使用時,可根據應用需求選擇配置不同性能、容量的虛擬盤及池化內存空間,這樣一方面可以避免由於不同服務器本地存儲空間利用率過低導致超配造成的浪費 ;另一方面,當服務器出現故障或者更新換代時,也不影響數據的保存,不需要額外的數據遷移。

2.多樣化的網絡協議。連接計算和存儲間的網絡協議從當前的 IP 或光纖通道(Fibre Channel,FC)協議擴展到 CXL+NoF+IP 協議組合。CXL 協議使得網絡時延降低到亞微秒級別,有助於內存型介質的池化 ;NoF 協議加速 SSD 池化 ;IP 協議可滿足 HDD 等慢速介質訪問訴求。通過這幾類協議組合構建的高通量網絡,滿足了多種場景池化接入訴求。

3.專用化的數據處理器。數據存儲、訪問等操作不再由通用處理器負責,而是卸載到專用數據處理器。此外,特定的數據操作可由專用硬件加速器進行進一步加速,如糾刪碼、加密壓縮、網絡通信等。通過專用數據處理器,可以釋放通用處理器算力,用於服務更適合的場景,顯著提升系統整體能效比。

4.極高存力密度的存儲系統。分離式存儲系統(disaggregate storage)是新型架構的重要組件,作爲持久化數據的底座,在存儲介質的集約化管理基礎上,結合芯片、介質的深度協同設計,整合當前系統、盤兩級的空間管理,通過大比例糾刪碼算法減少冗餘資源開銷比例。此外,還可通過基於芯片加速的場景化數據縮減技術提供更多的數據可用空間。

三、面向雲和互聯網場景的存算分離架構

新型存算分離架構意在解決前文所提的當前架構面臨的幾大痛點挑戰,通過將原有架構的多級分層資源進行徹底解耦池化和重組整合,形成新的三大簡化分層 :存儲模組、總線網絡和算力模組,從而提供服務器本地存儲拉遠池化、新型網絡靈活組裝、以數據爲中心的多元處理、高容量極簡盤框等幾大新興能力。

1、存儲模組

面向雲和互聯網數據中心,需要以更專業的存儲能力重新定義雲和互聯網的存儲架構。新型存算分離架構中,存儲型模組主要以 EBOF、以太網內存簇(Ethernet Bunch of Memory,EBOM)、以太網磁盤簇(Ethernet Bunch of Disk,EBOD)等新型盤框形態存在,RAID/EC/ 壓縮等傳統存儲能力下沉到新型盤框中,構成 “盤即存儲” 的大盤技術,對外通過 NoF 等高速共享網絡提供塊、文件等標準存儲服務。這一類新型盤框將傳統磁盤陣列的冗餘池化技術和數據縮減技術進行了高度集約化和小型化。

雲和互聯網的多樣業務主要分爲三種典型的應用場景(如圖 3 所示)。第一種場景是針對虛擬化業務,直接將數據中心存儲域服務器的本地盤拉遠,對分佈式開源存儲集羣的物理硬盤層形成替代。第二種場景是爲數據庫、大數據服務等需要極熱數據處理的業務提供大內存、鍵 - 值(Key-Value,KV)接口,加速數據處理效率 ;第三種場景是針對容器等新業務場景,爲 Ceph、Lustre 等分佈式應用直接提供文件語義,卸載本地數據佈局,並支持將溫熱數據分級到更冷的 EBOD 等機械硬盤或磁帶型存儲模組中,提升整系統資源使用效率。

2、算力模組

當前,摩爾定律演進變緩,只有採用專用處理器才能進一步以異構方式發揮出下一階段的算力。引入專用處理器後,算力池化是必然選擇 ;否則,如果爲每臺服務器配置異構算力卡,不僅使整機功耗巨大,還會導致資源利用率十分低下。

以 DPU 爲代表的專業數據處理器具備成本更低、功耗更低、即插即用、即換即用等獨特優勢,並且在運行狀態下不與業務應用發生資源爭搶,保證用戶業務正常運行的同時也保障了基礎設施的服務質量。

3、高通量數據總線

存算分離架構中,網絡技術非常重要,它決定了系統的響應速度以及吞吐能力,也決定了系統資源池化的能力範圍。過去 10 年,萬兆 IP 網絡促使 HDD 池化,基於 IP 網絡發展了支持塊、文件、對象共享的訪問協議。當前,面向熱數據處理,NVMe/RoCE(RDMA over Converged Ethernet,RDMA 融合以太網 ) 促 使 SSD 池 化 ;並 且,NVMe 協議快速發展使其開始收編煙囪式協議規範。下一步,面向極熱數據處理,內存型網絡(例如 CXL Fabric)將促使內存資源池化,爲業務提供更大的共享內存空間(如圖 4 所示)。

本文由 Readfog 進行 AMP 轉碼,版權歸原作者所有。
來源https://mp.weixin.qq.com/s/-6g-KOs6x9B5Jg8VDWZUVQ