大數(shù)據(jù)時(shí)代,研究大數(shù)據(jù)的IT 廠商把研究重心放在優(yōu)化大數(shù)據(jù)系統(tǒng)軟件架構(gòu)、優(yōu)化業(yè)務(wù)邏輯、優(yōu)化數(shù)據(jù)分析算法、優(yōu)化節(jié)點(diǎn)性能等方向,而忽略了大數(shù)據(jù)環(huán)境基礎(chǔ)設(shè)置中網(wǎng)絡(luò)環(huán)節(jié)的評估和優(yōu)化。本文介紹了思科公司在Hadoop 集群環(huán)境下的網(wǎng)絡(luò)架構(gòu)設(shè)計(jì)與優(yōu)化經(jīng)驗(yàn)。
大數(shù)據(jù)Hadoop環(huán)境網(wǎng)絡(luò)特性Hadoop 集群中的各節(jié)點(diǎn)通過網(wǎng)絡(luò)連接起來,而且MapReduce 中的以下過程會在網(wǎng)絡(luò)中傳輸數(shù)據(jù)。
(1)寫數(shù)據(jù)。當(dāng)向HDFS 寫入初始數(shù)據(jù)或者大塊數(shù)據(jù)時(shí),會發(fā)生數(shù)據(jù)寫入過程。寫入的數(shù)據(jù)塊需要備份到其他節(jié)點(diǎn),需要在網(wǎng)絡(luò)中傳輸這些數(shù)據(jù)。
(2)作業(yè)執(zhí)行。
① Map 階段。在算法的Map 階段,幾乎不需要在網(wǎng)絡(luò)中傳輸數(shù)據(jù)。在Map 開始階段,當(dāng)HDFS 數(shù)據(jù)沒有本地性(數(shù)據(jù)塊不在本地存儲,需要從其他節(jié)點(diǎn)拷貝)時(shí),才需在網(wǎng)絡(luò)中傳輸數(shù)據(jù)。
② Shuffle 階段。這是作業(yè)執(zhí)行中在網(wǎng)絡(luò)中傳輸數(shù)據(jù)的階段,數(shù)據(jù)傳輸?shù)某潭纫蕾囉谧鳂I(yè)。Mapper 階段的輸出內(nèi)容,會在這個(gè)時(shí)候傳輸?shù)絉educer 進(jìn)行排序。
③ Reduce 階段。因?yàn)镽educer 需要的數(shù)據(jù)已經(jīng)從Shuffle 階段傳來,所以此階段不需要網(wǎng)絡(luò)傳輸數(shù)據(jù)。
④ Output 復(fù)制。MapReduce 的輸出作為文件存儲在HDFS 上。當(dāng)將輸出結(jié)果寫入HDFS 時(shí),產(chǎn)生的備份會在網(wǎng)絡(luò)中傳輸。
(3)讀數(shù)據(jù)。當(dāng)應(yīng)用程序如網(wǎng)站、索引或者SQL數(shù)據(jù)庫從HDFS 讀取數(shù)據(jù)時(shí),會發(fā)生數(shù)據(jù)讀取的過程。另外,網(wǎng)絡(luò)對Hadoop 的控制層非常重要,比如HDFS 的信令和運(yùn)維操作,以及MapReduce 架構(gòu)都受到網(wǎng)絡(luò)影響。
五種網(wǎng)絡(luò)特性
思科公司針對Hadoop 集群環(huán)境下的網(wǎng)絡(luò)環(huán)境進(jìn)行了一個(gè)測試,測試結(jié)果顯示,一個(gè)有彈性的網(wǎng)絡(luò)對Hadoop 集群非常重要;對Hadoop 集群具有重要影響的網(wǎng)絡(luò)特性,以其影響程度從大到小依次排序?yàn)椋壕W(wǎng)絡(luò)可用性和彈性、Burst 流量突發(fā)處理和隊(duì)列深度、網(wǎng)絡(luò)過載比、Datanode 網(wǎng)絡(luò)接入和網(wǎng)絡(luò)延遲。
(1)網(wǎng)絡(luò)可用性和彈性。要部署一個(gè)高冗余性和可擴(kuò)展的網(wǎng)絡(luò),支持Hadoop 集群的增長。在Datanode之間部署多條鏈路的技術(shù)要比那些有單點(diǎn)失效或兩點(diǎn)失效的技術(shù)要好。交換機(jī)和路由器已經(jīng)在業(yè)界被證明能夠?yàn)榉⻊?wù)器提供網(wǎng)絡(luò)可用性。
(2)Burst 流量突發(fā)處理和隊(duì)列深度。HDFS 的有些操作和MapReduce Job 會產(chǎn)生突發(fā)流量,如向HDFS加載文件或者把結(jié)果文件寫入HDFS 都需要通過網(wǎng)絡(luò)。網(wǎng)絡(luò)如果處理不了突發(fā)流量,就會丟棄數(shù)據(jù)包,所以適當(dāng)?shù)木彺婵梢跃徑馔话l(fā)流量的影響。確保選擇使用緩存和隊(duì)列的交換機(jī)和路由器,來有效處理流量突發(fā)。
(3)網(wǎng)絡(luò)過載比。一個(gè)好的網(wǎng)絡(luò)設(shè)計(jì)需要考慮到網(wǎng)絡(luò)中關(guān)鍵節(jié)點(diǎn)的擁塞情況。一個(gè)ToR 交換機(jī)從服務(wù)器接收20Gbps 的數(shù)據(jù),但是只有2 個(gè)1Gbps 的上聯(lián)口會造成數(shù)據(jù)包丟失(10:1 的過載比),嚴(yán)重影響集群的性能。過度配置的網(wǎng)絡(luò)的價(jià)格又非常昂貴。一般情況下,服務(wù)器接入層可以接受的過載比在4:1 左右,接入層和匯聚層之間,或者核心層的過載比在2:1左右。
(4)Datanode 網(wǎng)絡(luò)接入。要基于集群工作負(fù)荷來推薦帶寬配置。一般集群中的節(jié)點(diǎn)有1 到2 根1GB 的上聯(lián)口。是否選擇10Gbps 的服務(wù)器要權(quán)衡價(jià)格和性能。
(5)網(wǎng)絡(luò)延遲。交換機(jī)和路由器延遲的變化對集群性能的影響有限。相比網(wǎng)絡(luò)延遲,應(yīng)用層延遲對任務(wù)的影響比例更大。但是網(wǎng)絡(luò)的延遲會對應(yīng)用系統(tǒng)造成潛在的影響,例如造成不必要的應(yīng)用切換等。
核心關(guān)注:拓步ERP系統(tǒng)平臺是覆蓋了眾多的業(yè)務(wù)領(lǐng)域、行業(yè)應(yīng)用,蘊(yùn)涵了豐富的ERP管理思想,集成了ERP軟件業(yè)務(wù)管理理念,功能涉及供應(yīng)鏈、成本、制造、CRM、HR等眾多業(yè)務(wù)領(lǐng)域的管理,全面涵蓋了企業(yè)關(guān)注ERP管理系統(tǒng)的核心領(lǐng)域,是眾多中小企業(yè)信息化建設(shè)首選的ERP管理軟件信賴品牌。
轉(zhuǎn)載請注明出處:拓步ERP資訊網(wǎng)http://www.ezxoed.cn/
本文標(biāo)題:Hadoop集群環(huán)境下的網(wǎng)絡(luò)架構(gòu)的設(shè)計(jì)與優(yōu)化
本文網(wǎng)址:http://www.ezxoed.cn/html/consultation/10839413205.html