屠要峰,楊洪章,韓銀俊,陳正華
(1.中興通訊股份有限公司, 廣東 深圳 518057;2.南京中興新軟件有限責任公司, 江蘇 南京 210012)
自從 2006年被谷歌首次提出[1],“云計算”已悄然發展了10年以上,以云桌面、云硬盤、超融合等形態為代表的云計算產品已經步入現代生活的方方面面,按需付費的理念深入人心。軟件定義存儲[2-4]作為支撐云計算各項任務的關鍵技術,成為當仁不讓的研究熱點。軟件定義存儲采用虛擬化技術將分布于不同地域的計算機資源進行集中管理和分配,通過資源復用的方式,有效地提高資源利用率。軟件定義存儲可根據接口分成 3類[5]:分布式對象存儲系統、分布式文件系統、分布式塊存儲系統。在云計算的應用環境中,分布式塊存儲系統是最主要的底層存儲系統,它提供彈性、線性的邏輯地址空間。
由于軟件定義存儲將標準x86硬件資源池化、虛擬化、服務化,在同一套云平臺中將會支持海量的、并發的、復雜的應用,在公有云抑或私有云中,都十分普遍。通過存儲資源復用和共享的方式,用戶不需要為每個應用部署專門的存儲系統,也降低了軟硬件維護代價。然而,資源復用是一把雙刃劍[6],在為用戶降低開銷的同時,也導致了應用之間的相互干擾和競爭,難以保障用戶的服務質量需求。
從社會大眾的認知層面來看,已將存儲資源視為與水、電、煤氣近似的公共基礎設施,用戶對該類按需付費的資源有著異曲同工的期望——滿足峰值需求和穩定需求。以電力系統為例,用戶的基本期望是電壓能保證家中所有家用電器同時工作,并且電壓保持穩定,不能忽高忽低。再以云存儲資源為例,用戶的期望是吞吐量能同時保證VR視頻播放、云桌面辦公、大型游戲等應用的需求,且吞吐量保持穩定,不能時斷時續。因此,提供高效、穩定的存儲服務質量成為用戶對云計算產品、對底層分布式塊存儲系統的核心期望。
遺憾的是,現有的分布式塊存儲系統對服務質量的控制與支持嚴重不足,特別是在資源需求量超出存儲系統能力時,無法提供令人滿意的服務質量,迫切需要提出一種滿足高效、穩定的存儲服務質量要求的解決方案。
存儲系統通過塊設備接口向應用程序提供服務,如讀、寫操作等。本文將“通過通用接口顯性地向上層應用程序提供的存儲服務”稱為前端任務,前端任務被視作存儲系統的基本服務功能。相較于基本服務功能,存儲系統也會提供一些高級服務功能,如負載均衡、緩存臟數據回刷、重復數據刪除、數據壓縮、定期快照、數據副本同步、副本與糾刪碼相互轉換等。此類高級服務功能對于上層應用程序透明,存儲系統不提供顯性的調用接口。本文將“不通過通用接口向上層應用程序提供的存儲服務”稱為后端任務。
對于分布式塊存儲系統而言,其服務質量應從如下兩個維度進行支持。
(1)前后端任務的資源平衡問題
不論是前端任務還是后端任務,都需要一定的系統資源才能運行,如內存、CPU、I/O、網絡帶寬等。由于系統資源是有限的,如果不對任務的執行加以控制,會造成前后端任務之間對資源的無序競爭。顯然,前端業務的時延對于用戶的服務質量體驗產生決定性的影響,而后端業務雖然是不可或缺的,但其須為前端業務讓路,優先滿足前端業務所需的資源。因此,對前端任務和后端任務的執行進行合理的調度,是解決該問題的關鍵。
(2)前端任務間的資源平衡問題
前端任務既然被調度執行,那么其相互的資源競爭必須以一種公平的方式對待,特別是對性能影響顯著的、有限的緩存資源。在實際的應用任務中,數據訪問熱度符合Pareto(帕拉托)定律,即少數的熱數據被頻繁訪問,因此將熱數據存放在緩存中。當產生新的熱數據時,需要緩存替換。而現有的緩存替換算法太過陳舊,不符合云環境的新期望。因此,對前端任務之間熱數據的精確識別,將真正的熱數據放在緩存中,及時替換變冷的數據,是解決該問題的關鍵。
只有解決好這兩個維度上的資源競爭問題,分別從預防和妥協兩個方面采取措施,才能真正提供高效、穩定的存儲服務質量,這已經成為學術界和工業界的共識。
本文設計并實現了中興分布式塊存儲系統(ZTE distributed block storage syetem,ZTE-DBSS),同時,重點提出了兩個方面的優化,從而滿足高效、穩定的服務質量的迫切需求。
· 面對前后端任務的資源平衡問題,提出一種自適應的任務調度技術。
· 面對前端任務間的資源平衡問題,提出一種多級熱度的緩存替換技術。
最后將上述優化技術應用在ZTE-DBSS中,并在真實的云計算應用場景中進行測試。
Sheepdog提供了一個高可用的塊級存儲卷,提供了對QEMU虛擬機的接口、對iSCSI協議的支持、基于FUSE的文件系統掛載的SheepFS以及SBD(sheepdog block device)多種塊設備接口[7]。Sheepdog默認采用多副本模式,另外還提供了日志模式和糾刪碼存儲模式。
Weil等人[8]提出了Ceph RBD分布式塊存儲系統,在開源社區中具有廣泛的影響力。2010 年3月Linus Tovalds將Ceph合并到了Linux內核2.6.34。Ceph具有優良的系統架構設計,保證了優異的可靠性和可擴展性。Ceph主架構由客戶端與RADOS組成,客戶端實現了多種類型的接入,提供了非常豐富的功能。
Na等人[9]提出了 BW-RAID分布式塊存儲系統,它是一種前端并行數據傳輸和后端分布式冗余管理的網絡RAID存儲系統,有著良好的空間利用率和較小的冗余計算開銷,同時有效解決了集中式管理方式性能瓶頸的問題。BW-RAID是國產商業性分布式塊存儲系統的典范。
Amazon EBS[10]是AWS中著名的商業性彈性塊存儲系統。對用戶來說可以將EBS看作一款超大的塊設備。因此 EBS 能夠提供最底層的服務,可以在這之上建立文件系統、數據庫、共享磁盤甚至操作系統等。EBS 的整體架構由分布式系統與集群控制器組成,每個集群控制器可以管理多臺物理節點。
以上參考文獻提出的分布式塊存儲系統為開源系統或商業系統,開源系統雖然成本低但服務質量支持不足;商業系統雖然服務質量有一定程度的支持,但效果不佳、成本高昂。
張泉[6]提出了一種支持多維服務質量保證的I/O調度算法 Courier,根據應用的帶寬需求分配基本的信譽額度,并允許應用透支限定額度的信譽以優先處理緊急請求,同時,獎勵負載特征良好的應用以更多的信譽額度,以提高存儲系統的整體資源利用效率。
馮盼盼等人[11]提出一種分布式塊存儲系統及其存儲質量控制方法及裝置,該系統利用指標監控服務器,對每個任務使用的各個存儲單元及其所在的各個存儲節點服務器進行指標監控,對該任務使用的所述各個存儲單元進行存儲質量評分,根據評分進行存儲單元自動切換,從而保證存儲服務質量。
Huang[12]提出了 Stonehenge算法,根據客戶端的需求采用公平的隊列算法將請求調度到合適的虛擬磁盤上。它通過存儲控制器控制訪問共享存儲設備上的多個應用數據流,并通過實時調度和基于反饋控制的設備隊列來保證應用所指定的服務質量目標。
開源Ceph v0.94代碼[13]采用靜態配置文件的方案對前后端任務進行調度控制。可配置如下參數:backfill最大的操作數、最小對象數、最大對象數、響應請求的最高 OSD Daemon使用率、recovery請求活躍個數上限、線程個數上限、優先級等。該種靜態配置方式的缺點是:配置參數復雜、缺乏靈活性、效果較差。系統繁忙時后端任務會阻塞 I/O請求,系統空閑時后端任務無法充分利用系統的磁盤、網絡帶寬等資源。
以上參考文獻提出的任務調度技術本質上是資源隔離,與云存儲共享、彈性的理念相違背,存在資源利用率低下的問題。
Lee等人[14]結合最少使用(least recently used,LRU)和最不經常使用(least frequently used,LFU)頁置換算法提出了LRFU算法。當替換發生時,LRFU替換具有最小CRF的數據塊。CRF表示數據塊會在不久的將來被訪問到的概率大小。LRFU既可用作LRU,也可用作LFU,因此LRFU在時效型和頻率型的數據訪問模式下都能取得比較好的效果。
Jiang等人[15]提出 LIRS算法,通過使用兩次訪問同一數據塊之間的距離動態地對訪問數據塊排序,從而進行數據塊替換算法。LIRS將每個存儲層劃分為兩部分:LIR空間和 HIR空間。該算法能夠保證在 LIR空間里的所有數據塊都比 HIR空間里的數據塊具有更小的訪問間隔。因此,HIR空間中的數據塊將會被優先考慮替換。
Megiddo等人[16]提出了ARC算法,將每個存儲層劃分為兩部分,分別存儲只訪問過一次的數據塊和訪問次數超過一次的數據塊。ARC可以根據具體的數據訪問工作流自動調整這兩部分空間的大小來提升命中率。
顧榮[17]提出一種通用化分層存儲系統緩存調度框架,將參考文獻[14-16]中的不同的數據訪問模式和緩存策略以及上層的大數據應用融合起來,并為用戶提供一組覆蓋多種不同數據訪問模式的高效緩存調度策略,從而加速上層大數據應用的數據讀寫訪問性能。
以上參考文獻提出的緩存替換技術均是對LRU、LFU等經典算法的局部改進或重新組合。
本文設計并實現了中興分布式塊存儲系統ZTE-DBSS,其采用無中心的分布式架構[18],如圖1所示。其中,MDS主要用于集群配置和元數據管理;ZK用于實現分布式數據的強一致更新;CSD(Chunk存儲服務)主要負責實際的數據存儲;CLI實現內核態客戶端,提供塊存儲的訪問接口;OMM為操作維護平臺,用于集群管理。

