成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

存儲(chǔ)系統(tǒng)講解——分布式存儲(chǔ)系統(tǒng)問(wèn)題考慮

存儲(chǔ) 存儲(chǔ)軟件 分布式
分布式系統(tǒng)主要分成存儲(chǔ)模型和計(jì)算模型兩類。本文主要描述的是存儲(chǔ)模型的介紹。其中計(jì)算模型的分布式系統(tǒng)原理跟存儲(chǔ)模型類似,只是會(huì)根據(jù)自身計(jì)算特點(diǎn)加一些特殊調(diào)度邏輯進(jìn)去。

分布式系統(tǒng)主要分成存儲(chǔ)模型和計(jì)算模型兩類。本文主要描述的是存儲(chǔ)模型的介紹。其中計(jì)算模型的分布式系統(tǒng)原理跟存儲(chǔ)模型類似,只是會(huì)根據(jù)自身計(jì)算特點(diǎn)加一些特殊調(diào)度邏輯進(jìn)去。

任何一個(gè)分布式系統(tǒng)都需要考慮如下5個(gè)問(wèn)題:

1.數(shù)據(jù)如何分布

就像把雞蛋放進(jìn)籃子里面。一般來(lái)說(shuō)籃子大小是一樣的,當(dāng)然也有的系統(tǒng)支持不一樣大小的籃子。雞蛋大小也不一樣,有很多系統(tǒng)就把雞蛋給"切割"成一樣大小然后再放。并且有的雞蛋表示對(duì)籃子有要求,比如對(duì)機(jī)房/機(jī)架位的要求。

衡量一個(gè)數(shù)據(jù)分布算法好不好就看他是否分得足夠均勻,使得所有機(jī)器的負(fù)載方差足夠小。

[[245103]]

2.如何容災(zāi)

分布式系統(tǒng)一個(gè)很重要的定位就是要讓程序自動(dòng)來(lái)管機(jī)器,盡量減少人工參與,否則一個(gè)分布式系統(tǒng)的運(yùn)維成本將不可接受。

容災(zāi)問(wèn)題非常復(fù)雜,有很多很成熟的系統(tǒng)也不敢保證自己做得特別好,那么來(lái)看看一個(gè)典型的系統(tǒng)都有可能出哪些問(wèn)題吧:

(1)機(jī)器宕機(jī)

這是最常見(jiàn)的故障了。系統(tǒng)中最容易出問(wèn)題的硬盤的年故障率可能能達(dá)到10%。這樣算下來(lái),一個(gè)有1000臺(tái)機(jī)器的集群,每一個(gè)星期就會(huì)有2臺(tái)機(jī)器宕機(jī)。所以在機(jī)器數(shù)量大了之后,這是一個(gè)很正常的事情。

一般一臺(tái)機(jī)器出故障之后修復(fù)周期是24小時(shí),這個(gè)過(guò)程是人工接入換設(shè)備或者重啟機(jī)器。在機(jī)器恢復(fù)之后內(nèi)存信息完全丟失,硬盤信息可能可以保存。

一個(gè)分布式系統(tǒng)必須保證一臺(tái)機(jī)器的宕機(jī)對(duì)服務(wù)不受影響,并且在修復(fù)好了之后再重新放到集群當(dāng)中之后也能正常工作。

(2)網(wǎng)絡(luò)故障

這是最常見(jiàn)且要命的故障。就是該問(wèn)題會(huì)大大增加分布式系統(tǒng)設(shè)計(jì)的難度。故障一般發(fā)生在網(wǎng)絡(luò)擁塞,路由變動(dòng),設(shè)備異常等情況。出現(xiàn)的問(wèn)題可能是丟包,可能是延時(shí),也可能是完全失去連接。

有鑒于此,我們一般在設(shè)計(jì)分布式系統(tǒng)的時(shí)候,四層協(xié)議都采用TCP,很少采用UDP/UDT協(xié)議。而且由于TCP協(xié)議并不能完全保證數(shù)據(jù)傳輸?shù)綄?duì)面,比如我們?cè)侔l(fā)送數(shù)據(jù),只要數(shù)據(jù)寫入本地緩沖區(qū),操作系統(tǒng)就會(huì)返回應(yīng)用層說(shuō)發(fā)送成功,但是有可能根本沒(méi)送到對(duì)面。所以我們一般還需要加上應(yīng)用層的ACK,來(lái)保證網(wǎng)絡(luò)層的行為是可預(yù)期的。

