王東臨論分布式存儲(chǔ)及系統(tǒng)指標(biāo)_第1頁(yè)
王東臨論分布式存儲(chǔ)及系統(tǒng)指標(biāo)_第2頁(yè)
王東臨論分布式存儲(chǔ)及系統(tǒng)指標(biāo)_第3頁(yè)
王東臨論分布式存儲(chǔ)及系統(tǒng)指標(biāo)_第4頁(yè)
王東臨論分布式存儲(chǔ)及系統(tǒng)指標(biāo)_第5頁(yè)
已閱讀5頁(yè),還剩6頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、王東臨論分布式存儲(chǔ)及系統(tǒng)指標(biāo)存儲(chǔ)是IT核心技術(shù)眾所周知,美國(guó)是IT技術(shù)執(zhí)牛耳者,幾乎壟斷了 IT業(yè)。近些年,中國(guó)在IT 應(yīng)用技術(shù)逐漸趕超美國(guó),甚至在移動(dòng)支付等個(gè)別領(lǐng)域已經(jīng)反超美國(guó)。但是 IT核 心技術(shù)仍然被國(guó)際巨頭把持,其中IT基礎(chǔ)架構(gòu)技術(shù)是最重要的IT核心技術(shù)。IT基礎(chǔ)架構(gòu)技術(shù)為應(yīng)用層提供存儲(chǔ)能力和計(jì)算能力,包括存儲(chǔ)、計(jì)算、網(wǎng)絡(luò) 三大件。存儲(chǔ)技術(shù)是其中重要組成部分,甚至很多存儲(chǔ)從業(yè)人士認(rèn)為,存儲(chǔ)比計(jì) 算和網(wǎng)絡(luò)更為重要。不管這個(gè)觀點(diǎn)是否得到認(rèn)同,存儲(chǔ)是 IT核心技術(shù)的重要組 成部分,這一點(diǎn)是無(wú)可置疑的。存儲(chǔ)產(chǎn)業(yè)長(zhǎng)期被國(guó)際巨頭所把持在桌面級(jí)存儲(chǔ)時(shí)代,中國(guó)是全軍覆沒(méi)。當(dāng)年興起的眾多硬盤(pán)廠家,全部倒

2、閉。 FAT等流行的桌面文件系統(tǒng),也全都是美國(guó)廠商的。在企業(yè)級(jí)存儲(chǔ)時(shí)代,Dell/EMC、NetApp、舊M、HPE HD野美日巨頭處于一 流水平,把持著產(chǎn)業(yè),中國(guó)的華為存儲(chǔ)幾千人的團(tuán)隊(duì)奮斗十幾年,已經(jīng)達(dá)到世界二流水平,而且處于二流水平的前列,正在向世界一流水平發(fā)起沖擊, 但尚有一 定距離。即使在中國(guó)市場(chǎng),也是到了最近兩年才有一些小銀行開(kāi)始嘗試使用華為 存儲(chǔ),其它銀行的核心存儲(chǔ)是寧愿用日本的 HDS&不用華為的。在云存儲(chǔ)時(shí)代,AWS Azure和Google位于世界一流,阿里云在馬云的強(qiáng)力 推動(dòng)下成功位居世界二流水平,但阿里云雖然借助各種因素成為中國(guó)市場(chǎng)的霸主, 在全球市場(chǎng)依然難以突破

3、。最近,阿里云美國(guó)市場(chǎng)也不得不做出調(diào)整, 從面向美 國(guó)主流市場(chǎng)調(diào)整為面向做中國(guó)生意的美國(guó)企業(yè)。區(qū)塊鏈存儲(chǔ)時(shí)代雖然還在孕育中,但給中國(guó)人帶來(lái)了新的機(jī)會(huì)。抓住一個(gè)產(chǎn) 業(yè)新機(jī)會(huì),躍居世界一流水平,成為所有中國(guó)存儲(chǔ)人的期盼。分布式存儲(chǔ)分布式存儲(chǔ)是一個(gè)有歧義的名詞,在不同的行業(yè)有不同的含義。在存儲(chǔ)行業(yè),分布式存儲(chǔ)是中心化存儲(chǔ)的一種類型,指同一個(gè)機(jī)房?jī)?nèi)多個(gè)存儲(chǔ)服務(wù)器組成存儲(chǔ) 系統(tǒng),而在區(qū)塊鏈行業(yè),分布式存儲(chǔ)是跨地域的存儲(chǔ)節(jié)點(diǎn)組成的存儲(chǔ)系統(tǒng),等同于去中心化存儲(chǔ)。也有人說(shuō),分布式存儲(chǔ)包含中心化的分布式存儲(chǔ)和去中心化的 分布式存儲(chǔ),二者都可以叫分布式存儲(chǔ)。由于分布式存儲(chǔ)的概念在這兩個(gè)行業(yè)都已經(jīng)約定俗成了,要任何