圖1 ZTE-DBSS系統整體架構
ZTE-DBSS在線性地址空間內可以任意創建虛擬卷,虛擬卷切分成固定大小的數據片分布在不同的物理存儲節點上。每個數據片均有3份副本分別保存在不同的存儲設備中,提供了高可用性。通過虛擬塊設備驅動,將用戶數據切分為小粒度數據分片,并通過路由算法確定當前主節點,發送到對應的服務端進行處理。根據集群中主機狀態、容量、負載等情況,進行路由算法的動態調整,從而滿足可用性、擴展性、一致性要求。本系統支持異構的存儲設備,能夠自動根據不同設備的負載能力,按照一定的比例關系使用每臺存儲設備的存儲資源,實現負載均衡分布、提升設備的利用率。如圖2所示,ZTE-DBSS分為兩級尋址。
· 首次尋址:根據一致性散列計算本次讀寫請求歸屬的CG(Chunk group),根據CG的路由定位請求應該發到那個節點的哪個CSD。
· 二次尋址:請求磁盤后,調用裸盤K/V引擎對物理數據塊進行讀寫,利用裸盤 K/V的內部B+元數據管理完成二次尋址。

圖2 ZTE-DBSS兩級尋址
為提升I/O利用率和系統吞吐量,如圖3所示,ZTE-DBSS采用定制化的裸盤文件系統替代常規文件系統。直接管理物理磁盤的空間分配,采用段/區/頁三級組織形式,避免了文件系統常見的碎片化現象。不同 CG間共享存儲空間,動態分配,實現塊設備精簡配置特性。同一塊硬盤支持不同Chunk大小卷共享存儲,每個CG創建的時候可以指定其尺寸,適應不同任務類型,在同一存儲池中滿足不同場景的性能要求。
中興分布式塊存儲系統ZTE-DBSS目前已在多個公有云、私有云場景下支撐了多樣的任務應用,如服務器虛擬化、數據庫、氣象預報大數據、地質勘探大數據、云盤、遠程辦公、云桌面、VR視頻等。在系統上線之初存儲服務質量支持較弱,在前后端任務的資源平衡問題上采取的技術方案是類似于考參文獻[10]的靜態限速技術,在前端任務間的資源平衡問題上采取的技術方案是類似于參考文獻[13]的二級鏈表技術,存儲服務質量難以符合用戶的預期,有較大的提升空間。

