磁盤存儲就像是衣櫥,永遠不夠用,在大數(shù)據(jù)時代,這一點尤為突出。“大數(shù)據(jù)”意味著需要比傳統(tǒng)存儲平臺處理更多的數(shù)據(jù)。在為大數(shù)據(jù)選擇存儲服務(wù)時也并不是完全無跡可尋。
何謂大數(shù)據(jù)
首先,我們需要清楚大數(shù)據(jù)與其他類型數(shù)據(jù)的區(qū)別以及與之相關(guān)的技術(shù)(主要是分析應(yīng)用程序)。大數(shù)據(jù)本身意味著非常多需要使用標(biāo)準(zhǔn)存儲技術(shù)來處理的數(shù)據(jù)。大數(shù)據(jù)可能由TB級(或者甚至PB級)信息組成,既包括結(jié)構(gòu)化數(shù)據(jù)(數(shù)據(jù)庫、日志、SQL等)以及非結(jié)構(gòu)化數(shù)據(jù)(社交媒體帖子、傳感器、多媒體數(shù)據(jù))。此外,大部分這些數(shù)據(jù)缺乏索引或者其他組織結(jié)構(gòu),可能由很多不同文件類型組成。
由于這些數(shù)據(jù)缺乏一致性,使標(biāo)準(zhǔn)處理和存儲技術(shù)無計可施,而且運營開銷以及龐大的數(shù)據(jù)量使我們難以使用傳統(tǒng)的服務(wù)器和SAN方法來有效地進行處理。換句話說,大數(shù)據(jù)需要不同的處理方法:自己的平臺,這也是Hadoop可以派上用場的地方。
Hadoop是一個開源分布式計算平臺,它提供了一種建立平臺的方法,這個平臺由標(biāo)準(zhǔn)化硬件(服務(wù)器和內(nèi)部服務(wù)器存儲)組成,并形成集群能夠并行處理大數(shù)據(jù)請求。在存儲方面來看,這個開源項目的關(guān)鍵組成部分是Hadoop分布式文件系統(tǒng)(HDFS),該系統(tǒng)具有跨集群中多個成員存儲非常大文件的能力。 HDFS通過創(chuàng)建多個數(shù)據(jù)塊副本,然后將其分布在整個集群內(nèi)的計算機節(jié)點,這提供了方便可靠極其快速的計算能力。
從目前來看,為大數(shù)據(jù)建立足夠大的存儲平臺最簡單的方法就是購買一套服務(wù)器,并為每臺服務(wù)器配備數(shù)TB級的驅(qū)動器,然后讓Hadoop來完成余下的工作。對于一些規(guī)模較小的企業(yè)而言,可能只要這么簡單。然而,一旦考慮處理性能、算法復(fù)雜性和數(shù)據(jù)挖掘,這種方法可能不一定能夠保證成功。
你的存儲架構(gòu)
這一切都歸結(jié)到所涉及的存儲結(jié)構(gòu)和網(wǎng)絡(luò)性能。對于經(jīng)常分析大數(shù)據(jù)的企業(yè)而言,可能需要一個單獨的基礎(chǔ)設(shè)施,因為隨著集群中計算節(jié)點的數(shù)量的增長,帶寬開銷也會增長。通常情況下,使用HDFS的多模計算集群在處理大數(shù)據(jù)時將會產(chǎn)生大量流量。這是因為Hadoop在集群的成員服務(wù)器間傳輸數(shù)據(jù)(以及計算資源)。
在大多數(shù)情況下,基于服務(wù)器的本地存儲并沒有高效率的優(yōu)點,這也是為什么很多企業(yè)轉(zhuǎn)向使用高速光纖結(jié)構(gòu)的SAN來最大限度地提高吞吐量。然而,SAN 方法本身并不一定適合大數(shù)據(jù)部署。尤其是那些使用Hadoop的大數(shù)據(jù)部署,因為SAN承擔(dān)集中硬盤上數(shù)據(jù)的責(zé)任,這反過來意味著每個計算服務(wù)器將需要訪問相同的SAN來恢復(fù)正態(tài)分布的數(shù)據(jù)。
然而,當(dāng)比較本地服務(wù)器存儲和基于SAN的存儲時,本地存儲在兩個方面占據(jù)優(yōu)勢:成本和整體性能。簡而言之,沒有在每個計算成員放置RAID的原始磁盤在處理HDFS請求時將勝過SAN,然而,基于服務(wù)器的磁盤存在缺點,主要是在可擴展性方面。
問題是當(dāng)服務(wù)器依賴于本地存儲時,你如何在必要的時候增加更多的容量。通常,有兩種方式來處理這種困境。第一種方法是增加具有更多本地存儲的額外的服務(wù)器。第二種方法是增加集群服務(wù)器的容量。這兩種方法都需要購買和配置硬件,這將導(dǎo)致停機時間,可能還需要重新設(shè)計架構(gòu)。然而,無論使用哪種方法都要比向 SAN增加容量要便宜,可以說,這是一個顯著的成本優(yōu)勢。
然而,當(dāng)涉及到Hadoop時,還有其他存儲選擇。例如,一些領(lǐng)先的存儲廠商都在建立專門針對Hadoop和大數(shù)據(jù)分析的存儲設(shè)備。這些供應(yīng)商包括 EMC,目前提供Hadoop解決方案,例如Greenplum HD Data Computing Appliance。甲骨文正在考慮進一步深化Exadata系列設(shè)備,提供計算能力以及高速存儲。
最后一個存儲選擇是云形式的存儲,Cloudera、微軟、Amazon和很多其他供應(yīng)商都在提供基于云的大數(shù)據(jù)解決方案,這些解決方案能夠提供處理能力、存儲和支持。
在選擇大數(shù)據(jù)存儲解決方案時需要考慮究竟需要多少空間,分析頻率如何以及需要處理什么類型的數(shù)據(jù)。這些因素,以及安全、預(yù)算和處理時間都是選擇大數(shù)據(jù)存儲解決方案時需要考慮的因素。
可能站在保險的角度來看,一個試點項目可能是一個不錯的開始,商品硬件也是大數(shù)據(jù)試點項目的低成本投資選擇。