存儲技術已經(jīng)發(fā)展和成熟起來,并開始在許多數(shù)據(jù)中心處于近乎商品的地位。然而,今天的企業(yè)面臨著存儲技術的不斷變化帶來的諸多問題一個例子是推動大數(shù)據(jù)分析,一項給大型數(shù)據(jù)集帶來商業(yè)智能BI功能的舉措。
大數(shù)據(jù)分析過程需要如下超出典型存儲范式的能力—典型存儲范式,簡而言之,即傳統(tǒng)的存儲技術,如SAN、NAS和其它無法在本地處理伴隨著大數(shù)據(jù)的挑戰(zhàn)而來的TB級和PB級的非結構化信息的存儲技術。除此之外,成功的大數(shù)據(jù)分析需要更多的東西——種新的處理大容量數(shù)據(jù)的方法,換言之,一種新的存儲平臺。
Hadoop是一個開源項目,它提供了處理大數(shù)據(jù)的平臺。雖然Hadoop的出現(xiàn)已經(jīng)有一段時日了,但是很多企業(yè)現(xiàn)在才開始使用Hadoop。
Hadoop平臺旨在解決海量數(shù)據(jù)引起的問題,尤其是那些混合了復雜、非結構化、結構化信息的數(shù)據(jù),這些數(shù)據(jù)的結構導致其不適合存儲在表中。Hadoop在需要支持深度和計算廣泛的分析比如集群和定位的情況下運作良好。那么Hadoop對那些尋求充分利用大數(shù)據(jù)的IT專業(yè)人員意味著什么?簡單的回答是Hadoop解決了與大數(shù)據(jù)相關聯(lián)的最常見的問題:高效的存儲和訪問海量數(shù)據(jù)。
Hadoop的內(nèi)在設計允許其作為一個能夠在大量不共享任何內(nèi)存和磁盤的計算機之間工作的平臺運行??紤]到這一點,就能很容易看到Hadoop如何提供額外的價值——網(wǎng)絡管理員可以簡單的購買許多商品服務器,將它們放在機架上,然后在每臺服務器上運行Hadoop軟件。
更何況,Hadoop有助于減少大型數(shù)據(jù)集相關聯(lián)的管理開銷。在操作上,一旦企業(yè)的數(shù)據(jù)加載到了Hadoop平臺,軟件就會把數(shù)據(jù)分解成可管理的片段,然后自動將這些數(shù)據(jù)分配給不同的服務器。數(shù)據(jù)天然的分布式性質意味著從單一的服務器訪問數(shù)據(jù)是不可能的。Hadoop跟蹤數(shù)據(jù)駐留的位置,并通過創(chuàng)建多個存儲副本進一步保護這些信息。這樣,系統(tǒng)的伸縮性增強了:如果某個服務器脫機或者失敗了,數(shù)據(jù)可以自動復制已知的正常副本。
Hadoop如何走得更遠?
Hadoop進一步分多個步驟處理數(shù)據(jù)。例如,限制關聯(lián)傳統(tǒng)的、集中式的數(shù)據(jù)庫系統(tǒng),該數(shù)據(jù)庫系統(tǒng)可能包括了連接到具有多個處理器的服務器級系統(tǒng)的大型磁盤驅動器。在這種情況下,由于磁盤的性能限制,數(shù)據(jù)分析是有限的,并且,最終還要忍受可購買的處理器數(shù)量。
在部署了Hadoop后,集群中的每個服務器都可以通過Hadoop傳播分布在集群中的數(shù)據(jù)的功能參與數(shù)據(jù)的處理過程。換句話說,一個索引作業(yè)向集群中的每個服務器發(fā)送代碼,然后每個服務器在屬于自己的一塊數(shù)據(jù)上進行相關操作,隨后處理結果作為一個整體交付。有了Hadoop,過程被視為MapReduce,在MapReduce中,代碼和進程被映射到了所有的服務器上而操作結果被減少到了單個數(shù)據(jù)集上。
Hadoop之所以能夠處理海量數(shù)據(jù)就是因為這個過程。Hadoop傳播數(shù)據(jù)并且能夠利用所有的可用集群處理器并行工作來處理復雜計算問題。