圖3 ZTE-DBSS裸盤文件系統
如前文所述,現有的任務調度技術[3,8-10]往往采用靜態限速的方法,對后端任務設置資源上限,如IOPS(input/output operations per second,每秒進行讀寫操作的次數)限定在某閾值以下。該種方法雖較好地保證了前端任務執行時所需要的資源,但是在系統空閑時卻無法充分利用資源,造成了資源的浪費,以及后端任務執行效率的低下。
一種合理的解決辦法是,分布式塊存儲系統需要優先滿足前端任務的運行,盡量在系統的空閑時間段執行后端任務,并根據前端應用負載自適應地調整后端任務的速率,由此保證存儲服務質量。
針對現有靜態限速技術中存在的靈活性低下、系統空閑時資源無法有效利用的問題,本文提供一種通過跟蹤系統資源負載的輕重程度,自適應地執行后端任務并限速的技術,避免對前端任務性能的影響,從而保證存儲服務質量。
本技術包括兩個方面:首先通過基于邏輯閥的任務開關機制來決定后端任務是否可以執行、哪些后端任務可以執行;然后通過基于令牌桶的速率控制機制對準許執行的后端任務進行速率控制。
(1)基于邏輯閥的任務開關機制
在后端任務執行控制方面,采用一個邏輯閥來調控。是否在下一時間周期 Pi+1內執行后端任務,依賴于當前時間周期Pi內負載WLi的輕重。周期P的值不能設置得太長。
對于某一具體的后端任務而言:當前時間周期Pi內負載WLi較輕時,下一時間周期Pi+1執行后端任務;反之,當前周期Pi內負載WLi較重時,下一周期Pi+1不執行后端任務。
對于全體后端任務而言:將后端任務的優先級進行預設,負載閾值見表1。根據負載的輕重程度,可以調控不同優先級的后端任務的執行情況。在一些簡化場景中,后臺業務無需區分優先級,可僅設置2個繁忙等級,即空閑和繁忙。

