1. 程式人生 > 其它 >10倍!BoostKit鯤鵬全域性快取3大創新技術助力Ceph效能提升

10倍!BoostKit鯤鵬全域性快取3大創新技術助力Ceph效能提升

摘要:本文從四個方面闡述了BoostKit鯤鵬全域性快取技術,該技術針對Ceph開源儲存方案存在的痛點,採用三大創新技術,有效的提高了Ceph的效能,最高可以將Ceph效能提升10倍。

本文分享自華為雲社群《【雲駐共創】BoostKit鯤鵬全域性快取技術助力Ceph效能提升10倍,真香》,作者:碼農飛哥。

1. 儲存行業特點及挑戰

有統計資料顯示,企業應用每增加100ms儲存時延會造成1%的銷售損失。如下圖所示:

從21年到23年,關鍵業務的佔比從25%增加到60%,資料庫等中高負載業務從45%減少到15%,一般業務從 30%減少到25%。

對於關鍵業務一般使用的儲存型別是 增強型\極速SSD雲硬碟(全快閃記憶體),這種方式主要的痛點是 要求極致時延和IOPS SSD使用成本高。

對於資料庫等中高負載業務使用的儲存型別是超高IO雲硬碟(全快閃記憶體、均衡型SAS),這種方式的主要痛點是對價效比降低時延。

對於一般業務使用的是高IO雲硬碟(均衡型SATA)

1.1.Ceph開源儲存方案面臨的效能挑戰

Ceph開源儲存方案面臨的效能挑戰主要是:IOPS效能低,IO時延高。而造成這種情況的原因主要有如下三個方面:

  1. IO請求流程多,執行緒切換開銷大
  2. IO處理流程長,佇列等待多,端到端時延高。
  3. IO隨機性大,磁碟頻寬利用率低。

IO的寫入流程是:

  1. Message 接受入隊
  2. 三副本資料處理
  3. 資料持久化
  4. 元資料持久化
  5. 資源釋放,響應完成。

我們可以看到一個完整的IO寫入流程包括了5大流程,流程真的很長。
那麼BoostKit鯤鵬全域性快取技術又是如何應對這些挑戰的呢?

2. 全域性快取創新與價值

BoostKit鯤鵬全域性快取技術主要有三大創新技術,通過三大創新技術可以實現儲存效能飛躍式提升。

  1. 快取前後臺分離,縮短IO路徑
  2. IO聚合,實現磁碟頻寬效能
  3. 智慧預取,提高讀快取命中率。
    下面我分別就這三大創新技術進行一個簡要的說明。

2.1. 快取前後臺分離,縮短IO路徑

  1. 在計算側(前臺)重定向到全域性快取,讀寫IO請求直接在快取中命中並實時反饋給上層應用。
  2. 全域性快取的IO資料非同步下刷到後端儲存側(後臺)或提前預取資料到全域性快取
    其實現流程如下圖所示:

從圖中可以看出讀IO和寫IO都是在全域性快取中實現的。
寫IO首先將資料寫入快取中,然後非同步下刷到磁碟中。
非同步IO批量預取提前命中,非同步資料預取,讀IO直接從快取中取資料。
這樣做的好處就是 提高了非同步刷盤速率,保證寫快取100%命中,降低寫時延。
提高預取準確率,加大快取容量,保證讀快取80%命中,降低讀時延。
如下圖所示:展示了快取前後臺的具體實現。

  1. 流程解耦:寫快取刷盤,讀快取淘汰無需互斥,可靈活控制各自水位。
  2. 資源解耦:讀寫快取併發,Quota資源等解耦,避免相互影響。
  3. 介質型別解耦:讀寫快取可分為管理異構快取介質(RAM,NVMeSSD),實現介質分離。
  4. 冗餘策略優化:讀cache使用單副本,提高cache空間利用率,寫cache使用三副本,保證資料可靠性。

