在近兩年,大數(shù)據(jù)分析似乎很受歡迎,但即使如此,仍有不少企業(yè)發(fā)現(xiàn),現(xiàn)有的數(shù)據(jù)挖掘和分析技術(shù)還是不能完美勝任大數(shù)據(jù)的處理任務(wù)。
而對(duì)于這個(gè)問(wèn)題,一個(gè)可能的解決方案就是搭建Hadoop集群,但它并不適合所有情況。讓我們了解一下Hadoop集群在大數(shù)據(jù)分析中應(yīng)用的優(yōu)勢(shì)與挑戰(zhàn)。
Hadoop集群是一種專門為存儲(chǔ)和分析海量非結(jié)構(gòu)化數(shù)據(jù)而設(shè)計(jì)的特定類型的集群。本質(zhì)上,它是一種計(jì)算集群,即將數(shù)據(jù)分析的工作分配到多個(gè)集群節(jié)點(diǎn)上,從而并行處理數(shù)據(jù)。
搭建Hadoop集群的優(yōu)點(diǎn)
使用Hadoop集群最大的好處在于它非常適合大數(shù)據(jù)分析。大數(shù)據(jù)一般都是分布廣泛并且是非結(jié)構(gòu)化的。而Hadoop非常適合這類數(shù)據(jù)是因?yàn)椋琀adoop的工作原理在于將數(shù)據(jù)拆分成片,并將每個(gè)“分片”分配到特定的集群節(jié)點(diǎn)上進(jìn)行分析。數(shù)據(jù)不必均勻分布,因?yàn)槊總€(gè)數(shù)據(jù)分片都是在獨(dú)立的集群節(jié)點(diǎn)上進(jìn)行單獨(dú)處理的。
Hadoop集群的另一個(gè)優(yōu)點(diǎn)可擴(kuò)展性。和其它任何類型的數(shù)據(jù)一樣,大數(shù)據(jù)分析面臨的一個(gè)重要問(wèn)題也是數(shù)據(jù)量的不斷增加。而且大數(shù)據(jù)最大的優(yōu)勢(shì)在于可以實(shí)時(shí)或接近實(shí)時(shí)地進(jìn)行分析處理。而Hadoop集群的并行處理能力能明顯提高分析速度,但隨著要分析的數(shù)據(jù)量的增加,集群的處理能力可能會(huì)收到影響。但令人欣慰的是,通過(guò)添加額外的集群節(jié)點(diǎn)可以有效的擴(kuò)展集群。
Hadoop集群的第三個(gè)好處是成本。這一點(diǎn)聽(tīng)起來(lái)似乎有些奇怪,畢竟分析大數(shù)據(jù)是一個(gè)企業(yè)級(jí)的IT活動(dòng),一直以來(lái)企業(yè)級(jí)的IT應(yīng)用從未廉價(jià)過(guò)。但是,事實(shí)證明,Hadoop集群的確是一個(gè)高性價(jià)比的解決方案。Hadoop集群較為廉價(jià)有兩個(gè)主要原因。它所需的軟件是開(kāi)源的,這樣就可以降低成本。事實(shí)上,你可以自由下載ApacheHadoop發(fā)行版。同時(shí),Hadoop集群通過(guò)支持商用硬件控制了成本。不必購(gòu)買服務(wù)器級(jí)硬件,便可以搭建一個(gè)強(qiáng)大的Hadoop集群。Hadoop集群的另一個(gè)優(yōu)點(diǎn)在于故障容錯(cuò)。當(dāng)一個(gè)數(shù)據(jù)分片發(fā)送到某個(gè)節(jié)點(diǎn)進(jìn)行分析時(shí),該數(shù)據(jù)在集群其它節(jié)點(diǎn)上會(huì)有副本。通過(guò)這種方式,即使一個(gè)節(jié)點(diǎn)發(fā)生故障,該節(jié)點(diǎn)數(shù)據(jù)的額外拷貝仍存在于集群內(nèi)的其它地方,這樣,數(shù)據(jù)仍可以進(jìn)行分析處理。
Hadoop集群的缺點(diǎn)
雖然Hadoop集群有這么多優(yōu)點(diǎn)和好處,但它卻并非是對(duì)于所有企業(yè)都適用的數(shù)據(jù)分析解決方案。比如某企業(yè)的數(shù)據(jù)量相對(duì)較少,即使亟需數(shù)據(jù)分析也可能不會(huì)受益于Hadoop集群。使用Hadoop集群的另外一個(gè)缺點(diǎn)在于集群解決方案是建立在數(shù)據(jù)“可分”以及可在獨(dú)立節(jié)點(diǎn)上進(jìn)行并行處理的基礎(chǔ)之上的。如果要做的分析不適應(yīng)于并行處理環(huán)境,那么Hadoop集群就不是完成這項(xiàng)任務(wù)的合適工具。
也許使用Hadoop集群最顯著的缺點(diǎn)在于集群的搭建、運(yùn)維和支持是一個(gè)陡峭的曲線。除非恰好在你的IT部門里有Hadoop專家,否則學(xué)習(xí)如何搭建集群和執(zhí)行所需的數(shù)據(jù)分析任務(wù)需耗費(fèi)些時(shí)日。如果你不確定企業(yè)能否受益于Hadoop集群,那么在提交搭建大型集群之前,可以先下載安裝ApacheHadoop到多余的硬件上看看效果如何。