表1 負載閾值
本文主要用“時間周期Pi內,破壞時延上限的用戶I/O所占比率 VRi”作為負載WLi的量化方式。令Ni為時間周期Pi內完成的用戶I/O請求個數,Li(k)是在周期Pi內的第k個用戶I/O的服務時間,周期Pi的時延上限為LCi。若Li(k)>LCi,則認為該用戶I/O破壞了時延上限。

如果在周期 Pi內,VRi>δ則判斷負載 WLi為高負載,反之,則系統負載較輕。這里,δ稱為松弛因子。
(2)基于令牌桶的速率控制機制
基于邏輯閥的任務開關機制雖然對后臺任務的執行進行了初步的把控,但是如果不對這些準許執行的后臺任務進行限速的話,則仍舊會對前臺任務造成嚴重的資源競爭。因此,提出一種基于令牌桶機制的速率控制機制。
通過跟蹤系統中的實時負載,進而動態調整后端任務的資源,控制其執行速率。釆用令牌(token)量化存儲硬件的能力,并通過控制令牌消耗的方式給不同的前后端任務分配不同的令牌,即對后端任務限速。在前臺任務繁忙、對資源需求量大的時候,減少后端任務令牌數量,減輕其對前端任務性能的影響;在前臺任務空閑、對資源需求量小的時候,增加后端任務令牌數量,使得后端任務能夠盡快完成。
如圖4所示,在ZTE-DBSS中進行實現時,在CSD層面進行重分布速率控制,并根據硬件設備單盤IOPS上限設置令牌的生成速率,前端任務請求和后端任務請求共同消耗令牌,這樣就能根據前端任務的 I/O速率,自適應地調整后端任務的 I/O速率。為了讓后端任務不與前端任務爭奪令牌,只有在生成的令牌數量超過min_tokens閾值時,才能執行后端任務,否則只能由前端任務來消耗令牌。