4、一方改變都很難,所以較好的方式是對(duì)跨地域的存儲(chǔ)系統(tǒng)稱為去中心化存儲(chǔ),或者叫WAN儲(chǔ)(即廣域網(wǎng)存儲(chǔ)),對(duì)應(yīng)本地存儲(chǔ)網(wǎng)絡(luò)的SAN#儲(chǔ),而作為中心化存儲(chǔ)一種類 型的分布式存儲(chǔ)則稱為傳統(tǒng)分布式存儲(chǔ),這樣可以最大程度避免歧義。存儲(chǔ)的職業(yè)道德傳說(shuō)中很多武林宗師在收徒之前會(huì)要求弟子要學(xué)武藝就要先學(xué)武德。任何行業(yè)都有自己的職業(yè)道德,一個(gè)合格的前輩在帶弟子學(xué)生時(shí)一定要先闡述這個(gè)行業(yè) 的價(jià)值觀和職業(yè)道德。那存儲(chǔ)行業(yè)的職業(yè)道德是什么呢?在存儲(chǔ)行業(yè)的從業(yè)人士看來(lái),數(shù)據(jù)是有生命的,用戶將數(shù)據(jù)托付給我們,我 們就要對(duì)用戶數(shù)據(jù)的生命負(fù)責(zé)。存儲(chǔ)業(yè)務(wù)不賺錢(qián)可以不做,但只要做存儲(chǔ)就要對(duì) 數(shù)據(jù)持久性負(fù)責(zé)。這就像航空公司必須將飛行安

5、全置于最高優(yōu)先級(jí)一樣。 哪怕是飛機(jī)晚點(diǎn)、空 姐服務(wù)不好,也千萬(wàn)不能飛機(jī)掉下來(lái)。航空公司哪怕已經(jīng)嚴(yán)重虧損,只要航班還 在飛,該做的飛機(jī)養(yǎng)護(hù)就必須做,該配兩個(gè)機(jī)長(zhǎng)就一個(gè)都不能少,發(fā)現(xiàn)任何影響 飛行安全的故障寧愿賠款也不能飛??傊w行安全是最高優(yōu)先級(jí)。同樣,存儲(chǔ)產(chǎn)品、技術(shù)、服務(wù)的最高優(yōu)先級(jí)就是數(shù)據(jù)持久性,要對(duì)用戶數(shù)據(jù) 的生命負(fù)責(zé)。存儲(chǔ)系統(tǒng)指標(biāo)怎樣衡量一個(gè)存儲(chǔ)系統(tǒng)的好壞呢?以下指標(biāo)是專業(yè)人員常用的指標(biāo)。持久性(Durability)“對(duì)用戶數(shù)據(jù)的生命負(fù)責(zé)”這句話不能只停留在口頭上,要落實(shí)在行動(dòng)上。 一個(gè)存儲(chǔ)系統(tǒng),第一重要的就是要設(shè)計(jì)一套數(shù)據(jù)持久性保障性機(jī)制,使得存儲(chǔ)用戶的數(shù)據(jù)隨時(shí)處于可靠的保障之中,

6、這樣才能保證數(shù)據(jù)不丟,而不是聽(tīng)天由命。 換句話說(shuō),凡是沒(méi)有設(shè)計(jì)數(shù)據(jù)持久性保障機(jī)制的存儲(chǔ)系統(tǒng),都是還沒(méi)入門(mén)的非專業(yè)系統(tǒng)。數(shù)據(jù)持久性一般用達(dá)到多少個(gè)9表示,用如下公式計(jì)算:Durability=1-AFR其中AFR(Annual Failure Rates)是年故障率,AFR=1附,數(shù)據(jù)持久性為99% 也就是2個(gè)9; AFR=0.1°M,數(shù)據(jù)才!久性為99.9%,也就是3個(gè)9。每多1個(gè)9, 持久性增加10倍。一般桌面級(jí)存儲(chǔ)系統(tǒng)可以達(dá)到 2個(gè)9的持久性,企業(yè)級(jí)存儲(chǔ)可以達(dá)到4到7 個(gè)9的持久性,云存儲(chǔ)可以達(dá)到11個(gè)9的持久性,YTFS可以達(dá)到15個(gè)9以上 的數(shù)據(jù)持久性。IPFS由于缺乏數(shù)據(jù)持

