原創(chuàng)|使用教程|編輯:龔雪|2014-08-21 13:57:19.000|閱讀 589 次
概述:大數(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é)的評(píng)估和優(yōu)化。本文介紹了思科公司在 Hadoop 集群環(huán)境下的網(wǎng)絡(luò)架構(gòu)設(shè)計(jì)與優(yōu)化經(jīng)驗(yàn)。
# 界面/圖表報(bào)表/文檔/IDE等千款熱門軟控件火熱銷售中 >>
相關(guān)鏈接:
大數(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é)的評(píng)估和優(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中的以下過程會(huì)在網(wǎng)絡(luò)中傳輸數(shù)據(jù)。
(1)寫數(shù)據(jù)。當(dāng)向 HDFS 寫入初始數(shù)據(jù)或者大塊數(shù)據(jù)時(shí),會(huì)發(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ù)塊不在本地存儲(chǔ),需要從其他節(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)容,會(huì)在這個(gè)時(shí)候傳輸?shù)?Reducer 進(jìn)行排序。
③ Reduce 階段。因?yàn)?Reducer 需要的數(shù)據(jù)已經(jīng)從Shuffle 階段傳來,所以此階段不需要網(wǎng)絡(luò)傳輸數(shù)據(jù)。
④ Output 復(fù)制。MapReduce 的輸出作為文件存儲(chǔ)在 HDFS 上。當(dāng)將輸出結(jié)果寫入 HDFS 時(shí),產(chǎn)生的備份會(huì)在網(wǎng)絡(luò)中傳輸。
(3)讀數(shù)據(jù)。當(dāng)應(yīng)用程序如網(wǎng)站、索引或者 SQL數(shù)據(jù)庫從 HDFS 讀取數(shù)據(jù)時(shí),會(huì)發(fā)生數(shù)據(jù)讀取的過程。另外,網(wǎng)絡(luò)對(duì) Hadoop 的控制層非常重要,比如HDFS 的信令和運(yùn)維操作,以及 MapReduce 架構(gòu)都受到網(wǎng)絡(luò)影響。
五種網(wǎng)絡(luò)特性
思科公司針對(duì) Hadoop 集群環(huán)境下的網(wǎng)絡(luò)環(huán)境進(jìn)行了一個(gè)測試,測試結(jié)果顯示,一個(gè)有彈性的網(wǎng)絡(luò)對(duì)Hadoop 集群非常重要;對(duì) 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 會(huì)產(chǎn)生突發(fā)流量,如向 HDFS加載文件或者把結(jié)果文件寫入 HDFS 都需要通過網(wǎng)絡(luò)。網(wǎng)絡(luò)如果處理不了突發(fā)流量,就會(huì)丟棄數(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)口會(huì)造成數(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ī)和路由器延遲的變化對(duì)集群性能的影響有限。相比網(wǎng)絡(luò)延遲,應(yīng)用層延遲對(duì)任務(wù)的影響比例更大。但是網(wǎng)絡(luò)的延遲會(huì)對(duì)應(yīng)用系統(tǒng)造成潛在的影響,例如造成不必要的應(yīng)用切換等。
本站文章除注明轉(zhuǎn)載外,均為本站原創(chuàng)或翻譯。歡迎任何形式的轉(zhuǎn)載,但請(qǐng)務(wù)必注明出處、不得修改原文相關(guān)鏈接,如果存在內(nèi)容上的異議請(qǐng)郵件反饋至chenjj@fc6vip.cn
文章轉(zhuǎn)載自:慧都控件網(wǎng)