圖4 令牌桶限速
與現有技術相比,本文提出的自適應的任務調度技術在分布式塊存儲系統執行后端任務時,會根據系統的前端任務負載輕重來動態調整后端任務開關和速率,能夠實現在保證前端任務執行的前提下,后端任務亦能夠快速完成。
如前文所述,現有的緩存替換技術[11-14]將產生于20世紀的經典緩存替換算法LRU、LFU進行改進和重組,主要問題包括以下方面。
(1)熱度判斷的主體局限于進入緩存的數據
現有緩存替換算法不僅缺乏對被換出數據的長期跟蹤,而且缺乏對全體數據的熱度判斷。隨著新型存儲器件層出不窮,存儲金字塔結構更加復雜,涉及多個存儲層級之間的冷熱數據的判斷與遷移,需要對全體數據進行熱度統計與計算。
(2)熱度判斷準確率低下
現有緩存替換算法沒有同時考慮訪問時間和歷史訪問頻率,導致一些只是近期沒有被訪問到,但實際上訪問頻率很高的數據被替換出去,熱度判斷的合理性存在較大提升空間。同時,被換出數據再次被換入時其熱度等同于首次進入緩存的數據,但其熱度是不同的。
(3)未能充分發揮硬件性能
受制于經典緩存替換算法的慣性思維以及20世紀80年代的CPU計算能力和內存容量限制,現有的緩存替換算法仍然十分節約CPU和內存,以鏈表作為最主要的緩存管理方法,處理效率低下。
一種合理的解決方案是,應該綜合考慮數據近期的訪問時間和歷史的訪問頻率,避免將只是近期未被訪問,但實際上歷史訪問頻率很高的數據換出。因此,不能將最近的數據元素和已過去一定時間的數據元素截然分開,不能只對最近的訪問情況進行考察,應對全體數據進行考察,采用可量化的計算方式對數據的熱度進行評價。
在本技術中,對每一個數據元素的訪問視作一個數據流,將訪問記錄按時間來劃分為若干段,數據流中的每個數據即各個時間段內,該對象被訪問的次數,將其表示為 Visit[a][t],其中Visit[a][0]是數據a距離當前最遠的一條訪問記錄,Visit[a][t-1]為當前訪問記錄。令 k為熱度衰減常數,取值范圍為k∈[0,1],典型值如10-3、10-2。
數據a在時間片t之后的熱度評分計算式為:
Visit[a][t]=Score[a][t-1]*k + Visit[a][t] (2)其中,k值越大,歷史訪問對當前熱度評分的影響越顯著,反之則越不顯著。數據熱度的評分越高,則表示該對象被訪問得越頻繁。數據流中的元素權重取決于其離當前時間的遠近,流中越早的元素權重越小。與此相比,在LRU算法中,對一個大小為 n的固定大小的窗口內的元素進行加權求和時,會對最近 n個元素都賦予權重1,而對所有更早的元素賦予權重0。兩者區別如圖5所示。

