你了解分布式存儲系統(tǒng)嗎?分布式存儲系統(tǒng)關(guān)鍵技術(shù)闡述
存儲是現(xiàn)代數(shù)據(jù)儲備的基礎(chǔ),大數(shù)據(jù)的根基更是存儲。隨著時代的發(fā)展,分布式存儲已然成為存儲的主流類型之一。為增進大家對存儲的認(rèn)識,本文將對分布式存儲系統(tǒng)以及分布式存儲系統(tǒng)關(guān)鍵技術(shù)予以介紹。如果你對存儲具有興趣,不妨繼續(xù)往下閱讀哦。
一、分布式存儲系統(tǒng)
大數(shù)據(jù)導(dǎo)致了數(shù)據(jù)量的爆發(fā)式增長,傳統(tǒng)的集中式存儲(如NAS或SAN)在容量和性能上都無法較好地滿足大數(shù)據(jù)的需求。因此,具有優(yōu)秀的可擴展能力的分布式存儲成為大數(shù)據(jù)存儲的主流架構(gòu)方式。分布式存儲多采用普通的硬件設(shè)備作為基礎(chǔ)設(shè)施,因此,單位容量的存儲成本也得到大大降低。另外,分布式存儲在性能、維護性和容災(zāi)性等方面也具有不同程度的優(yōu)勢。
分布式存儲系統(tǒng)需要解決的關(guān)鍵技術(shù)問題包括諸如可擴展性、數(shù)據(jù)冗余、數(shù)據(jù)一致性、全局命名空間緩存等,從架構(gòu)上來講,大體上可以將分布式存儲分為C/S(Client Server)架構(gòu)和P2P(Peer-to-Peer)架構(gòu)兩種。當(dāng)然,也有一些分布式存儲中會同時存在這兩種架構(gòu)方式。
分布式存儲面臨的另外一個共同問題,就是如何組織和管理成員結(jié)點,以及如何建立數(shù)據(jù)與結(jié)點之間的映射關(guān)系。成員結(jié)點的動態(tài)增加或者離開,在分布式系統(tǒng)中基本上可以算是一種常態(tài)。
EricBrewer于2000年提出的分布式系統(tǒng)設(shè)計的CAP理論指出,一個分布式系統(tǒng)不可能同時保證一致性、可用性和分區(qū)容忍性(Partitiontolerance)這3個要素。因此,任何一個分布式存儲系統(tǒng)也只能根據(jù)其具體的業(yè)務(wù)特征和具體需求,最大地優(yōu)化其中的兩個要素。當(dāng)然,除了一致性、可用性和分區(qū)容忍性這3個維度,一個分布式存儲系統(tǒng)往往會根據(jù)具體業(yè)務(wù)的不同,在特性設(shè)計上有不同的取舍,比如,是否需要緩存模塊、是否支持通用的文件系統(tǒng)接口等。
二、分布式存儲系統(tǒng)關(guān)鍵技術(shù)
(一)元數(shù)據(jù)管理
在大數(shù)據(jù)環(huán)境下,元數(shù)據(jù)的體量也非常大,元數(shù)據(jù)的存取性能是整個分布式文件系統(tǒng)性能的關(guān)鍵。常見的元數(shù)據(jù)管理可以分為集中式和分布式元數(shù)據(jù)管理架構(gòu)。集中式元數(shù)據(jù)管理架構(gòu)采用單一的元數(shù)據(jù)服務(wù)器,實現(xiàn)簡單.但是存在單點故障等問題。分布式元數(shù)據(jù)管理架構(gòu)則將元數(shù)據(jù)分散在多個結(jié)點上.進而解決了元數(shù)據(jù)服務(wù)器的性能瓶頸等問題.并提高了元數(shù)據(jù)管理架構(gòu)的可擴展性,但實現(xiàn)較為復(fù)雜,并引入了元數(shù)據(jù)一致性的問題。另外,還有一種無元數(shù)據(jù)服務(wù)器的分布式架構(gòu),通過在線算法組織數(shù)據(jù),不需要專用的元數(shù)據(jù)服務(wù)器。但是該架構(gòu)對數(shù)據(jù)一致性的保障很困難.實現(xiàn)較為復(fù)雜。文件目錄遍歷操作效率低下,并且缺乏文件系統(tǒng)全局監(jiān)控管理功能。
(二)系統(tǒng)彈性擴展技術(shù)
在大數(shù)據(jù)環(huán)境下,數(shù)據(jù)規(guī)模和復(fù)雜度的增加往往非常迅速,對系統(tǒng)的擴展性能要求較高。實現(xiàn)存儲系統(tǒng)的高可擴展性首先要解決兩個方面的重要問題,包含元數(shù)據(jù)的分配和數(shù)據(jù)的透明遷移。元數(shù)據(jù)的分配主要通過靜態(tài)子樹劃分技術(shù)實現(xiàn),后者則側(cè)重數(shù)據(jù)遷移算法的優(yōu)化。此外,大數(shù)據(jù)存儲體系規(guī)模龐大,結(jié)點失效率高,因此還需要完成一定的自適應(yīng)管理功能。系統(tǒng)必須能夠根據(jù)數(shù)據(jù)量和計算的工作量估算所需要的結(jié)點個數(shù),并動態(tài)地將數(shù)據(jù)在結(jié)點間遷移。以實現(xiàn)負(fù)載均衡;同時,結(jié)點失效時,數(shù)據(jù)必須可以通過副本等機制進行恢復(fù),不能對上層應(yīng)用產(chǎn)生影響。
(三)存儲層級內(nèi)的優(yōu)化技術(shù)
構(gòu)建存儲系統(tǒng)時.需要基于成本和性能來考慮,因此存儲系統(tǒng)通常采用多層不同性價比的存儲器件組成存儲層次結(jié)構(gòu)。大數(shù)據(jù)的規(guī)模大,因此構(gòu)建高效合理的存儲層次結(jié)構(gòu),可以在保證系統(tǒng)性能的前提下,降低系統(tǒng)能耗和構(gòu)建成本,利用數(shù)據(jù)訪問局部性原理.可以從兩個方面對存儲層次結(jié)構(gòu)進行優(yōu)化。從提高性能的角度,可以通過分析應(yīng)用特征,識別熱點數(shù)據(jù)并對其進行緩存或預(yù)取,通過高效的緩存預(yù)取算法和合理的緩存容量配比,以提高訪問性能。從降低成本的角度,采用信息生命周期管理方法,將訪問頻率低的冷數(shù)據(jù)遷移到低速廉價存儲設(shè)備上,可以在小幅犧牲系統(tǒng)整體性能的基礎(chǔ)上,大幅降低系統(tǒng)的構(gòu)建成本和能耗。
針對應(yīng)用和負(fù)載的存儲優(yōu)化技術(shù)
傳統(tǒng)數(shù)據(jù)存儲模型需要支持盡可能多的應(yīng)用,因此需要具備較好的通用性。大數(shù)據(jù)具有大規(guī)模、高動態(tài)及快速處理等特性,通用的數(shù)據(jù)存儲模型通常并不是最能提高應(yīng)用性能的模型.而大數(shù)據(jù)存儲系統(tǒng)對上層應(yīng)用性能的關(guān)注遠(yuǎn)遠(yuǎn)超過對通用性的追求。針對應(yīng)用和負(fù)載來優(yōu)化存儲,就是將數(shù)據(jù)存儲與應(yīng)用耦合。簡化或擴展分布式文件系統(tǒng)的功能,根據(jù)特定應(yīng)用、特定負(fù)載、特定的計算模型對文件系統(tǒng)進行定制和深度優(yōu)化,使應(yīng)用達(dá)到最佳性能。這類優(yōu)化技術(shù)在谷歌、Facebook等互聯(lián)網(wǎng)公司的內(nèi)部存儲系統(tǒng)上,管理超過千萬億字節(jié)級別的大數(shù)據(jù),能夠達(dá)到非常高的性能。
以上便是此次小編帶來的“存儲”相關(guān)內(nèi)容,通過本文,希望大家對分布式存儲系統(tǒng)以及分布式存儲系統(tǒng)關(guān)鍵技術(shù)具備一定的了解。如果你喜歡本文,不妨持續(xù)關(guān)注我們網(wǎng)站哦,小編將于后期帶來更多精彩內(nèi)容。最后,十分感謝大家的閱讀,have a nice day!