大數(shù)據(jù)時代,用戶處理的數(shù)據(jù)量越來越大,,需要的容量越來越大,;保存的數(shù)據(jù)越來越多樣越來越復(fù)雜,包括不同的來源,,不同的格式,,包括結(jié)構(gòu)化和非結(jié)構(gòu)化數(shù)據(jù)等;需要的訪問速度越來越高,,訪問延遲越來越低,;對數(shù)據(jù)價值的挖掘能力要求越來越高。
根據(jù)Gartner的分析,,滿足大數(shù)據(jù)的IT架構(gòu),,至少應(yīng)具備下面幾個特征
1) 橫向擴展: 可以線性橫向擴展而沒有性能影響
2) 低成本組件:通過使用消費級硬件,降低采購成本
3) 高可用:硬件故障作為常態(tài)而非特例來解決
4) 不共享架構(gòu):節(jié)點之間相互獨立
我們以此為基礎(chǔ),逐步揭開MVX的面紗,。
Scale-uporScale-out
傳統(tǒng)的NAS設(shè)備一般使用雙控制器節(jié)點提供服務(wù),,每個節(jié)點支持特定的業(yè)務(wù)負載,當容量不夠時通過擴展磁盤框的方式增加存儲容量,。這種方式的缺陷在于,,首先業(yè)務(wù)和節(jié)點的綁定,意味著一個業(yè)務(wù)及其關(guān)聯(lián)的文件系統(tǒng)只在一個節(jié)點上工作,,容易造成系統(tǒng)整體的負載不均,。其次,這種系統(tǒng)本質(zhì)上是Scale-up的擴容方式,,追求單機性能,,無法做到系統(tǒng)性能隨容量的增加線性增加。Scale-Out方式則是橫向擴展,,疊加容量或性能節(jié)點,,使容量性能得到擴展。
華為OceanStorMVX存儲系統(tǒng)(以下簡稱MVX)采用Scale-out架構(gòu),,節(jié)點之間完全對稱,,采用全Active的Sharenothing方式,系統(tǒng)的數(shù)據(jù)和管理數(shù)據(jù)(元數(shù)據(jù))分布在各個節(jié)點上,,避免了系統(tǒng)資源爭用,,消除了系統(tǒng)瓶頸;即使出現(xiàn)整節(jié)點故障,,系統(tǒng)能夠自動識別故障節(jié)點,,自動恢復(fù)故障節(jié)點涉及的數(shù)據(jù)和元數(shù)據(jù),,使故障對業(yè)務(wù)透明,,完全不影響業(yè)務(wù)連續(xù)性。MVX支持3-288節(jié)點的彈性空間,,100PB的全局統(tǒng)一命名空間,,并且支持文件內(nèi)的細粒度的全局鎖,,支持從多個節(jié)點并發(fā)訪問相同文件的不同區(qū)域,,實現(xiàn)高并發(fā)讀,,最終實現(xiàn)高性能的訪問系統(tǒng)。MVX系統(tǒng)采用全互聯(lián)組網(wǎng)機制,,節(jié)點間采用10GE或者Infiniband高速互聯(lián),,適配客戶不同的組網(wǎng)需求,,支持從集群任何一個節(jié)點并發(fā)訪問系統(tǒng)中的任何文件,。所以MVX通過節(jié)點的擴展來解決海量容量的增長,同時還能保持性能線性增長,,以此滿足業(yè)務(wù)發(fā)展需求。
MVX系統(tǒng)對數(shù)據(jù)和元數(shù)據(jù)分開管理,,這樣做帶來的好處,MVX可以在存儲容量不變的情況下,通過增加性能加速節(jié)點,,進一步顯著提高系統(tǒng)對IO的響應(yīng)能力,,最終向用戶提供卓越的性能,。
分布式Raid
傳統(tǒng)Raid,,把數(shù)據(jù)存放在一個節(jié)點內(nèi)的不同硬盤上,當一個硬盤損壞時,,通過Raid重構(gòu),恢復(fù)壞盤上的數(shù)據(jù),,但當整個節(jié)點故障時,,整節(jié)點的數(shù)據(jù)就會出現(xiàn)丟失,針對這個問題,,可以通過在節(jié)點間寫多份來解決。節(jié)點間寫多份可以解決傳統(tǒng)RAID整節(jié)點故障時丟數(shù)據(jù)的問題,,但磁盤利用率很低,導(dǎo)致高TCO,。 MVX的數(shù)據(jù)通過分布式RAID,節(jié)點間冗余的方式進行保護,,數(shù)據(jù)進入系統(tǒng)之后,被切分為N個數(shù)據(jù)片,,然后計算出M個冗余分片,保存在N+M個不同節(jié)點的不同硬盤上,。這種N+M的冗余模式可以對任意目錄進行重新配置,,甚至可以對同一目錄下的不同文件配置不同的冗余比,。這意味著用戶可以靈活多變地根據(jù)自己的實際需求來指定數(shù)據(jù)冗余,,從而設(shè)置不同的可靠性。
集群節(jié)點中,,任意不超過M個硬盤故障后,,MVX可以通過節(jié)點間數(shù)據(jù)重構(gòu)的方式快速恢復(fù)出所損失的數(shù)據(jù),,進而恢復(fù)整系統(tǒng)的數(shù)據(jù)可靠性,。集群中任意節(jié)點故障后,,該節(jié)點所提供的服務(wù)會被自動遷移到其他節(jié)點上,,使得故障對業(yè)務(wù)無感知。通過把數(shù)據(jù)分片寫到不同的節(jié)點上,,不僅可以提高讀寫性能,,又能保證數(shù)據(jù)的高可靠性,還能保持高的磁盤利用率,,節(jié)約投資,。
分級存儲和桌面盤
MVX產(chǎn)品對用戶提供統(tǒng)一命名空間,組成統(tǒng)一命名空間的設(shè)備可以由不同系列的硬件組成,,當高性能設(shè)備和大容量設(shè)備同時存在時,,系統(tǒng)會自動識別并形成分級存儲。
大容量節(jié)點可以使用桌面級硬盤,。桌面級硬盤成本比較低,,但是這種硬盤相對企業(yè)級硬盤來說,對業(yè)務(wù)的占空比要求比較苛刻,,另外能持續(xù)在線工作的時間也比較短,。MVX系統(tǒng)由于實現(xiàn)了自動在線分級,,并且支持對硬盤下電,,可以極大縮短硬盤在線工作的時間,在綠色節(jié)能的同時延長硬盤使用壽命,。MVX通過支持桌面級硬盤在離線存儲中的應(yīng)用,,大幅降低企業(yè)的采購成本,。