分布式存儲系統(tǒng)原理

來源: 發(fā)布時間:2022-01-14

與傳統(tǒng)的存儲架構(gòu)使用RAID模式來保證數(shù)據(jù)的可靠性不同,分布式存儲采用了多副本備份機制。在存儲數(shù)據(jù)之前,分布式存儲對數(shù)據(jù)進行了分片,分片后的數(shù)據(jù)按照一定的規(guī)則保存在集群節(jié)點上。為了保證多個數(shù)據(jù)副本之間的一致性,分布式存儲通常采用的是一個副本寫入,多個副本讀取的強一致性技術(shù),使用鏡像、條帶、分布式校驗等方式滿足租戶對于可靠性不同的需求。在讀取數(shù)據(jù)失敗的時候,系統(tǒng)可以通過從其他副本讀取數(shù)據(jù),重新寫入該副本進行恢復,從而保證副本的總數(shù)固定。當數(shù)據(jù)長時間處于不一致狀態(tài)時,系統(tǒng)會自動數(shù)據(jù)重建恢復,同時租戶可設(shè)定數(shù)據(jù)恢復的帶寬規(guī)則,小化對業(yè)務(wù)的影響。 分布式存儲系統(tǒng)需要使用多臺服務(wù)器共同存儲數(shù)據(jù),隨著服務(wù)器數(shù)量的增加,出現(xiàn)故障的概率也在不斷增加。分布式存儲系統(tǒng)原理

什么是分布式存儲呢?如果一個存儲系統(tǒng),不管是對象、塊、文件、kv、log、olap、oltp,只要對所管理的數(shù)據(jù)做了Partitioning&Replication,不管姿勢對不對,其實都可以歸納于分布式存儲。分布式存儲就是:Partitioning以多機scale,Replication以災(zāi)備容錯。復制是解決可用性,可擴展性和高性能的關(guān)鍵。為了災(zāi)備,數(shù)據(jù)需要冗余存儲;為了高可用,服務(wù)需要hotstandby。缺乏災(zāi)備的系統(tǒng)難以在生產(chǎn)環(huán)境使用。元數(shù)據(jù)和數(shù)據(jù)的維護均離不開復制,復制可轉(zhuǎn)移而不可消除。復制引出了多副本一致性問題,而一致性保證需要考慮各種軟件和硬件故障,以及誤操作。 江蘇大規(guī)模分布式存儲系統(tǒng)原理解析分布式存儲系統(tǒng)通過復制協(xié)議將數(shù)據(jù)同步到多個存儲節(jié)點,并確保多個副本之間的數(shù)據(jù)一致性。

    分布式存儲采用分布式的系統(tǒng)結(jié)構(gòu),將數(shù)據(jù)以切片式或粉碎式分散在多個du立存儲服務(wù)器。它不但提高了系統(tǒng)的可靠性、可用性和存取效率,還易于擴展,將通用硬件引入的不穩(wěn)定因素降到比較低。優(yōu)點如下:1、高性能。2、支持分級存儲。3、多副本的一致性。4、容災(zāi)與備份。5、彈性擴展。6、存儲系統(tǒng)標準化。隨著分布式存儲的發(fā)展,存儲行業(yè)的標準化進程也不斷推進,分布式存儲優(yōu)先采用行業(yè)標準接口進行存儲接入。在平臺層面,通過將異構(gòu)存儲資源進行抽象化,將傳統(tǒng)的存儲設(shè)備級的操作封裝成面向存儲資源的操作,從而簡化異構(gòu)存儲基礎(chǔ)架構(gòu)的操作,以實現(xiàn)存儲資源的集中管理,并能夠自動執(zhí)行創(chuàng)建、變更、回收等整個存儲生命周期流程,從而降低了存儲采購和管理成本。

    在分布式存儲系統(tǒng)(包括OceanBase這樣的分布式數(shù)據(jù)庫)的使用中,我們經(jīng)常會提到“一致性”這個詞,但是這個術(shù)語在不同的系統(tǒng)、不同人的心目中有不同的內(nèi)涵,很容易造成混淆。想象一個簡單的存儲系統(tǒng),只有一個客戶端(單進程)和一個服務(wù)端(單進程服務(wù))??蛻舳隧樞虬l(fā)起讀寫操作,服務(wù)端也順序處理每個請求,那么無論從服務(wù)器視角還是從客戶端視角,后一個操作都可以看到前一個操作的結(jié)果。然后,系統(tǒng)變的復雜一些,系統(tǒng)還是單個服務(wù)進程(單副本),但是有多個客戶端并發(fā)進行操作。這個模型下,多個客戶端的操作會互相影響,比如一個客戶端會讀到不是自己寫的數(shù)據(jù)(另一個客戶端寫入的)。一般單機并發(fā)程序就是這樣的模型,比如多個線程共享內(nèi)存的程序中。 淺談分布式存儲中的網(wǎng)絡(luò)通信。

    那么現(xiàn)在問題來了,如果我們要選擇分布式存儲,選擇哪種好呢?其實它們各有各的優(yōu)勢和使用場景,具體要看需求。(1)HDFS:主要用于大數(shù)據(jù)的存儲場景,是Hadoop大數(shù)據(jù)架構(gòu)中的存儲組件。HDFS在開始設(shè)計的時候,就已經(jīng)明確的它的應(yīng)用場景,就是大數(shù)據(jù)服務(wù)。(2)Ceph:目前應(yīng)用廣的開源分布式存儲系統(tǒng),已得到眾多廠商的支持,許多超融合系統(tǒng)的分布式存儲都是基于Ceph深度定制。而且Ceph已經(jīng)成為LINUX系統(tǒng)和OpenStack的“標配”,用于支持各自的存儲系統(tǒng)。Ceph可以提供對象存儲、塊設(shè)備存儲和文件系統(tǒng)存儲服務(wù)。同時支持三種不同類型的存儲服務(wù)的特性,在分布式存儲系統(tǒng)中,是很少見的。(3)Swift:主要面向的是對象存儲。和Ceph提供的對象存儲服務(wù)類似。主要用于解決非結(jié)構(gòu)化數(shù)據(jù)存儲問題。它和Ceph的對象存儲服務(wù)的主要區(qū)別是。 對于保證分布式存儲系統(tǒng)的高可靠和高可用,數(shù)據(jù)在系統(tǒng)中一般存儲多個副本。寧波四大開源分布式存儲哪家好