圖5 多級熱度的緩存替換技術與LRU對比
在多級緩存的分布式塊存儲環境中,熱度閾值見表2,熱度分級與存儲系統的緩存層數有直接關系。熱度閾值與存儲系統中各緩存層的容量有直接關系,可按照經驗值設置。

表2 熱度閾值
這樣一來,就可以將數據元素的當前熱度與熱度閾值進行比對,確定數據元素所屬的熱度級別,若新舊級別不相同則將數據元素遷移到對應的存儲器件中。
若出現某熱度的存儲器件容量在警戒閾值之上,則調整熱度閾值。警戒閾值為可設經驗值,典型值為 95%,目的在于在容量滿之前及時調整閾值,提前遷移數據,避免出現因容量已滿而導致新換入數據失敗的情況。緩存容量達到警戒值說明熱度閾值表設置不當,需對其進行調整。調整的方法包括:將該熱度閾值的范圍下界調低或上界調高。
與現有技術相比,本項技術在分布式塊存儲系統執行前端任務時,熱度判斷的主體全面、熱度判斷準確率高、充分發揮了硬件性能,從而以一種公平的方式對待前端任務對緩存資源的競爭。
在本節中,不但針對優化前后的任務調度技術和緩存替換技術分別進行了對比測試,而且在實際的分布式業務場景中對整體服務質量進行了實際測試和對比,包括存儲服務效率和穩定性。為保證實驗結果可靠,每組實驗重復10次,去掉最大和最小的2個值后取平均值。
在本測試中:前端業務請求為4 KB隨機寫,I/O深度 64;后端業務請求為數據重分布,遷移量約22 GB。優化前采用靜態限速的技術,優化后采用本文自適應的任務調度技術。
如圖 6(a)及圖 6(b)所示,在優化前,當后端任務來臨時,前端任務的IOPS和時延受到顯著的干擾;在優化后,后端業務盡量少地參與資源競爭,前端任務的IOPS和時延與無后端任務的執行結果十分接近。與優化前相比,本文的調度技術在IOPS上提升38%,在時延上降低39%,達到了優先滿足前端任務的目標。如圖 6(c)所示,與優化前相比,優化后的技術在前端業務繁忙時,后端業務的執行時間優化后顯著拉長,避免參與資源競爭。在前端業務空閑時,后端業務能做到全速完成。達到了優先滿足前端任務的目標。

圖6 任務調度測試結果
為了體現緩存的效果,采用隨機讀寫來測試,主要由兩個指標來衡量:4 KB粒度的隨機讀寫下的IOPS以及1 MB粒度的隨機讀寫下的吞吐量。另測試了真實工作負載產生的I/O trace情況下的系統I/O性能。優化前采用ARC算法,優化后采用本文提出的緩存替換算法,SSD緩存大小為40 GB。
隨機負載時的測試結果如圖7所示,4 KB隨機讀寫的 IOPS分別提升 68%、69%,播放真實trace時測試結果見表 8,4種 trace提升 11%~59%,平均提升35%。
采用商用云計算的真實業務場景——國內某通信運營商西南區數據中心進行測試。該測試案例包括3個前端應用,分別為視頻播放、云桌面辦公、大型游戲,2個后端任務,分別為熱點數據遷移、數據庫負載均衡。在測試案例進行到22 s時觸發后端業務,從而體現突發性的資源競爭對于前端業務的穩定性影響。在運行相同測試程序時,對比優化前和優化后的ZTE-DBSS在存儲服務質量上的表現。存儲服務效率的評價指標為:在前后端業務同時執行期間,前端業務的持續穩定的 IOPS平均值。存儲服務穩定性的評價指標為:突發性的資源競爭對于前端業務IOPS的影響程度。

圖7 緩存替換測試結果