但是,即使加上應(yīng)用層的ACK,當(dāng)發(fā)送請(qǐng)求之后遲遲沒(méi)收到ACK。這個(gè)時(shí)候作為發(fā)送方也并不知道到底對(duì)方是直接掛了沒(méi)收到請(qǐng)求,還是收到請(qǐng)求之后才掛的。這個(gè)尤其是對(duì)于一些控制命令請(qǐng)求的發(fā)送尤為致命。

一般系統(tǒng)有兩種方案:

  1. 發(fā)送查詢命令來(lái)判斷到底是哪種情況
  2. 將協(xié)議設(shè)計(jì)成"冪等性"(即可重復(fù)發(fā)送數(shù)據(jù)并不影響最終數(shù)據(jù)), 然后不停重試

(3)其他異常

比如磁盤壞塊,但是機(jī)器并沒(méi)有宕機(jī);機(jī)器還活著,就是各種操作特別慢;由于網(wǎng)絡(luò)擁塞導(dǎo)致一會(huì)網(wǎng)絡(luò)斷掉,不發(fā)送數(shù)據(jù)之后又好了,一旦探活之后重新使用又掛了等惡心的情況;

這些異常都需要根據(jù)實(shí)際情況來(lái)分析,在長(zhǎng)期工程實(shí)踐中去調(diào)整解決。

并且令人非常沮喪的事實(shí)是:你在設(shè)計(jì)階段考慮的異常一定會(huì)在實(shí)際運(yùn)行情況中遇到,你沒(méi)考慮到的異常也會(huì)在實(shí)際運(yùn)行中遇到。所以分布式系統(tǒng)設(shè)計(jì)的一個(gè)原則是:不放過(guò)任何一個(gè)你看得到的異常。

3.讀寫過(guò)程一致性如何保證

一致性的概率很簡(jiǎn)單,就是我更新/刪除請(qǐng)求返回之后,別人是否能讀到我新寫的這個(gè)值。對(duì)于單機(jī)系統(tǒng),這個(gè)一致性要達(dá)到很簡(jiǎn)單,大不了是損失一點(diǎn)寫的效率。但是對(duì)于分布式系統(tǒng),這個(gè)就復(fù)雜了。為了容災(zāi),一份數(shù)據(jù)肯定有多個(gè)副本,那么如何更新這多個(gè)副本以及控制讀寫協(xié)議就成了一個(gè)大問(wèn)題。

而且有的寫操作可能會(huì)跨越多個(gè)分片,這就更復(fù)雜了。再加上剛才提到的網(wǎng)絡(luò)故障,可能在同步數(shù)據(jù)的時(shí)候還會(huì)出現(xiàn)各種網(wǎng)絡(luò)故障,想想就頭疼。

而且即使達(dá)到了一致性,有可能讀寫性能也會(huì)受到很大損失。我們?cè)O(shè)計(jì)系統(tǒng)的時(shí)候就像一個(gè)滑動(dòng)條,左邊是一致性,右邊是性能,兩者無(wú)法同時(shí)滿足(CAP原理)。一般的系統(tǒng)會(huì)取折衷,設(shè)計(jì)得比較好的系統(tǒng)能夠讓用戶通過(guò)配置來(lái)控制這個(gè)滑動(dòng)條的位置,滿足不同類型的需求。

一致性一般怎么折衷呢?我們來(lái)看看如下幾種一致性的定義。注意除了強(qiáng)一致性以外,其他幾種一致性并不沖突,一個(gè)系統(tǒng)可以同時(shí)滿足一種或者幾種一致性特點(diǎn)。

強(qiáng)一致性

不用多說(shuō),就是最嚴(yán)格的一致性要求。任何時(shí)候任何用戶只要寫了,寫請(qǐng)求返回的一霎那,所有其他用戶都能讀到新的值了。

最終一致性

這個(gè)也是提得很多的一個(gè)概念,很多系統(tǒng)默認(rèn)提供這種方式的一致性。即最終系統(tǒng)將將達(dá)到"強(qiáng)一致性"的狀態(tài),但在之前會(huì)有一段不確定的時(shí)間,系統(tǒng)處于不一致的狀態(tài)。

會(huì)話一致性