2.2. IO聚合,實現磁碟頻寬效能

  1. IO聚合:通過聚合演算法,回寫策略和垃圾回收等能力,實現隨機寫小IO聚合成順序寫大IO,實現磁碟頻寬的利用率,使效能得到大幅提升。
  2. 按需讀取:從元資料中獲取小IO對映關係,下盤讀取小IO資料,無讀放大。
  3. 通過高效的索引演算法和資料排列,僅提高有效資料塊,並和新寫入的資料進行IO聚合,減少IO開銷和降低垃圾對業務的影響。

具體實現如下圖所示:

2.3. 智慧預取,提高讀快取命中率

基於創新的負載識別演算法,識別不同應用訪問Pattern(如流式、關聯、熱點等),並通過歸一化特徵模型制定最優引數(預取門限,長度等),實現80%以上快取命中率和2倍+讀效能提升。

如下圖所示:展示了智慧預取分離技術架構:

這裡主要有兩個技術

  1. 雙引擎分離:創新性的Client端推薦引擎+Server端執行引擎分離的智慧預取架構。
  2. 全域性精準推薦:推薦引擎擁有全域性資料訪問檢視,從而進行全域性精準推薦。

3. 全域性快取功能介紹

3.1. 全域性快取技術的整體架構

說完了全域性快取的創新點之後,接下來讓我們來看看全域性快取的各個核心功能。

全域性快取技術的整體架構如下圖所示:


可以用三橫+兩縱來總結全域性快取技術框架。
三橫:客戶端叢集、快取叢集、儲存叢集
兩縱:讀寫路徑分離雙驅加速的邏輯佈局。

  1. 寫快取:資料寫入、刪除功能、保證Cache前後臺寫低時延、
  2. 讀快取:資料讀取功能,資料預取和淘汰、保證高Cache命中。
  3. 元資料管理:高效能元資料管理引擎、小IO聚合、垃圾回收
  4. 叢集管理:叢集管理、執行狀態管理,故障處理框架。
  5. 持久化:資料持久化儲存,三副本資源池,介質管理。
  6. 適配層:對接開源Ceph儲存,終結Ceph語義。
  7. 基礎設施:系統啟動、記憶體管理、日誌、命令列、系統排程。

3.2. 全域性快取功能規格一覽

1. 高效能

支援單節點 14W IOPS,1ms時延。

2. 叢集相容性

  • 提供無侵入式介面API支援主流ceph叢集接入
  • 支援塊儲存服務,物件儲存服務
  • 支援快照及克隆功能
  • 支援鯤鵬平臺硬體,openEuler,RedHat系統

3. 可靠性

  • 資料持久化儲存防掉電丟失。
  • 資料三副本以節點域儲存,防止單點故障。
  • 支援叢集故障自動檢測,自動故障切換和恢復。

4. 安全性

  • 資料通道和管理通道預設支援TLS1.3 安全傳輸

5. 擴充套件性

  • 支援按需增加快取節點擴充套件快取規模
  • 支援線上升級
  • 資料持久化儲存防掉電丟失
  • 資料三副本以節點域儲存,防止單點故障
  • 支援叢集故障自動檢測,自動故障切換和恢復。

4. 全域性快取使用介紹

說完了那麼多BoostKit鯤鵬全域性快取技術的功能和好處,那麼如何使用BoostKit鯤鵬全域性快取呢?
首先找到使用者指南,指南地址是:https://support.huawei.com/enterprise/zh/doc/EDOC1100228002?idPath=23710424%7C251364417%7C9856629%7C253662285

按照使用者指南一步步去操作使用吧!!!!

總結

本文從四個方面闡述了BoostKit鯤鵬全域性快取技術,該技術針對Ceph開源儲存方案存在的痛點,採用三大創新技術,有效的提高了Ceph的效能,最高可以將Ceph效能提升10倍。如下圖所示:

點選關注,第一時間瞭解華為雲新鮮技術~