圖8 存儲服務質量的整體測試結果——優化前后各業務IOPS
如圖8所示,優化前,盡管各前端業務對性能的需求不同,但前端業務受到相同的限速,對性能需求較小的3號業務與性能需求較大的1號業務的IOPS接近,這是十分不合理的;在后端業務對資源競爭時,前端業務的 I/O波動較大,且前后端受到相同的限速,本應為前端業務讓路的后端業務與各前端任務無差別地共享資源,這同樣是不合理的。優化后,雖然前后端業務性能總需求超過了存儲資源的總體 I/O服務能力,但所有的應用都按照一定比例進行分享,該種結果對于各業務而言是公平的;在后端業務對資源競爭時,前端業務的IOPS波動較小,后端業務盡量少干擾。優化前后的對比結論:從服務效率來看,在后端業務競爭資源時,優化前的前端業務平均IOPS僅為 400,而優化后達到平均710,因此前端業務服務效率平均提升77.81%;從服務穩定性來看,在后端業務競爭資源時,優化前的前端業務IOPS下降率平均高達63.31%,而優化后僅平均下降 5.98%,因此前端業務穩定性平均提升57.33%。
如圖9所示,在相同的測試環境、測試用例下,本文測試了cephv10.2.z在服務質量上的表現。可以看到,Ceph與優化前的ZTE-DBSS表現相近,前端業務性能不佳,且在受到后端業務干擾時前端業務性能平均下降達到 56%。優化后的ZTE-DBSS的性能明顯高于Ceph,受到前端業務干擾明顯小于Ceph。