7、久性保障機(jī)制,數(shù)據(jù)持久性還停留在聽(tīng)天 由命的階段,熱數(shù)據(jù)持久性很高,冷數(shù)據(jù)持久性等同于桌面級(jí)存儲(chǔ),總體大約在 2到3個(gè)9的樣子。安全性(Security )數(shù)據(jù)安全性的意思是數(shù)據(jù)不被人偷,即未經(jīng)授權(quán)的人員拿不到數(shù)據(jù),或者即 使拿到也只能得到數(shù)據(jù)密文,無(wú)法破譯出數(shù)據(jù)明文。對(duì)中心化存儲(chǔ)系統(tǒng)來(lái)說(shuō),安全性并不是必備特性,因?yàn)榇鎯?chǔ)系統(tǒng)完全處于其 所有者的管控之中,并且可以通過(guò)網(wǎng)絡(luò)安全措施(如防火墻)和系統(tǒng)安全措施(如 OS安全)來(lái)防止被外人偷。盡管網(wǎng)絡(luò)安全措施和系統(tǒng)安全措施不如數(shù)據(jù)安全措 施可靠,但也能滿足大多數(shù)應(yīng)用場(chǎng)景的需求, 所以存儲(chǔ)系統(tǒng)一般不考慮數(shù)據(jù)安全 機(jī)制的設(shè)計(jì),最多增加一個(gè)數(shù)據(jù)加密接口。對(duì)于

8、去中心化存儲(chǔ)系統(tǒng)來(lái)說(shuō),情況就完全不一樣了。不僅數(shù)據(jù)在公網(wǎng)上傳輸 隨時(shí)可能會(huì)被截獲,而且存儲(chǔ)節(jié)點(diǎn)極為分散,很多都是非常輕量級(jí)的邊緣節(jié)點(diǎn), 不可能對(duì)每個(gè)存儲(chǔ)節(jié)點(diǎn)采取高強(qiáng)度的網(wǎng)絡(luò)安全和系統(tǒng)安全措施。這時(shí)最好的方法 就是像BTC一樣干脆放棄網(wǎng)絡(luò)安全和系統(tǒng)安全措施,完全依靠基于密碼學(xué)的數(shù)據(jù) 安全措施。存儲(chǔ)系統(tǒng)如果沒(méi)有內(nèi)生的安全性保障機(jī)制, 依靠外在的安全產(chǎn)品,是很難做 好安全性的。最好是在系統(tǒng)原生就設(shè)計(jì)了完備的數(shù)據(jù)安全體系,可以實(shí)現(xiàn)全程加 密、無(wú)縫加密、零知識(shí)加密,并自帶完備的密鑰管理系統(tǒng),可以全程管控所存儲(chǔ) 數(shù)據(jù)的全生命周期。包括傳統(tǒng)分布式存儲(chǔ)在內(nèi)的中心化存儲(chǔ)大都沒(méi)有任何數(shù)據(jù)安全機(jī)制, 少數(shù)系 統(tǒng)有非

9、常不完備的數(shù)據(jù)安全機(jī)制,例如只有簡(jiǎn)單的加密,沒(méi)有密鑰管理系統(tǒng)。在 去中心化存儲(chǔ)系統(tǒng)中,YTFSW內(nèi)生的、完備的數(shù)據(jù)安全體系,但I(xiàn)PFS也沒(méi)有數(shù) 據(jù)安全體系??捎眯?Availability )服務(wù)可用性是一個(gè)專業(yè)術(shù)語(yǔ),學(xué)術(shù)上的定義是“在指定時(shí)間內(nèi)返回操作結(jié)果”, 通俗地說(shuō)就是不宕機(jī)。服務(wù)可用性和數(shù)據(jù)持久性是不同的指標(biāo)。打個(gè)比方來(lái)說(shuō),你去 ATM機(jī)取錢(qián), 結(jié)果說(shuō)銀行電腦故障,今天不能取錢(qián),這就是服務(wù)可用性出現(xiàn)問(wèn)題了。但如果在 這次故障之后,你在銀行賬上的錢(qián)都沒(méi)了,原本你有 10萬(wàn)元,但變成零了,那 就是數(shù)據(jù)持久性出現(xiàn)問(wèn)題了。服務(wù)可用性一般也是用多少個(gè) 9來(lái)衡量。例如,4個(gè)9 (99.99%)就是

