這篇文章主要為大家展示了“hadoop有什么優(yōu)點”,內(nèi)容簡而易懂,條理清晰,希望能夠幫助大家解決疑惑,下面讓小編帶領(lǐng)大家一起研究并學(xué)習一下“hadoop有什么優(yōu)點”這篇文章吧。
成都創(chuàng)新互聯(lián)公司專注于網(wǎng)站設(shè)計、成都網(wǎng)站建設(shè)、網(wǎng)頁設(shè)計、網(wǎng)站制作、網(wǎng)站開發(fā)。公司秉持“客戶至上,用心服務(wù)”的宗旨,從客戶的利益和觀點出發(fā),讓客戶在網(wǎng)絡(luò)營銷中找到自己的駐足之地。尊重和關(guān)懷每一位客戶,用嚴謹?shù)膽B(tài)度對待客戶,用專業(yè)的服務(wù)創(chuàng)造價值,成為客戶值得信賴的朋友,為客戶解除后顧之憂。
首先,Hadoop是一個由Apache基金會所開發(fā)的分布式系統(tǒng)基礎(chǔ)架構(gòu)。
Hadoop是一個能夠讓用戶輕松架構(gòu)和使用的分布式計算平臺。用戶可以輕松地在Hadoop上開發(fā)和運行處理海量數(shù)據(jù)的應(yīng)用程序。它主要有以下幾個優(yōu)點:
1. 高可靠性。Hadoop按位存儲和處理數(shù)據(jù)的能力值得人們信賴。
2. 高擴展性。Hadoop是在可用的計算機集簇間分配數(shù)據(jù)并完成計算任務(wù)的,這些集簇可以方便地擴展到數(shù)以千計的節(jié)點中。
3. 高效性。Hadoop能夠在節(jié)點之間動態(tài)地移動數(shù)據(jù),并保證各個節(jié)點的動態(tài)平衡,因此處理速度非???。
4. 高容錯性。Hadoop能夠自動保存數(shù)據(jù)的多個副本,并且能夠自動將失敗的任務(wù)重新分配。
5. 低成本。與一體機、商用數(shù)據(jù)倉庫以及QlikView、Yonghong Z-Suite等數(shù)據(jù)集市相比,hadoop是開源的,項目的軟件成本因此會大大降低。
Hadoop帶有用Java語言編寫的框架,因此運行在 Linux 生產(chǎn)平臺上是非常理想的。
其實我們要知道大數(shù)據(jù)的實質(zhì)特性:針對增量中海量的結(jié)構(gòu)化,非結(jié)構(gòu)化,半結(jié)構(gòu)數(shù)據(jù),在這種情況下,如何快速反復(fù)計算挖掘出高效益的市場數(shù)據(jù)??帶著這 個問題滲透到業(yè)務(wù)中去分析,就知道hadoop需要應(yīng)用到什么業(yè)務(wù)場景了?。?!如果關(guān)系型數(shù)據(jù)庫都能應(yīng)付的工作還需要hadoop嗎?
關(guān)于hadoop,我映像比較深刻的是知乎中有人提到的一個“秒級營銷”,什么是“秒級營銷”呢?說白了就是:
1.通過大數(shù)據(jù)計算你的個人信息;
2.然后進行精準推送。
hadoop還能夠做什么呢?
例如:
· 大數(shù)據(jù)量存儲:分布式存儲
· 日志處理: Hadoop擅長這個
· 海量計算: 并行計算
· ETL:數(shù)據(jù)抽取到oracle、MySQL、DB2、mongdb及主流數(shù)據(jù)庫
· 使用HBase做數(shù)據(jù)分析: 用擴展性應(yīng)對大量的寫操作—Facebook構(gòu)建了基于HBase的實時數(shù)據(jù)分析系統(tǒng)
· 搜索引擎:hadoop + lucene實現(xiàn)
· 數(shù)據(jù)挖掘:目前比較流行的廣告推薦
· 大量地從文件中順序讀。HDFS對順序讀進行了優(yōu)化,代價是對于隨機的訪問負載較高。
· 任何一臺服務(wù)器都有可能失效,需要通過大量的數(shù)據(jù)復(fù)制使得性能不會受到大的影響。
· 個性化廣告推薦
說了這么多,如果沒有理解沒有明白,沒關(guān)系。我們挑其核心講唄
Hadoop最核心的設(shè)計就是HDFS和MapReduce
1.Hdfs提供海量的數(shù)據(jù)存儲。
具體的可參看HDFS詳解(個人推薦,該博客擁有比較多的文檔支撐)
2.MapReduce提供了對數(shù)據(jù)的計算。
MapReduce采用"分而治之"的思想,把對大規(guī)模數(shù)據(jù)集的操作,分發(fā)給一個主節(jié)點管理下的各個分節(jié)點共同完成,然后通過整合各個節(jié)點的中間結(jié)果,得到最終結(jié)果。簡單地說,MapReduce就是"任務(wù)的分解與結(jié)果的匯總"。
在Hadoop中,用于執(zhí)行MapReduce任務(wù)的機器角色有兩個:一個是JobTracker;另一個是TaskTracker,JobTracker是用于調(diào)度工作的,TaskTracker是用于執(zhí)行工作的。一個Hadoop集群中只有一臺JobTracker。
在分布式計算中,MapReduce框架負責處理了并行編程中分布式存儲、工作調(diào)度、負載均衡、容錯均衡、容錯處理以及網(wǎng)絡(luò)通信等復(fù)雜問題,把處理過程高度抽象為兩個函數(shù):map和reduce,map負責把任務(wù)分解成多個任務(wù),reduce負責把分解后多任務(wù)處理的結(jié)果匯總起來。
需要注意的是,用MapReduce來處理的數(shù)據(jù)集(或任務(wù))必須具備這樣的特點:待處理的數(shù)據(jù)集可以分解成許多小的數(shù)據(jù)集,而且每一個小數(shù)據(jù)集都可以完全并行地進行處理。
在Hadoop中,每個MapReduce任務(wù)都被初始化為一個Job,每個Job又可以分為兩種階段:map階段和reduce階段。這兩個階段分別用兩個函數(shù)表示,即map函數(shù)和reduce函數(shù)。map函數(shù)接收一個
MapReduce處理大數(shù)據(jù)集的過程
以上是“hadoop有什么優(yōu)點”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對大家有所幫助,如果還想學(xué)習更多知識,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道!