分布式儲存系統可靠性系列三 設計模式

2021-09-25 13:27:10 字數 2145 閱讀 1027

從上文分布式儲存系統可靠性-系統估算示例 中詳細分析了系統可靠性量化的估算手段,並且給出了示例**,**的主要輸入引數為如下所示。

loserate(s, n, repnum, t, afr)

n:系統中磁碟的數量(包括磁碟的容量資訊)

s:系統copyset的數量

repnum:儲存的備份數量

t:壞盤情況下的恢復時間

afr:磁碟的年度故障率

這裡基本可以揭示,在乙個固定大小為n的分布式儲存系統中,影響儲存可靠性的因素主要為s、repnum、t、afr。接下來我們分別從這幾個方面來分析,在分布式系統設計和運維過程中的一注意點。

針對這一特性,我們潛在能夠採取的措施包括

1 及時替換老的或者故障磁碟

在系統設計層面上需要能夠記錄每一塊硬碟的品牌、系列、上線日期等,對於經常出現壞塊和頻繁出錯的磁碟需要盡快進行,並且對於快要使用年限的磁碟進行替換下線。

2 根據smart資訊**換盤

採集磁碟的smart的資訊,分析smart資訊,對磁碟的換盤行為做**工作。

顯然副本數是影響資料可靠性的關鍵因素。這裡我們通過量化的方式來衡量副本數對可靠性的影響。

使用的系統示例分布式儲存系統可靠性-系統估算示例 。考慮副本數 ∈[3,6] 情況下的可用性,如下所示。

repnum

可靠性(年故障率)

31.14*10e-6

42.78*10e-8

53.18*10e-10

63.32*10e-12

72.33*10e-14

從上表可以看出,增加副本可以使得可靠性得到數量級上的提公升,但是成本和寫入效能上會給系統帶來一定的負擔。產品可以從資料的重要性,系統本身的workload等方面在在各方面權衡選擇系統的副本數。

單從copyset 這一因素考慮,我們基本可以確定copyset越多丟資料概率會愈大,這我們可以從分布式儲存系統可靠性-如何估算  文中 第2節「資料丟失與copyset(複製組)」 看出。

以下,我們同樣以copyset 與 丟失資料概率具體看copyset對可靠性的影響,使用系統示例同樣為分布式儲存系統可靠性-系統估算示例中的示例,隨機情況下copyset數量為s

copysetsnum

可靠性(年故障率)

s1.14*10e-6

s/25.74*10e-7

s/42.87*10e-7

s/81.43*10e-7

s/16

7.17*10e-8

從上表我們可以看到,減小copyset數量對於可靠性的影響基本是線性。

那麼如何規劃系統中copyset的數量。在隨機策略情況下,copyset的數量越多,說明乙個磁碟上的資料打得越散,那麼一塊磁碟上對應的資料的副本分布在更多的磁碟上,可以獲得更高的恢復頻寬,壞盤的恢復時間越短,從而進一步降低丟失資料的風險。但是在現實系統中,為了保障資料對外服務的頻寬能力。一般來說用於系統恢復的頻寬不會超過20%,所以t級別盤能夠在1個小時內恢復已經是非常不錯的。

比如一塊8t盤1小時恢復所需要的頻寬  8*1024/3600 ~= 2.27 gb,假設每塊磁碟能夠提供的恢復頻寬為10mb,那麼只需要 2.27*1024 /20 ~= 106 塊盤參與即可,也就是說一塊磁碟的資料只需要打散在106塊磁碟中即可,不用過於分散。在隨機放置副本情況下,我們可以控制分片大小來達到減小copyset的目的 分片大小 ~= 8*1024/106 = 77gb。 這種清下,可靠性可以提高到1.49  10e-7 。 後續我們會介紹更佳有效的控制系統copyset的方法。

單從修復時間考慮,修復時間越快,丟失概率越小。因為同時發生壞盤的概率隨著時間的縮短能夠得到非常有效的降低。這從分布式儲存系統可靠性-如何估算 中介紹壞盤服從的柏松分布中可以看到。

如下為n=7200, afr=0.04情況下;在單位時間∈[1,24] 內壞 ∈(3,6)塊盤的概率;從圖表中我們可以看到,從20小時變為2小時,時間段內損壞n塊盤(3~6)的概率都能得到3個數量級以上的提公升。

總結來說,為了提高儲存系統資料可靠性,首先在系統允許的成本範圍內選擇合適的副本數,再次在系統設計中我們首先優先考慮加快資料恢復時間,在此基礎上減小系統的copyset數量。使得在既定的成本下達到盡可能高的可靠性。

雲硬碟是網易雲提供的資料持久化服務,為雲伺服器和容器服務提供彈性塊儲存裝置。

網易雲免費體驗館,0成本體驗20+款雲產品!

分布式儲存系統可靠性系列三 設計模式

從上文分布式儲存系統可靠性 系統估算示例 中詳細分析了系統可靠性量化的估算手段,並且給出了示例 的主要輸入引數為如下所示。loserate s,n,repnum,t,afr n 系統中磁碟的數量 包括磁碟的容量資訊 s 系統copyset的數量 repnum 儲存的備份數量 t 壞盤情況下的恢復時間...

分布式儲存系統可靠性系列三 設計模式

從上文分布式儲存系統可靠性 系統估算示例 中詳細分析了系統可靠性量化的估算手段,並且給出了示例 的主要輸入引數為如下所示。loserate s,n,repnum,t,afr n 系統中磁碟的數量 包括磁碟的容量資訊 s 系統copyset的數量 repnum 儲存的備份數量 t 壞盤情況下的恢復時間...

分布式儲存系統可靠性系列二 系統估算示例

1 估算示例 上文分布式儲存系統可靠性 如何估算中,我們提供了一些基本的估算的方法。接下來我們提供乙個具體的估算的示例子。系統示例 n 7200塊磁碟的儲存系統中,r 3副本,單盤容量 disksize 8t,磁碟年平均故障率 afr 4 系統採用大多數儲存系統採用的小檔案合併成大檔案分片的方式儲存...