中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Ceph糾刪碼如何實現

發布時間:2021-12-17 10:36:26 來源:億速云 閱讀:712 作者:小新 欄目:云計算

這篇文章給大家分享的是有關Ceph糾刪碼如何實現的內容。小編覺得挺實用的,因此分享給大家做個參考,一起跟隨小編過來看看吧。

1、糾刪碼

糾刪碼Erasure Code是一種編碼技術,它可以將n份原始數據,增加m份數據,并能通過n+m份中的任意n份數據,還原為原始數據。即如果有任意小于等于m份的數據失效,仍然能通過剩下的數據還原出來。 糾刪碼技術在分布式存儲系統中的應用主要有三類,陣列糾刪碼(Array Code: RAID5、RAID6等)、RS(Reed-Solomon)里德-所羅門類糾刪碼和LDPC(LowDensity Parity Check Code)低密度奇偶校驗糾刪碼。 LDPC碼目前主要用于通信、視頻和音頻編碼等領域。

目前主流的分布式存儲包括HDFS、Ceph、Minio等主要使用的是RS(Reed-Solomon)碼。

2、Ceph 糾刪碼實現

2.1、糾刪碼寫

數據將在主 OSD 進行編碼然后分發到相應的 OSDs 上去。

Ceph糾刪碼如何實現

2.2、糾刪碼讀

2.2.1、正常糾刪碼讀

從相應的OSDs中獲取數據后進行解碼。

Ceph糾刪碼如何實現

2.2.2、數據丟失時糾刪碼讀

如果此時有數據丟失,Ceph會自動從存放校驗碼的OSD中讀取數據進行解碼。 Ceph糾刪碼如何實現

3、Ceph支持的糾刪碼插件

Ceph支持不同的糾刪碼插件:Jerasure,ISA-l 和 LRC,默認為Jerasure

# ceph osd erasure-code-profile get default
k=2
m=1
plugin=jerasure
technique=reed_sol_van

此處列出的三種糾刪碼插件其實是分成兩種類型

Jerasure和ISA-l屬于糾刪碼代碼庫 LRC是一種糾刪碼編碼,類似于RS碼

3.1、糾刪碼代碼庫

3.1.1、Jerasure

Jerasure2.0 使用 C 語言封裝后的指令,這樣代碼更加的友好。另外 Jerasure2.0 不僅僅支持 GF(2^8) 有限域的計算,其還可以進行 GF(2^4) - GF(2^128) 之間的有限域。并且除了 RS 碼,還提供了 Cauchy Reed-Solomon code (CRS 碼)等其他編碼方法的支持。它在工業應用之外,其學術價值也非常高。目前其是使用最為廣泛的編碼庫之一。目前 Jerasure2.0 并不支持 AVX 加速。

3.1.2、ISA-l

Intel ISA-L代表英特爾智能存儲加速庫,使用的匯編代碼,ISA-L是針對存儲應用程序而優化的低級功能的開源集合。它包括針對Intel AVX和AVX2指令集優化的快速塊Reed-Solomon類型糾刪碼,它的性能是業界最佳,主要是因為整體的矩陣運算都放在匯編之中

3.1.3、對比

Ceph糾刪碼如何實現

3.2、糾刪碼編碼

3.2.1、RS(Reed-Solomon)

Reed-Solomon(RS)碼是存儲系統較為常用的一種糾刪碼,它有兩個參數n和m,記為RS(n,m)。n代表原始數據塊個數。m代表校驗塊個數。

簡單來講指定RS(4,1)時,有4個數據塊和1個校檢塊

Ceph糾刪碼如何實現

D1-4任意數據塊損壞,都可以通過P1進行解碼恢復重建,同樣的P1校檢塊損壞也可以通過數據塊編碼計算重建

3.2.2、LRC(Locally Repairable Codes)

LRC(Locally Repairable Codes),是一種局部校驗編碼方法,其核心思想為:將校驗塊(parity block)分為全局校驗塊(global parity)、局部校驗塊(local reconstruction parity),故障恢復時分組計算。

Ceph糾刪碼如何實現

對比RS,這里是4個數據塊分成了兩組,

  • D1+D2=P1

  • D3+D4=P2

  • D1+D2+D3+D4=P3

P1、P2是局部校驗塊,P3是全局校驗塊。

優勢在于,當組內數據塊損壞時,由于減少了網絡I/O傳輸的數據量,組內恢復運算的數據量和重建時間基本上能縮短一半。

劣勢是因為校檢塊的增加,磁盤使用率和可靠性都會降低

3.2.2、編碼對比

Ceph糾刪碼如何實現

感謝各位的閱讀!關于“Ceph糾刪碼如何實現”這篇文章就分享到這里了,希望以上內容可以對大家有一定的幫助,讓大家可以學到更多知識,如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

扎囊县| 弥勒县| 响水县| 上虞市| 临洮县| 淳安县| 石门县| 太白县| 大丰市| 郯城县| 崇阳县| 来安县| 临夏县| 潍坊市| 盐亭县| 滨州市| 石台县| 芦山县| 阳泉市| 盖州市| 定南县| 连州市| 措美县| 磐安县| 永康市| 新和县| 通河县| 南充市| 申扎县| 加查县| 山阳县| 乌什县| 延吉市| 闻喜县| 桦川县| 文水县| 抚顺市| 呼伦贝尔市| 阿拉尔市| 湘潭县| 寿宁县|