HDFS的“聯(lián)邦”時代

最初Hadoop集群只允許有一個命名空間(Namespace),且只能被一個NameNode管理。

雖然可以通過添加底層DataNode節(jié)點實現(xiàn)集群橫向擴展,增加存儲空間,但由于所有的Block元數(shù)據(jù)都駐留在NameNode內存中,在集群規(guī)模增大時,NameNode很容易成為瓶頸,直接限制了HDFS的文件、目錄和數(shù)據(jù)塊的數(shù)量。

Hadoop 社區(qū)為了解決 HDFS 橫向擴展的問題,做了兩個聯(lián)邦方案(如上圖):

早期的NNF方案中,集群引入了多個NameNode,分別管理不同的Namespace和對應的BlockPool,多個NameNode可以共享Hadoop集群中的DataNode。

雖然解決了Namespace的擴展問題,但需要對HDFS的Client進行“靜態(tài)”配置掛載,還要結合ViewFS才能實現(xiàn)統(tǒng)一入口。

而在RBF的聯(lián)邦方案中,嘗試把“掛載表”從Client中抽離出來形成了Router,雖然Hadoop集群是獨立的,但同時又增加了一個“State Store”組件,架構變得更復雜。

局部改進的“聯(lián)邦”方案對于面向未來的大數(shù)據(jù)存儲而言,治標不治本。

青出于藍而勝于藍

有時候,最好的優(yōu)化就是另起爐灶。

畢竟Hadoop技術已經(jīng)很多年了,當下的軟硬件環(huán)境已與當初大不相同,系統(tǒng)重構也在情理之中。

與其等別人來革HDFS的命,不如自我革命。目前看,Ozone的確給用戶提供了一個新選擇。

就好像CDH和HDP最終融合成了CDP一樣,HDFS和S3也可以融合成Ozone。

總之,Ozone站在Hadoop這個巨人的肩膀上,設計之初就是為了替換掉HDFS,青出于藍而勝于藍。

潭主家的“存儲一哥”

早年間接觸過Ceph,也搞過HCP(Hitachi Content Platform)對象存儲,這些經(jīng)驗對潭主理解Ozone大有裨益。

特意查了一下自家的HCP,發(fā)現(xiàn)影像文件已經(jīng)20多億個了,存儲容量也小2PB。不過查詢過程中明顯感覺到元數(shù)據(jù)響應緩慢,估計快該擴容了。

言歸正傳,再來說說Ozone的核心概念:

Ozone的存儲路徑為/Volume/Bucket/Key,一個業(yè)務可以對應一個或多個Volume,每個Volume可以包含多個Bucket,在訪問方式上Ozone實現(xiàn)了ofs和o3fs的適配和協(xié)議封裝。

值得注意的是,HCP里面有文件夾的概念,就是說對象文件有層次結構,但Ozone在設計上是扁平的,目錄是一個“偽目錄”概念,是文件名的一部分,統(tǒng)一作為Key而存在。

Ozone的體系架構

介紹完了概念,再看看Ozone的體系架構(如上圖):

Ozone做了架構優(yōu)化,上層實現(xiàn)職能分離,OM負責管理Namespace,SCM負責管理Storage Containers。

下層實現(xiàn)了一個叫Hadoop Distributed Data Store(HDDS)的高可用、塊存儲層。

Ozone中的一個DataNode包括多個Storage Container,每個SC的容量(默認5GB,可配置)遠大于Hadoop中Block容量(默認128MB),這種設計使得每個DN發(fā)送給SCM的Container-Report系統(tǒng)壓力要遠遠小于傳統(tǒng)Hadoop集群的Block-Report。

Storage Container作為Ozone的基礎存儲和復制單元,類似于一個“超級塊”,通過其內置RocksDB(key記錄BlockID,Value記錄object的文件名、偏移量和長度),實現(xiàn)對小文件的塊管理。

Ozone,新一代的“融合”數(shù)據(jù)湖存儲

在網(wǎng)上看到之前某互聯(lián)網(wǎng)大廠專家的分享,現(xiàn)網(wǎng)同時在使用HDFS和Ceph。

HDFS主要用于大數(shù)據(jù)分析場景,但機器學習場景中受限于大量小文件而使用Ceph。

不過,在介紹Ozone的Roadmap時說未來會在存儲層引入Ozone。

開源世界,風起云涌,前腳剛看過Alluxio,覺得眼前一亮,這會兒再看Ozone,更是金光閃閃。

Ozone既是Hadoop的優(yōu)化升級版,又能“分層”解決海量小文件的對象存儲,再加上對云原生CSI的支持,讓其成為了新一代“融合”存儲。

Ozone這股新勢力著實讓潭主不敢小覷,希望未來能有機會做些實踐。

存儲圈,數(shù)據(jù)不息,折騰不止!

分享到

zhupb

相關推薦