圖9 與Ceph對比存儲服務質量
本文針對現有的分布式塊存儲系統對服務質量的控制與支持不足的缺陷,提出一種自適應的任務調度技術,解決了前后端任務的資源平衡問題,與靜態限速技術相比性能提升 38%。提出一種多級熱度的緩存替換技術,解決了前端任務間的資源平衡問題,與ARC算法相比性能提升 35%。并在中興分布式塊存儲系統中進行了工程實現和商用測試。測試結果表明,在典型的云計算應用場景中,相較于優化前,存儲服務效率平均提升 77.81%,存儲服務穩定性平均提升 57.33%。ZTE-DBSS滿足了用戶對分布式塊存儲服務質量的期望,滿足了對云計算產品的核心期望。
本文提出的任務調度技術和緩存替換技術均是在系統正常情況下的服務質量控制手段,然而,在異常情況下的服務質量是下一階段重點關注的內容,如壞盤預測、新型糾刪碼等內容。壞盤預測是一種運用人工智能的技術手段,對存儲器件的健康狀況進行預測,從而能夠在系統空閑時提前遷移數據,避免突發性的異常壞盤導致的服務質量降級。糾刪碼是一種數據可靠性保障技術,在數據故障發生后,通過一定的算法能夠將丟失的數據找回,但是會引起大量的計算開銷,嚴重影響存儲服務質量,迫切地需要提出新型糾刪碼算法,在保障可靠性的前提下降低計算量。
參考文獻:
[1] 孫健, 賈曉菁.Google云計算平臺的技術架構及對其成本的影響研究[J].電信科學, 2010, 26(1): 38-44.SUN J, JIA X J.A study of the influence of technical architecture on the total cost of google cloud computing platform[J].Telecommunications Science, 2010, 26(1): 38-44.
[2] 李丹, 劉方明, 郭得科, 等.軟件定義的云數據中心網絡基礎理論與關鍵技術[J].電信科學, 2014, 30(6): 48-59.LI D, LIU F M, GUO D K, et al.Fundamental theory and key technology of software defined cloud data center network [J].Telecommunications Science, 2014, 30(6): 48-59.
[3] 樊自甫, 伍春玲, 王金紅.基于SDN架構的數據中心網絡路由算法需求分析[J].電信科學, 2015, 31(2): 42-51.FAN Z F, WU C L, WANG J H.Requirements analysis of data center network routing algorithm based on SDN architecture [J].Telecommunications Science, 2015, 31(2): 42-51.
[4] 孫振正, 龔靖, 段勇, 等.面向下一代數據中心的軟件定義存儲技術研究[J].電信科學, 2014, 30(1): 39-43.SUN Z Z, GONG J, DUAN Y, et al.Research on software defined storage technology for the next-generation data center[J].Telecommunications Science, 2014, 30(1): 39-43.
[5] 楊洪章, 羅圣美, 施景超,等.面向移動通信大數據的云存儲系統優化[J].計算機應用, 2017, 37(a01): 27-33.YANG H Z, LUO S M, SHI J C, et al.Cloud storage system optimizations for telecom big data[J].Journal of Computer Applications, 2017, 37(a01): 27-33.
[6] 張泉.面向云數據中心的存儲服務質量技術研究[D].武漢:華中科技大學, 2014.ZHANG Q.Research on storage quality of service for cloud data centers[D].Wuhan: Huazhong University of Science and Technology, 2014
[7] 賈博文,張文軍,李小勇.面向虛擬機的分布式塊存儲系統設計及實現[J].微型電腦應用, 2015(3): 32-37.JIA B W, ZHANG W J, LI X Y.Design and implementation of a distributed block storage system for virtual machines in the IaaS cloud[J].Microcomputer Applications, 2015(3): 32-37.
[8] WEIL S A, BRANDT S A, MILLER E L, et al.Ceph: a scalable,high-performance distributed file system[C]//The 7th symposium on Operating systems design and implementation, No-vember 6-8, 2006, Seattle, Washington.[S.l.]: USENIX Association, 2006: 307-320.
[9] NA W W, MENG X X, SI C, et al.A novel network RAID architecture with out-of-band virtualization and redundant management[C]//The 14th IEEE International Conference on Parallel and Distributed Systems, December 8-10, 2008, Melbourne,Victoria, Australia.[S.l.:s.n.], 2008: 105-112.
[10] DIKAIAKOS M D, KATSAROS D, MEHRA P, et al.Cloud Computing: distributed internet computing for IT and scientific research[J].IEEE Internet Computing, 2009, 13(5):10-13.
[11] 馮盼盼, 盧明樊.一種分布式塊存儲系統及其存儲質量控制方法及裝置: CN201510544239.X [P].2015-08-28.FENG P P, LU M F.A distributed block storage system and its storage quality control method and device: CN201510544239.X[P].2015-08-28.
[12] HUANG L.Stonehenge: a high-performance virtualized IP storage cluster with QoS guarantees[M].New York: ACM Press,2003.
[13] 劉飛, 蔣德鈞, 張歡, 等.異構存儲感知的 Ceph存儲系統數據放置方法[J].計算機科學, 2017, 44(6): 17-22.LIU F, JIANG D J, ZHANG H, et al.Heterogeneous storage aware data placement of ceph storage system computer science[J].Computer Science, 2017, 44(6):17-22.
[14] LEE D, CHOI J, KIM J H, et al.LRFU: a spectrum of policies that subsumes the least recently used and least frequently used policies[J].IEEE Transactions on Computers, 2001, 50(12): 1352-1361.
[15] JIANG S, ZHANG X.LIRS: an efficient low inter-reference recency set replacement policy to improve buffer cache performance[J].ACM SIGMETRICS Performance Evaluation Review,2002, 30(1): 31-42.
[16] MEGIDDO N, MODHA D S.ARC: a self-tuning, low overhead replacement cache[C]// The 2003 USENIX Conference on File and Storage Technologies, March 31 - April 2, 2003, San Francisco,California, USA.[S.l.]: USENIX Association, 2003: 9.
[17] 顧榮.大數據分布式存儲技術與系統研究[D].南京: 南京大學,2016.GU R.Research on techniques and systems for big data processing[D].Nanjing: Nanjing University, 2016.
[18] 屠要峰.高性能、高可靠中興超融合架構關鍵技術解析[J].通信世界, 2017(9): 55-56 TU Y F.Key technical analysis of high performance and high reliability ZTE hyper-convergence architecture[J].Communica tions World, 2017(9): 55-56