10、每年 宕機(jī)不超過(guò)1小時(shí)。大型云服務(wù)公司的可用性一般是按照 4個(gè)9設(shè)計(jì)但是承諾3個(gè)9的SLA (Service Level Agreement,服務(wù)等級(jí)協(xié)議)。去中心化存儲(chǔ)系統(tǒng)在可用性方面 有天生的優(yōu)勢(shì),雖然沒(méi)有嚴(yán)格的測(cè)試數(shù)據(jù),但理論上來(lái)說(shuō)至少可以提高幾個(gè)數(shù)量 級(jí)。一致性(Consistency)為了保證數(shù)據(jù)持久性,數(shù)據(jù)都要做冗余存儲(chǔ)。數(shù)據(jù)一致性就是冗余的數(shù)據(jù)之 問(wèn)是一致的還是互相沖突的。典型場(chǎng)景就是在多副本冗余方案中,一個(gè)文件的多個(gè)副本是相同的還是不同的一致性對(duì)數(shù)據(jù)持久性是很重要的。如果不能保證數(shù)據(jù)一致性,當(dāng)不同副本的 數(shù)據(jù)沖突的時(shí)候,雖然其中有一個(gè)副本的數(shù)據(jù)是正確的, 但因?yàn)椴恢滥膫€(gè)是正

11、確的,存在正確數(shù)據(jù)被淘汰、錯(cuò)誤數(shù)據(jù)被保留的風(fēng)險(xiǎn),數(shù)據(jù)持久性受到威脅;如 果不淘汰不一致數(shù)據(jù),那在讀取的時(shí)候就可能讀到錯(cuò)誤的數(shù)據(jù), 而且當(dāng)存放正確 數(shù)據(jù)的介質(zhì)出現(xiàn)故障的時(shí)候,也無(wú)法從其它副本恢復(fù)數(shù)據(jù)(因?yàn)槠渌北颈4娴?是錯(cuò)誤的數(shù)據(jù))。數(shù)據(jù)一致性又可以進(jìn)一步細(xì)分為強(qiáng)一致性、 順序一致性、弱一致性、最終一 致性、會(huì)話一致性、單調(diào)讀一致性、單調(diào)寫(xiě)一致性等:強(qiáng)一致性也稱為原子一致性、線性一致性。強(qiáng)一致性可以理解為在任意時(shí)刻,所有節(jié)點(diǎn)中的文件是相同的,任何一次讀都能讀到該文件的最近一次寫(xiě)的數(shù)據(jù)。順序一致性任何一次讀都能讀到所讀文件最近一次寫(xiě)的數(shù)據(jù),系統(tǒng)的所有進(jìn)程的順序一 致,而且是合理的。即不需要和全局

12、時(shí)鐘下的順序一致,錯(cuò)的話一起錯(cuò),對(duì) 的話一起對(duì)。弱一致性未能達(dá)到強(qiáng)一致性的要求,但在一個(gè)較低要求下也能實(shí)現(xiàn)一定程度的一致性, 稱為弱一致性。最終一致性最終一致性是弱一致性的一種常見(jiàn)實(shí)現(xiàn)方式。最終一致性不保證每次寫(xiě)數(shù)據(jù) 都能馬上更新所有副本,但保證在一個(gè)特定的時(shí)間后用戶最終能夠讀取到最 新的數(shù)據(jù)。如果該文件之后不再寫(xiě)入新數(shù)據(jù),在一段時(shí)間后,各節(jié)點(diǎn)(或各 副本)問(wèn)的數(shù)據(jù)會(huì)最終達(dá)到一致?tīng)顟B(tài)。但是如果該文件不斷地寫(xiě)入新數(shù)據(jù), 則不同節(jié)點(diǎn)(副本)的數(shù)據(jù)總是在向趨同的方向變化,卻可能一直都不能達(dá) 到完全相同。會(huì)話一致性這個(gè)概念需要IT工程師才好理解。在一個(gè)存儲(chǔ)應(yīng)用訪問(wèn)存儲(chǔ)系統(tǒng)的一個(gè)會(huì)話(session ,

13、可以視為兩個(gè)系統(tǒng)之間交互的一個(gè)通道)中,可以保證讀己之 所寫(xiě)” 一致性,即一個(gè)進(jìn)程寫(xiě)一個(gè)文件后,它再讀該文件時(shí)總是能讀到最新 的數(shù)據(jù),絕不會(huì)看到舊數(shù)據(jù)。但是當(dāng)該會(huì)話終止(視為該交互通道關(guān)閉)后, 再讀該文件就需要建立新的會(huì)話,不能保證一定會(huì)讀到最新數(shù)據(jù)了。單調(diào)讀一致性如果一個(gè)存儲(chǔ)應(yīng)用已經(jīng)讀到一個(gè)文件的新數(shù)據(jù),那么同一應(yīng)用后續(xù)再讀都不會(huì)再讀到舊數(shù)據(jù)。單調(diào)寫(xiě)一致性存儲(chǔ)系統(tǒng)保證來(lái)自同一個(gè)存儲(chǔ)應(yīng)用的寫(xiě)操作在任何節(jié)點(diǎn)(或副本)都是嚴(yán)格 按照順序執(zhí)行的。一般說(shuō)來(lái),單調(diào)寫(xiě)一致性總是要保證的,否則存儲(chǔ)應(yīng)用就 非常難以使用了對(duì)象一致性這是YTFS提出的一種適用于對(duì)象存儲(chǔ)的一致性方案。在該方案中,不保證 一個(gè)對(duì)象