常見的幾種分布式存儲以及應(yīng)用場景。分布式存儲系統(tǒng)原理

分布式存儲分為文件存儲、對象存儲和塊存儲,但它們?nèi)N存儲方式的基本架構(gòu)都是大同小異的。即客戶端或應(yīng)用端、元數(shù)據(jù)(MDS)服務(wù)器和數(shù)據(jù)節(jié)點服務(wù)器??蛻舳撕驮獢?shù)據(jù)服務(wù)器之間交互是“信令交互”,而客戶端到數(shù)據(jù)節(jié)點是“媒體交互”。元數(shù)據(jù)服務(wù)器或通過數(shù)據(jù)節(jié)點服務(wù)器獲取各節(jié)點服務(wù)器的基本配置情況和狀態(tài)信息。比如,客戶端需要讀取某一個文件的信息,客戶端會將相應(yīng)的要求發(fā)給元數(shù)據(jù)服務(wù)器:“喂!我需要XXX,存在哪里了”,元數(shù)據(jù)服務(wù)器查詢后回答“你到xxx服務(wù)器的xxx地址+xxx服務(wù)器的xxx地址取”??蛻舳四玫竭@個指示后,向這2臺服務(wù)器發(fā)出指令,數(shù)據(jù)節(jié)點獲得指令后,將相應(yīng)的數(shù)據(jù)返回給客戶端。 分布式存儲系統(tǒng)原理

江蘇魏晉元興智能科技有限公司主要經(jīng)營范圍是數(shù)碼、電腦,擁有一支專業(yè)技術(shù)團隊和良好的市場口碑。公司自成立以來,以質(zhì)量為發(fā)展,讓匠心彌散在每個細節(jié),公司旗下網(wǎng)絡(luò)安全,VR,MR,VR,AI,視頻監(jiān)控安防,出入口門禁失控制深受客戶的喜愛。公司秉持誠信為本的經(jīng)營理念,在數(shù)碼、電腦深耕多年,以技術(shù)為先導,以自主產(chǎn)品為重點,發(fā)揮人才優(yōu)勢,打造數(shù)碼、電腦良好品牌。在社會各界的鼎力支持下,持續(xù)創(chuàng)新,不斷鑄造***服務(wù)體驗,為客戶成功提供堅實有力的支持。