大數(shù)據(jù)關(guān)鍵技術(shù)分析
古代,人們用牛來拉重物,當(dāng)一頭牛拉不動一根圓木時,他們不曾想過培育更大更壯的牛。同樣,在面對計算能力不足時,我們也應(yīng)嘗試著結(jié)合使用更多的計算機系統(tǒng)?! ?/p>
Hadoop就是基于這樣的理念設(shè)計。Hadoop是一個由Apache基金會所開發(fā)的分布式系統(tǒng)基礎(chǔ)架構(gòu),計算分析處理所涉及的框架,允許多臺設(shè)備一起工作,充分利用集群的威力進行高速運算和存儲,共同完成一項任務(wù),而對于用戶來說這些設(shè)備是感知不到了,Hadoop技術(shù)屏蔽了底層的細節(jié)。
Hadoop***層是HDFS,也就是Hadoop文件系統(tǒng),這個是分布式文件系統(tǒng),由多臺設(shè)備提供統(tǒng)一的存儲空間,而用戶感覺不到多臺設(shè)備,只看到一個統(tǒng)一的存儲空間,這也是云存儲技術(shù)的基礎(chǔ)。構(gòu)建于HDFS的Hbase是天然的分布式數(shù)據(jù)庫;MapReduce提供了云計算框架,它的數(shù)據(jù)來源也是分布式的,可以是HDFS,也可以是Hbase。
HBase是分布式數(shù)據(jù)產(chǎn)品,多臺設(shè)備共同提供類似數(shù)據(jù)庫的服務(wù),但是這種服務(wù)是分布式,由多臺設(shè)備來提供的,用戶也完全感覺不到設(shè)備的存在,只知道有一個數(shù)據(jù)庫給他們服務(wù)。這個也就是大數(shù)據(jù)庫的基礎(chǔ)?! ?/p>
在HBase之上,有MapReduce服務(wù)框架,也就是并行分析計算服務(wù)框架,可以支持各種分析應(yīng)用并發(fā)的在多臺設(shè)備上執(zhí)行,完成一個共同的任務(wù),原來1個人需要10天完成的任務(wù),現(xiàn)在可以10個人1天完成,大大提升了數(shù)據(jù)分析的效率,這個也就是分布式計算的基礎(chǔ)。
Pig、Hive等是數(shù)據(jù)分析的引擎,提供快速的數(shù)據(jù)分析接口和能力。
Hadoop主要有以下幾個優(yōu)點:
一是高可靠性。Hadoop按位存儲和處理數(shù)據(jù)的能力值得人們信賴?! ?/p>
二是高擴展性。Hadoop是在可用的計算機集簇間分配數(shù)據(jù)并完成計算任務(wù)的,這些集簇可以方便地擴展到數(shù)以千計的節(jié)點中?! ?/p>
三是高效性。Hadoop能夠在節(jié)點之間動態(tài)地移動數(shù)據(jù),并保證各個節(jié)點的動態(tài)平衡,因此處理速度非常快。
四是高容錯性。Hadoop能夠自動保存數(shù)據(jù)的多個副本,并且能夠自動將失敗的任務(wù)重新分配。
五是低成本。與一體機、商用數(shù)據(jù)倉庫以及QlikView、Yonghong Z-Suite等數(shù)據(jù)集市相比,hadoop是開源的,項目的軟件成本因此會大大降低。