這個(gè)也很容易理解,能滿足很多場(chǎng)景下的需求。在同一個(gè)會(huì)話當(dāng)中,用戶感受到的是"強(qiáng)一致性"的服務(wù)。

單調(diào)一致性

這個(gè)比會(huì)話一致性還要弱一點(diǎn)。他之保證一個(gè)用戶在讀到某個(gè)數(shù)據(jù)之后,絕對(duì)不會(huì)讀到比上一次讀到的值更老的數(shù)據(jù)。

4.如何提高性能

分布式系統(tǒng)設(shè)計(jì)之初就是為了通過(guò)堆積機(jī)器來(lái)增加系統(tǒng)整體性能,所以系統(tǒng)性能也非常重要。性能部分一般會(huì)受一致性/容災(zāi)等設(shè)計(jì)的影響,會(huì)有一定的折衷。

衡量一個(gè)分布式系統(tǒng)的性能指標(biāo)往往有:

  • ***容量
  • 讀qps
  • 寫qps

5.如何保證橫向擴(kuò)展

橫向擴(kuò)展是指一個(gè)集群的服務(wù)能力是否可以通過(guò)加機(jī)器做到線性擴(kuò)展。

責(zé)任編輯:武曉燕 來(lái)源: 今日頭條
相關(guān)推薦

2017-04-14 09:48:25

分布式存儲(chǔ)系統(tǒng)

2017-10-16 10:24:47

LogDevice存儲(chǔ)系統(tǒng)

2017-07-18 09:51:36

文件存儲(chǔ)系統(tǒng)

2017-10-12 09:36:54

分布式存儲(chǔ)系統(tǒng)

2017-10-19 08:45:15

存儲(chǔ)系統(tǒng)HBase

2018-11-20 09:19:58

存儲(chǔ)系統(tǒng)雪崩效應(yīng)

2017-12-18 10:47:04

分布式存儲(chǔ)數(shù)據(jù)

2017-10-17 08:33:31

存儲(chǔ)系統(tǒng)分布式

2019-07-05 15:01:32

區(qū)塊鏈系統(tǒng)分布式存儲(chǔ)

2019-10-15 10:59:43

分布式存儲(chǔ)系統(tǒng)

2019-05-13 15:20:42

存儲(chǔ)系統(tǒng)算法

2018-05-10 09:34:21

spark存儲(chǔ)系統(tǒng)

2021-07-04 07:07:06

Ceph分布式存儲(chǔ)架構(gòu)

2018-10-29 12:42:23

Ceph分布式存儲(chǔ)

2014-02-19 11:37:57

分布式對(duì)象存儲(chǔ)Sheepdog

2013-12-27 10:56:42

分布式對(duì)象存儲(chǔ)Sheepdog性能測(cè)試

2010-07-02 10:08:12

BigtableGoogle

2021-08-07 05:00:20

存儲(chǔ)系統(tǒng)

2018-03-13 08:45:08

存儲(chǔ)系統(tǒng)DHT算法

2025-01-26 11:54:39

分布式存儲(chǔ)系統(tǒng)
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)

主站蜘蛛池模板: 欧美精品在线一区 | 成人欧美一区二区 | 精精国产视频 | 久久99精品视频 | 国产精品视频网 | 99色视频| 天堂久久天堂综合色 | 秋霞在线一区二区 | 婷婷久久综合 | a在线免费观看视频 | h视频免费观看 | 亚洲免费福利视频 | 亚洲一区二区三区免费观看 | 欧美激情精品久久久久久免费 | 国产精品精品视频一区二区三区 | 国产美女视频黄a视频免费 国产精品福利视频 | 午夜影视大全 | 国产欧美精品区一区二区三区 | 一区二区三区视频在线观看 | 日韩在线| 一区二区三区欧美 | 日韩精品免费视频 | 毛片视频免费观看 | 亚洲欧美另类在线 | 久久成人精品视频 | 人成久久| 精品久久久久久亚洲国产800 | 永久av| 97免费在线视频 | 国产亚洲第一页 | 欧美性猛交一区二区三区精品 | 亚洲成人自拍 | 国产精品久久久久久久久久软件 | 久草影视在线 | 成在线人视频免费视频 | 精品久久中文字幕 | 国产精品福利视频 | 亚洲欧美一区二区三区视频 | 国精日本亚洲欧州国产中文久久 | 亚洲视频 欧美视频 | 毛片a级毛片免费播放100 |