20世紀90年代,每臺應用服務(wù)器往往都擁有直接連接存儲(DAS)。創(chuàng )建存儲區域網(wǎng)絡(luò )(SAN),是為了提供共享的存儲池,以獲得更大的規模和更高的效率。Hadoop逆轉了這股潮流,讓DAS重新流行起來(lái)。每個(gè)Hadoop集群都有自己的、橫向擴展直接連接存儲。它有助于Hadoop管理數據局部性,但是犧牲了共享存儲的規模和效率。因此,如果你有Hadoop發(fā)行版的多個(gè)實(shí)例,就會(huì )有多個(gè)這種橫向擴展的存儲孤島。
Hedvig公司的首席執行官兼創(chuàng )始人阿維納什·拉克希曼(Avinash Lakshman)說(shuō):“我們遇到的最大挑戰就是,兼顧數據局部性與規模和效率!
數據局部性是指確保大數據集存儲在執行分析任務(wù)的計算資源附近。對于Hadoop來(lái)說(shuō),這就意味著(zhù)管理數據節點(diǎn)(DataNode),而數據節點(diǎn)為MapReduce擁有足夠好的性能提供了存儲資源。它可以高效地工作,但是導致了另一個(gè)操作問(wèn)題:大數據存儲孤島。本文介紹的這些要點(diǎn)有助于管理Hadoop環(huán)境中的大數據存儲。
1. 分散式存儲
集中式存儲作為傳統架構已有一段時(shí)間。但是大數據其實(shí)并不適合集中存儲架構。Infogix的金融服務(wù)行業(yè)(FSI)戰略和運營(yíng)經(jīng)理森希爾·拉賈曼尼坎(Senthil Rajamanickam)表示,Hadoop旨在讓計算資源更接近數據,同時(shí)充分利用HDFS文件系統的大規模橫向擴展功能。
然而,解決Hadoop管理自有數據的低效問(wèn)題的常見(jiàn)方法,一向是將Hadoop數據存儲在SAN上。而這帶來(lái)了性能和規模方面的一系列瓶頸,F在,你的所有數據都通過(guò)集中式SAN控制器來(lái)處理,而控制器破壞了Hadoop的分布式、并行化的特性。你需要為多個(gè)數據節點(diǎn)管理多個(gè)SAN,或者將所有數據節點(diǎn)保存到一個(gè)SAN上。
拉克希曼說(shuō):“由于Hadoop是一種分布式應用系統,它應該可以在分布式存儲上運行,那樣你的存儲保持與Hadoop本身一樣的彈性。這需要你積極采用軟件定義存儲方法,在商用服務(wù)器上運行,但是它比把Hadoop放在傳統SAN或NAS技術(shù)上高效得多,因為后者給Hadoop造成了瓶頸。
2. 超融合vs分布式
不過(guò)要小心,別將超融合與分布式混為一談。某些超融合方法是分布式的,但這個(gè)術(shù)語(yǔ)通常意味著(zhù)你的應用程序和存儲可以共同駐留在同一個(gè)計算節點(diǎn)上。解決數據局部性問(wèn)題很誘人,但是這會(huì )造成嚴重的資源爭奪現象。 Hadoop應用和存儲平臺將爭奪同樣的內存和處理器資源。拉克希曼表示,最好在專(zhuān)用的應用層上運行Hadoop,在專(zhuān)用的存儲層中運行分布式存儲,從而充分利用緩存和分層技術(shù),以解決數據局部性和網(wǎng)絡(luò )性能開(kāi)銷(xiāo)。
3. 避免控制器阻塞點(diǎn)
他強調了做到這一點(diǎn)的一個(gè)重要方面――避免通過(guò)單一(或可能兩個(gè))點(diǎn)(比如傳統控制器)來(lái)處理數據。通過(guò)改而確保存儲平臺并行化,就能顯著(zhù)提高性能。
此外,這種方法提供了增量可擴展性。為數據湖添加容量就跟添加幾臺內置閃存或旋轉磁盤(pán)的x86服務(wù)器一樣簡(jiǎn)單。分布式存儲平臺可在必要時(shí)自動(dòng)添加容量、重新均衡數據。
4. 重復數據刪除和壓縮
駕馭大數據的一個(gè)關(guān)鍵部分是重復數據刪除和壓縮。Hedvig看到常見(jiàn)的大數據集可以縮減70%-90%。在PB級規模下,這意味著(zhù)可節省數萬(wàn)美元的磁盤(pán)成本。
拉克希曼說(shuō):“現代平臺提供了內聯(lián)式(而不是處理后)重復數據刪除和壓縮。這意味著(zhù),如果不先以某種方式來(lái)縮減數據,數據永遠不會(huì )進(jìn)入到磁盤(pán),這大大減少了存儲數據所需的容量!
5. 整合Hadoop發(fā)行版
許多大組織都有多個(gè)Hadoop發(fā)行版?赡苁怯捎陂_(kāi)發(fā)人員需要訪(fǎng)問(wèn)多個(gè)“版本”,或者業(yè)務(wù)部門(mén)久而久之采用了不同的版本。不管怎樣,IT總部常常最終負責這些集群的日常維護和操作。大數據數量真正開(kāi)始影響業(yè)務(wù)時(shí),存在多個(gè)Hadoop發(fā)行版會(huì )導致效率低下。
拉克希曼說(shuō):“你可以創(chuàng )建一個(gè)單一、經(jīng)過(guò)重復數據刪除的壓縮數據湖,然后它可以為Hadoop的多個(gè)實(shí)例提供數據,從而獲得數據效率!
6. 對Hadoop虛擬化處理
虛擬化技術(shù)在企業(yè)界刮起了一場(chǎng)風(fēng)暴。在許多地方,如今超過(guò)80%的物理服務(wù)器已虛擬化。不過(guò)由于性能和數據局部性問(wèn)題,許多人避免了對Hadoop進(jìn)行虛擬化處理。
拉克希曼說(shuō):“你可以對Hadoop或Spark進(jìn)行虛擬化處理!
7. 構建彈性數據湖
構建數據湖并非易事,但大數據存儲的需求可能需要數據湖。有許多方法可以著(zhù)手構建,可是哪一種才是合適的方法?合適的架構有望構建一個(gè)活躍、彈性的數據湖,可以存儲來(lái)自所有數據源、采用多種格式的數據,包括結構化數據、非結構化數據和半結構化數據。更重要的是,它必須支持就在數據源處執行應用程序,而不是從遠程源處執行,那樣需要移動(dòng)數據。
遺憾的是,傳統的架構和應用程序(即非分布式)并不令人滿(mǎn)意。由于數據集變得更龐大,必須將應用程序移到數據,而不是將數據移到應用程序,因為那樣延遲太長(cháng)。而有了Hadoop/Spark,分析工作流變得更具破壞性了,因為數據和應用程序從不同的孤島來(lái)執行,迫使數據移動(dòng)并存儲到多個(gè)平臺上。
日立公司大數據分析高級產(chǎn)品營(yíng)銷(xiāo)經(jīng)理弗雷德·歐(Fred Oh)說(shuō):“理想的數據湖基礎設施能夠存儲單一數據副本,并且讓?xiě)贸绦蜥槍我粩祿磮绦,沒(méi)必要移動(dòng)數據或制作副本(比如在Linux、虛擬機和Hadoop之間)!
8. 集成分析
分析不是一種新的功能,多年來(lái)它就存在于傳統的RDBMS環(huán)境中。不同之處在于,出現了基于開(kāi)源的應用程序,以及能夠將數據庫表與社交媒體和非結構化數據源(比如維基百科)集成起來(lái)。關(guān)鍵在于,能夠把多種類(lèi)型和格式的數據集成為一種標準的數據,那樣就能更輕松、更一致地完成可視化和報告。擁有完成這項工作的合適工具集是確保任何分析/商業(yè)智能項目成功的關(guān)鍵。
歐說(shuō):“說(shuō)到分析,重要的是要明白真正的挑戰不在可視化,而在數據集成,尤其是集成來(lái)自多個(gè)數據源、采用多種格式的數據。一套全面的數據集成工具和基于GUI的集成控制臺可以克服企業(yè)在大數據方面的挑戰!
9. 大數據遇上大視頻
大數據夠糟糕,大視頻更是為這個(gè)現象添加了壓力。比如說(shuō),企業(yè)日益使用視頻監控,不僅僅出于安全性,還為了提高運營(yíng)和工業(yè)效率,簡(jiǎn)化流量管理,支持監管合規及另外幾種使用場(chǎng)合。很快,這些數據源會(huì )生成大量?jì)热。那些要處理大視頻的企業(yè)最好確保為此建立了合適類(lèi)別的數據存儲系統,無(wú)論是不是基于Hadoop。
歐說(shuō):“這些應用程序正在帶來(lái)大量的視頻數據,要是沒(méi)有合適的專(zhuān)用存儲解決方案,這些數據會(huì )帶來(lái)諸多問(wèn)題,比如數據丟失和視頻質(zhì)量下降!
10. 沒(méi)有贏(yíng)家
最近Hadoop無(wú)疑攻下了許多地盤(pán)。所以,隨著(zhù)數據存儲量急劇增長(cháng),它會(huì )是最終贏(yíng)家,擊敗其他所有方法嗎?不太可能。
比如說(shuō),由于OLTP方面的固有優(yōu)點(diǎn)以及要求100%的可用性,基于SAN的傳統架構不會(huì )在近期被取代。但是如果需要分析以及與非結構化數據(比如社交媒體)集成,那么評估超融合平臺就有引人入勝的理由,因為超融合平臺將服務(wù)器計算、分布式文件系統、Hadoop/Spark和更新穎的數據庫應用軟件與基于開(kāi)源的分析工具整合起來(lái)。
因此,最佳方法將超融合平臺與分布式文件系統整合起來(lái),并集成了分析軟件;贚inux的傳統RDBMS應用(DWO和數據市場(chǎng)等)可滿(mǎn)足這個(gè)用途,Hadoop/Spark/MapReduce則應對新的社交媒體挑戰,使用服務(wù)器虛擬化提供了靈活性和效率。但是這每種環(huán)境都可能形成不同的數據孤島。理想的方法就是同時(shí)支持這三種環(huán)境,并增添這種功能:可在數據源處執行應用程序,并減少分析工作流中的數據移動(dòng)。
歐說(shuō):“成功的關(guān)鍵在于實(shí)施的系統考慮到了可擴展性、分析集成和專(zhuān)業(yè)知識。最終,存儲專(zhuān)業(yè)人員需要預料未來(lái)的要求,而不僅僅著(zhù)眼于存儲!