14、存儲(chǔ)過(guò)程中的一致性,但是可以保證一個(gè)對(duì)象存儲(chǔ)完成后的一致性。 換句話說(shuō),在寫(xiě)一個(gè)文件的過(guò)程中不保證一致性,但是寫(xiě)完文件關(guān)閉后,能 夠保證一致性。協(xié)同一致性存儲(chǔ)應(yīng)用與存儲(chǔ)系統(tǒng)協(xié)同,以取得一致性。其它的數(shù)據(jù)一致性方案對(duì)存儲(chǔ)應(yīng) 用來(lái)說(shuō)都是一個(gè)黑洞,存儲(chǔ)應(yīng)用只能去了解存儲(chǔ)系統(tǒng)的數(shù)據(jù)一致性方案,然 后去猜測(cè)在什么情況下可以實(shí)現(xiàn)數(shù)據(jù)一致性。YTFS提出一種協(xié)同一致性方案,讓存儲(chǔ)應(yīng)用可以感知底層的數(shù)據(jù)一致性狀態(tài),例如什么時(shí)候完成寫(xiě)確認(rèn), 什么時(shí)候完成讀一致性,這些狀態(tài)都可以被存儲(chǔ)應(yīng)用感知到,從而無(wú)需猜測(cè) 就能明確地知道是否可以獲得一致性結(jié)果,在此之前讀出的數(shù)據(jù)是不確定 的,??吹竭@里,很多人可能會(huì)問(wèn):難道往

15、一個(gè)文件寫(xiě)了數(shù)據(jù)后,馬上再讀能讀到 新數(shù)據(jù)不是理所當(dāng)然的嗎?這個(gè)要求確實(shí)很合理, 但存儲(chǔ)系統(tǒng)尤其是分布式存儲(chǔ) 是非常復(fù)雜的,做到這一點(diǎn)其實(shí)很不容易,或者說(shuō)代價(jià)很高(很高成本或者性能 很低)。因此在很多應(yīng)用場(chǎng)景下,都盡量將一致性的要求降低到能夠滿足該應(yīng)用 需求的最低程度,從而可以用更低的成本或更高的性能來(lái)完成存儲(chǔ)操作。一個(gè)典型的例子是修改微信好友的備注時(shí),有時(shí)會(huì)發(fā)現(xiàn)操作完成后該微信好友的備注并 沒(méi)有修改,這就是因?yàn)樾薷牟僮靼l(fā)給了一個(gè)節(jié)點(diǎn), 但操作完成后再讀該好友信息 時(shí)是從另一個(gè)節(jié)點(diǎn)讀的,這兩個(gè)節(jié)點(diǎn)的數(shù)據(jù)在新數(shù)據(jù)剛更新的一瞬間是不一致的。 這就能看出來(lái)微信對(duì)修改好友備注操作沒(méi)有采取強(qiáng)一致性的方案

16、,而是采取了最終一致性的方案。也就是說(shuō),微信認(rèn)為最終一致性對(duì)這個(gè)場(chǎng)景是可以滿足要求的, 偶爾出現(xiàn)點(diǎn)更新滯后是可以被用戶所忍受的。不需要為之付出強(qiáng)一致性的代價(jià)。延時(shí)(Latency)延時(shí)又稱時(shí)延、延遲,是指一次讀寫(xiě)花費(fèi)的時(shí)間,是一個(gè)重要的存儲(chǔ)性能指 標(biāo)。如果將讀寫(xiě)操作的性能比作北京到天津的運(yùn)輸性能, 那延時(shí)就相當(dāng)于從北京 到天津運(yùn)輸所需要花費(fèi)的時(shí)間,如果是高鐵需要大約半小時(shí),如果是高速公路大 約是2小時(shí)。一般硬盤(pán)操作的延時(shí)是毫秒級(jí)別的,SS皿讀操作幾十微秒、寫(xiě)操作幾十到 幾百微秒。分布式存儲(chǔ)由于有網(wǎng)絡(luò)延時(shí),延時(shí)指標(biāo)一般會(huì)差一些,在毫秒左右, 但SurFS由于采用了分布式共享架構(gòu),可以達(dá)到幾十微秒

