摘要:是在端的,是提前的,需要自己設(shè)置。如果在開源大數(shù)據(jù)框架上部署大快的開發(fā)框架,需要平臺的組件支持如下數(shù)據(jù)源與引擎數(shù)據(jù)采集數(shù)據(jù)處理模塊機器學習和模塊上傳服務(wù)器端包,直接支持搜索引擎模塊不獨立發(fā)布
hadoop是一個開源軟件框架,可安裝在一個商用機器集群中,使機器可彼此通信并協(xié)同工作,以高度分布式的方式共同存儲和處理大量數(shù)據(jù)。最初,Hadoop 包含以下兩個主要組件:Hadoop Distributed File System (HDFS) 和一個分布式計算引擎,該引擎支持以 MapReduce 作業(yè)的形式實現(xiàn)和運行程序。
Hadoop 還提供了軟件基礎(chǔ)架構(gòu),以一系列 map 和 reduce 任務(wù)的形式運行 MapReduce 作業(yè)。Map 任務(wù)在輸入數(shù)據(jù)的子集上調(diào)用map函數(shù)。在完成這些調(diào)用后,reduce任務(wù)開始在 map函數(shù)所生成的中間數(shù)據(jù)上調(diào)用reduce任務(wù),生成最終的輸出。map和reduce任務(wù)彼此多帶帶運行,這支持并行和容錯的計算。
最重要的是,Hadoop 基礎(chǔ)架構(gòu)負責處理分布式處理的所有復雜方面:并行化、調(diào)度、資源管理、機器間通信、軟件和硬件故障處理,等等。得益于這種干凈的抽象,實現(xiàn)處理數(shù)百(或者甚至數(shù)千)個機器上的數(shù) TB 數(shù)據(jù)的分布式應用程序從未像現(xiàn)在這么容易過,甚至對于之前沒有使用分布式系統(tǒng)的經(jīng)驗的開發(fā)人員也是如此。
map reduce 過程圖
shuffle combine
整體的Shuffle過程包含以下幾個部分:Map端Shuffle、Sort階段、Reduce端Shuffle。即是說:Shuffle 過程橫跨 map 和 reduce 兩端,中間包含 sort 階段,就是數(shù)據(jù)從 map task 輸出到reduce task輸入的這段過程。
sort、combine 是在 map 端的,combine 是提前的 reduce ,需要自己設(shè)置。
Hadoop 集群中,大部分 map task 與 reduce task 的執(zhí)行是在不同的節(jié)點上。當然很多情況下 Reduce 執(zhí)行時需要跨節(jié)點去拉取其它節(jié)點上的map task結(jié)果。如果集群正在運行的 job 有很多,那么 task 的正常執(zhí)行對集群內(nèi)部的網(wǎng)絡(luò)資源消耗會很嚴重。而對于必要的網(wǎng)絡(luò)資源消耗,最終的目的就是最大化地減少不必要的消耗。還有在節(jié)點內(nèi),相比于內(nèi)存,磁盤 IO 對 job 完成時間的影響也是可觀的。從最基本的要求來說,對于 MapReduce 的 job 性能調(diào)優(yōu)的 Shuffle 過程,目標期望可以有:
完整地從map task端拉取數(shù)據(jù)到reduce 端。
在跨節(jié)點拉取數(shù)據(jù)時,盡可能地減少對帶寬的不必要消耗。
減少磁盤IO對task執(zhí)行的影響。
總體來講這段Shuffle過程,能優(yōu)化的地方主要在于減少拉取數(shù)據(jù)的量及盡量使用內(nèi)存而不是磁盤。
YARN
ResourceManager 代替集群管理器
ApplicationMaster 代替一個專用且短暫的 JobTracker
NodeManager 代替 TaskTracker
一個分布式應用程序代替一個 MapReduce 作業(yè)
一個全局 ResourceManager 以主要后臺進程的形式運行,它通常在專用機器上運行,在各種競爭的應用程序之間仲裁可用的集群資源。
在用戶提交一個應用程序時,一個稱為 ApplicationMaster 的輕量型進程實例會啟動來協(xié)調(diào)應用程序內(nèi)的所有任務(wù)的執(zhí)行。這包括監(jiān)視任務(wù),重新啟動失敗的任務(wù),推測性地運行緩慢的任務(wù),以及計算應用程序計數(shù)器值的總和。有趣的是,ApplicationMaster 可在容器內(nèi)運行任何類型的任務(wù)。
NodeManager 是 TaskTracker 的一種更加普通和高效的版本。沒有固定數(shù)量的 map 和 reduce slots,NodeManager 擁有許多動態(tài)創(chuàng)建的資源容器。
大數(shù)據(jù)Hadoop開發(fā)廠商有Amazon Web Services、Cloudera、Hortonworks、IBM、MapR科技、華為和大快搜索。這些廠商都是基于Apache開源項目,然后增加打包、支持、集成等特性以及自己的創(chuàng)新等內(nèi)容。
大快的大數(shù)據(jù)通用計算平臺(DKH),已經(jīng)集成相同版本號的開發(fā)框架的全部組件。如果在開源大數(shù)據(jù)框架上部署大快的開發(fā)框架,需要平臺的組件支持如下:
數(shù)據(jù)源與SQL引擎:DK.Hadoop、spark、hive、sqoop、flume、kafka
數(shù)據(jù)采集:DK.hadoop
數(shù)據(jù)處理模塊:DK.Hadoop、spark、storm、hive
機器學習和AI:DK.Hadoop、spark
NLP模塊:上傳服務(wù)器端JAR包,直接支持
搜索引擎模塊:不獨立發(fā)布
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://m.specialneedsforspecialkids.com/yun/72153.html
摘要:創(chuàng)新萌芽期望最頂點下調(diào)預期至低點回歸理想生產(chǎn)率平臺。而大數(shù)據(jù)已從頂峰滑落,和云計算接近谷底。對于迅速成長的中國市場,大公司也意味著大數(shù)據(jù)。三家對大數(shù)據(jù)的投入都是不惜余力的。 非商業(yè)轉(zhuǎn)載請注明作譯者、出處,并保留本文的原始鏈接:http://www.ituring.com.cn/article/177529 董飛,Coursera數(shù)據(jù)工程師。曾先后在創(chuàng)業(yè)公司酷迅,百度基礎(chǔ)架構(gòu)組...
閱讀 777·2019-08-29 16:32
閱讀 845·2019-08-29 12:31
閱讀 3228·2019-08-26 18:26
閱讀 3169·2019-08-26 12:20
閱讀 1743·2019-08-26 12:00
閱讀 3015·2019-08-26 10:58
閱讀 2821·2019-08-23 17:08
閱讀 2317·2019-08-23 16:32