官术网_书友最值得收藏!

1.1.2 GFS

談到分布式文件系統(tǒng),就不得不提到Google的GFS(Google File System)。GFS是一個可擴展的分布式文件系統(tǒng),用于大型的、分布式的、對大量數(shù)據(jù)進行訪問的應(yīng)用。它運行于廉價的普通硬件上,并提供容錯功能。它可以給大量的用戶提供總體性能較高的服務(wù)。

在有GFS之前,Google是當時唯一需要處理如此海量數(shù)據(jù)的大公司,對于Google而言,當時已有的方案已經(jīng)難以滿足如此大的數(shù)據(jù)量存儲,為此Google便開發(fā)了分布式文件系統(tǒng)GFS。HDFS是GFS的一個開源實現(xiàn),它是Hadoop的核心組件之一,也是HBase的基礎(chǔ)。

1. GFS設(shè)計目標

Google設(shè)計GFS主要是為了解決以下幾方面問題:

(1)需要存儲的數(shù)據(jù)種類繁多:Google目前向公眾開放的服務(wù)很多,需要處理的數(shù)據(jù)類型也非常多。包括URL、網(wǎng)頁內(nèi)容、用戶的個性化設(shè)置在內(nèi)的數(shù)據(jù),都是Google需要經(jīng)常處理的對象。

(2)海量的服務(wù)請求:Google運行著目前世界上最繁忙的系統(tǒng),它每時每刻處理的客戶服務(wù)請求數(shù)量是普通的系統(tǒng)根本無法承受的。

(3)商用數(shù)據(jù)庫的局限性:一方面現(xiàn)有商用數(shù)據(jù)庫設(shè)計著眼點在于通用性,根本無法滿足Google苛刻的服務(wù)要求;另一方面對于底層系統(tǒng)的完全掌控,會給后期的系統(tǒng)維護、升級帶來極大的便利。

2. GFS的設(shè)計思路

GFS在設(shè)計思路上的特色包括以下幾點:

(1)一個GFS集群包含一個單獨的Master節(jié)點(即只存在一個邏輯上的Master組件,實際包含兩臺物理主機)、多臺Chunk(大塊)服務(wù)器以及多個客戶端。

(2)系統(tǒng)通過廉價的組件組成,可存儲大文件(通常在100MB以上)。

(3)采用“生產(chǎn)者”與“消費者”隊列,或者其他多路文件合并操作。

(4)高性能的穩(wěn)定網(wǎng)絡(luò)帶寬遠比低延時重要。

(5)系統(tǒng)支持兩種讀操作:大規(guī)模的流式讀取和小規(guī)模的隨機讀取。

3. GFS架構(gòu)

GFS將容錯的任務(wù)交給文件系統(tǒng)完成,利用軟件的方法解決系統(tǒng)可靠性問題,使存儲的成本成倍下降。

GFS將服務(wù)器故障視為正常現(xiàn)象,并采用多種方法,從多個角度,使用不同的容錯措施,以確保數(shù)據(jù)存儲的安全,保證提供不間斷的數(shù)據(jù)存儲服務(wù)。

GFS的架構(gòu)流程圖如圖1-2所示。

圖1-2 GFS架構(gòu)流程圖

(1)GFS客戶端:應(yīng)用程序的訪問接口。

(2)主服務(wù)器:管理節(jié)點,在邏輯上只有一個,保存系統(tǒng)的元數(shù)據(jù),負責(zé)整個文件系統(tǒng)的管理。

(3)數(shù)據(jù)塊服務(wù)器:負責(zé)具體的存儲工作,數(shù)據(jù)以文件的形式存儲在Chunk Server上。

主站蜘蛛池模板: 瑞丽市| 大化| 新源县| 尉犁县| 宜城市| 铁岭县| 瑞昌市| 墨竹工卡县| 高唐县| 普格县| 芮城县| 连城县| 淮南市| 远安县| 陆丰市| 福贡县| 新和县| 河津市| 井陉县| 高雄县| 大化| 抚顺市| 乐清市| 大宁县| 清水河县| 新竹市| 周至县| 浦城县| 桦甸市| 忻城县| 渑池县| 宣城市| 河北省| 尼木县| 抚顺市| 漳浦县| 中牟县| 常德市| 广德县| 宁远县| 鹤庆县|