17、量級(jí)。去中心化存儲(chǔ)由 于網(wǎng)絡(luò)延時(shí)更高,所以延時(shí)指標(biāo)會(huì)更差,大約在幾百毫秒量級(jí),這也是中心化存 儲(chǔ)系統(tǒng)唯一能確保勝過(guò)YTFS去中心化存儲(chǔ)系統(tǒng)的技術(shù)指標(biāo)。吞吐量(Bandwidth)吞吐量又稱帶寬,是指平均每秒讀寫(xiě)的數(shù)據(jù)量。在同樣的延時(shí)指標(biāo)下,增加 并發(fā)可以提高吞吐量。在如上的比方中,吞吐量就是每小時(shí)能從北京運(yùn)送多少人 到天津去,在同樣的車速下,增加更多的車道可以運(yùn)送更多的人。去中心化存儲(chǔ)系統(tǒng)雖然延時(shí)指標(biāo)較差, 但由于可以增加更多的并發(fā),因此吞 吐量可以做到與中心化存儲(chǔ)系統(tǒng)相當(dāng)?shù)某潭?。IOPSIOPS是IO Per Second的縮寫(xiě),即每秒執(zhí)行讀寫(xiě)操作的數(shù)量,又可以進(jìn)一 步細(xì)分為順序讀IOPS,

18、順序?qū)慖OPS,隨機(jī)讀IOPS,隨機(jī)寫(xiě)IOPS等指標(biāo),常見(jiàn) 的有4K隨機(jī)讀IOPS 4K隨機(jī)寫(xiě)IOPS 64K順序讀IOPS 64K順序?qū)慖OPS指標(biāo)。4K隨機(jī)讀是一次讀寫(xiě)4K字節(jié),讀地址是隨機(jī)的。對(duì)硬盤(pán)來(lái)說(shuō),一個(gè)盤(pán)片是 按磁道讀寫(xiě)的,讀寫(xiě)速度與硬盤(pán)轉(zhuǎn)速有關(guān),但尋道(即磁頭更換磁道)速度就會(huì) 慢很多,隨機(jī)讀寫(xiě)會(huì)導(dǎo)致隨機(jī)尋址,讀寫(xiě)性能會(huì)大幅度下降。順序讀寫(xiě)就基本上 不存在這個(gè)問(wèn)題,所以二者分別反映了不同場(chǎng)景下的性能。對(duì)于SS冰說(shuō),雖然閃存顆粒本身就是隨機(jī)尋址的,但緩存是順序讀寫(xiě)友好 的,而且顆粒的擦除也是順序的(連續(xù)多個(gè)Page一起擦除),所以也是順序讀寫(xiě) 性能更好些。專業(yè)測(cè)試還會(huì)測(cè)試讀寫(xiě)混合(

19、例如 50%1 50%、70%1 30%)以及其它更 多的細(xì)分指標(biāo)。IOPS和吞吐量是有直接關(guān)系的。IOPS乘以每次讀寫(xiě)的數(shù)據(jù)塊大小就等于吞 吐量。增加IOPS最簡(jiǎn)單有效的方法也是增加并發(fā)。 例如SSD勺IOPS可以比硬盤(pán) 高幾千倍,但SSD的延時(shí)可能只提高了幾十倍,但因?yàn)镾SDT以多個(gè)顆粒同時(shí)并 發(fā)讀寫(xiě),所以IOPS就可以很高。去重(Deduplication )簡(jiǎn)稱Dedup,又稱重刪(“重復(fù)數(shù)據(jù)刪除”的簡(jiǎn)稱),指重復(fù)數(shù)據(jù)占用相同存 儲(chǔ)空間,從而可以大大節(jié)約數(shù)據(jù)存儲(chǔ)所需的物理空間。去重率是去重前的數(shù)據(jù)總量除以去重后的數(shù)據(jù)總量的比率,與用戶數(shù)有直接的關(guān)系。單用戶的重復(fù)率是不高的,用戶數(shù)越多,

20、重復(fù)文件就會(huì)越多,去重率就 會(huì)越高。去重率與應(yīng)用場(chǎng)景也有較大關(guān)系,例如災(zāi)備系統(tǒng)的去重率就會(huì)很高。一個(gè)中型的云盤(pán)系統(tǒng)的去重率大約在 3倍左右,一個(gè)大型的云盤(pán)系統(tǒng)的去重 率大約在5倍左右,一個(gè)典型的企業(yè)備份軟件的去重率大約在 4倍左右。去重需要消耗一定的性能,但是當(dāng)遇到重復(fù)文件時(shí)可以不用再存儲(chǔ), 只需要 修改相關(guān)元數(shù)據(jù)即可,因此在正常去重率下反而應(yīng)該提高存儲(chǔ)性能。明文去重是很多高端存儲(chǔ)都有的常規(guī)功能,但密文去重是只有YTFS才有的專利技術(shù)。并發(fā)能力(Concurrency )并發(fā)能力指可以同時(shí)響應(yīng)多少個(gè)訪問(wèn)請(qǐng)求的能力對(duì)桌面級(jí)存儲(chǔ)來(lái)說(shuō),對(duì)并發(fā)要求不高,一般也就是同一個(gè)操作系統(tǒng)下多個(gè)進(jìn) 程可能會(huì)同時(shí)讀

21、寫(xiě)硬盤(pán),但由于一個(gè)用戶同時(shí)使用的應(yīng)用極為有限, 除非遇到磁 盤(pán)碎片整理這樣的持續(xù)大量占用硬盤(pán) I/O操作的應(yīng)用會(huì)讓其它應(yīng)用的I/O變得 非常慢,一般情況下這樣的并發(fā)對(duì)用戶是沒(méi)有感知的,也比較好處理。但對(duì)服務(wù)器來(lái)說(shuō),由于要同時(shí)服務(wù)于多個(gè)客戶端,并發(fā)就成為一個(gè)基本的要 求,高并發(fā)也成為每一個(gè)架構(gòu)師的追求。 無(wú)論是企業(yè)級(jí)存儲(chǔ)還是云存儲(chǔ),高并發(fā) 都是必不可少的。對(duì)去中心化存儲(chǔ)來(lái)說(shuō),由于數(shù)據(jù)節(jié)點(diǎn)眾多,高并發(fā)相對(duì)來(lái)說(shuō)更 容易實(shí)現(xiàn)。設(shè)計(jì)和工程實(shí)現(xiàn)上的缺陷在并發(fā)負(fù)載上來(lái)后很容易暴露出來(lái),一秒鐘幾個(gè) I/O請(qǐng)求,與一秒鐘百萬(wàn)個(gè)I/O請(qǐng)求對(duì)存儲(chǔ)系統(tǒng)的負(fù)載能力要求是天壤之別的, 并發(fā)能力成為衡量架構(gòu)師能力的重要尺子

22、。例如同樣是去中心化存儲(chǔ),IPFS的單節(jié)點(diǎn)并發(fā)大約在2個(gè)左右,YTFS則是100左右,有了非常明顯的提升。為了防止并發(fā)訪問(wèn)同時(shí)寫(xiě)同一個(gè)數(shù)據(jù)產(chǎn)生混亂, 需要有并發(fā)鎖機(jī)制,一個(gè)人 寫(xiě)的時(shí)候不能另外的人同時(shí)寫(xiě)。鎖機(jī)制屬于非常復(fù)雜、專業(yè)的純技術(shù)領(lǐng)域,超出 本文的范疇了。分區(qū)可容忍性(Partition Tolerance )分區(qū)可容忍性就是存儲(chǔ)系統(tǒng)因故障分成多個(gè)區(qū)后整個(gè)系統(tǒng)依然可用。分布式存儲(chǔ)是由多個(gè)存儲(chǔ)節(jié)點(diǎn)組成的,這些節(jié)點(diǎn)之間一旦網(wǎng)絡(luò)連接斷掉了,對(duì)系統(tǒng)可用性就會(huì)構(gòu)成嚴(yán)重的威脅,因?yàn)榇藭r(shí)節(jié)點(diǎn)之間就無(wú)法進(jìn)行數(shù)據(jù)同步了,如果繼續(xù)提供存儲(chǔ)服務(wù)的話數(shù)據(jù)一致性就無(wú)法保障了。所以,分布式存儲(chǔ)存在一個(gè)經(jīng)典的 CAP

23、S論,即數(shù)據(jù)一致性(Consistency )、服務(wù)可用性(Availability )和分區(qū) 可容忍性(Partition tolerance )不可能同時(shí)滿足。CAP三者如何選擇,就成了 不同分布式存儲(chǔ)系統(tǒng)設(shè)計(jì)的差異之一。CAP®論看似正確無(wú)比,但其實(shí)有一些隱含的假設(shè),例如假設(shè)數(shù)據(jù)是以多副 本方式存儲(chǔ),而且每個(gè)節(jié)點(diǎn)的存儲(chǔ)池都是獨(dú)立的,附屬于存儲(chǔ)節(jié)點(diǎn)的。但某些分布式存儲(chǔ)系統(tǒng)采用了更有創(chuàng)造性的存儲(chǔ)架構(gòu),例如SurFS的分布式共享存儲(chǔ)架構(gòu)是后端存儲(chǔ)池是共享的,數(shù)據(jù)是用冗余編碼方式做冗余的,這樣數(shù)據(jù)一致性和分 區(qū)可容忍性就會(huì)有極大的改觀。在 YTFS去中心化存儲(chǔ)系統(tǒng)中,同樣是用冗余編 碼

24、的方式來(lái)保證數(shù)據(jù)一致性,而且節(jié)點(diǎn)之間是通過(guò)互聯(lián)網(wǎng)傳輸,天然抗分區(qū)風(fēng)險(xiǎn), 這也會(huì)改變傳統(tǒng)的CAP!論。容災(zāi),性(Disaster Tolerance )一旦出現(xiàn)地震、火災(zāi)、停電、斷網(wǎng)、雷電、盜竊、恐怖襲擊、天津大爆炸等 災(zāi)難性事件。整個(gè)地域的設(shè)備全部毀滅(而不只是個(gè)別零部件故障),是否還能不丟失數(shù)據(jù),是否還能正常提供存儲(chǔ)服務(wù)?容災(zāi)性通常用“兩地三中心”方式來(lái)滿足,即在生產(chǎn)系統(tǒng)本地建一個(gè)本地災(zāi) 備數(shù)據(jù)中心,在異地也建一個(gè)災(zāi)備數(shù)據(jù)中心。本地災(zāi)備中心主要是用于防范生產(chǎn) 服務(wù)器發(fā)生的故障,異地災(zāi)備中心用于防范大規(guī)模區(qū)域性災(zāi)難。 本地災(zāi)備中心與 生產(chǎn)中心可通過(guò)高速局域網(wǎng)進(jìn)行連接,因此數(shù)據(jù)復(fù)制和應(yīng)用切換比較

25、容易實(shí)現(xiàn), 可實(shí)現(xiàn)生產(chǎn)與災(zāi)備服務(wù)器之間數(shù)據(jù)的實(shí)時(shí)復(fù)制和應(yīng)用的快速切換。異地災(zāi)備中心與生產(chǎn)中心不僅連接的網(wǎng)絡(luò)線路帶寬和質(zhì)量存在一定的限制,而且存在一定的網(wǎng)絡(luò)延時(shí)(光纖傳輸大約1毫秒200公里),應(yīng)用系統(tǒng)的切換也需要一定的時(shí)間, 因此異地災(zāi)備中心可以實(shí)現(xiàn)在業(yè)務(wù)限定的時(shí)間內(nèi)進(jìn)行恢復(fù)和可容忍丟失范圍內(nèi) 的數(shù)據(jù)恢復(fù)。“兩地三中心”是實(shí)踐中總結(jié)出來(lái)的具有一種非常好容災(zāi)性的模式, 但該模 式成本非常高昂,因?yàn)樾枰ㄔO(shè)三個(gè)相等規(guī)模的數(shù)據(jù)中心, 再加上一套非常昂貴 的容災(zāi)備份軟件,以及日常的運(yùn)維、演練。即便如此,也不能做到100琳證數(shù)據(jù) 可完全恢復(fù),即RPOf口 RTCM以花很高的代價(jià)接近于零,但不能等于零。RPO1指災(zāi)難發(fā)生后可以將數(shù)據(jù)恢復(fù)到災(zāi)難發(fā)生前多長(zhǎng)時(shí)間,RTC®指災(zāi)難發(fā)生后多長(zhǎng)時(shí)間可以恢復(fù)服務(wù),也就是說(shuō)災(zāi)難導(dǎo)致業(yè)務(wù)停頓的時(shí)間。 例如,如果 RPOt 10秒鐘,RTOt 1分鐘,則當(dāng)災(zāi)難發(fā)生后,業(yè)務(wù)將會(huì)停頓 1分鐘時(shí)間,1 分鐘后災(zāi)備系統(tǒng)啟動(dòng),恢復(fù)服務(wù),但最近 10秒鐘的數(shù)據(jù)會(huì)丟失,可以將系統(tǒng)恢 復(fù)到災(zāi)難發(fā)生前10秒鐘時(shí)的狀態(tài)。去中心化存儲(chǔ)系統(tǒng)具有天然的容災(zāi)性,可以在存儲(chǔ)層面實(shí)現(xiàn)RTOW RPO勻?yàn)?零的極致目標(biāo),即出現(xiàn)任何災(zāi)難都不會(huì)停止存儲(chǔ)服務(wù), 而且已經(jīng)完

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論