黃海軍

摘要:高校校園網經過多年的發展,已經步入大數據時代,而以往對高校校園網的研究基本停留在優化大數據系統軟件架構、優化業務邏輯、優化數據分析算法、優化節點性能等方向,都忽略了對大數據環境網絡的優化。就此本文首先分析了高校業務類型的多樣性,高校非結構化數據的增長對大數據的促進作用;然后對大數據的處理技術Hadoop進行分析,提出了基于Hadoop的高校校園網設計,建議采用SND架構,通過OpenFlow實現;最后提出基于Hadoop的高校校園網優化。
關鍵詞:大數據;校園網;Hadoop;SND;Openflow
中圖分類號:TP393 文獻標識碼:A 論文編號:1674-2117(2015)12-0118-04
前言
大數據已經滲透到當今每一個行業和業務職能領域,成為重要的生產因素。同樣,高校中也匯聚著大量的信息[1],從學生角度來看,包括聯系方式等基本信息,食堂消費、住宿晚歸等生活信息,選課、課后作業、借閱圖書、成績等學習信息,參與的社團、競賽、講座等第二課堂信息;從教師角度來看,包含教學任務、課件等教學信息,論文著作、科學研究數據等科研信息;從管理者的角度來看,包含學校的資產信息、師資信息、招生就業信息等。同時,隨著移動互聯網以及物聯網等新技術的興起,學校師生主動產生和由設備自動收集的信息越來越多,如微博、微信類社交信息,各類搜索點擊記錄信息等。上述信息存在著數據量大、結構復雜、產生頻率快的特點。這導致利用常用軟件工具捕獲、管理和處理此類數據所耗費時間超過了可容忍的時間。如何優化校園網配合大數據的使用環境將是一個需要我們思考的問題。
高校數據結構的分析
在實際應用中,數據因不同的應用場景其表現方式也有所不同,根據在不同應用中數據表現形式的不同,可以把數據區分成不同的類型,即數據類型。隨著校園網業務應用日趨豐富多樣,數據類型也呈現出多樣性。不同的數據類型,其數據組織的結構、屬性、存儲方式、分析方法、數據價值等都存在很大的差異。
從數據結構特征[2]來分類,主要可以分為:結構化數據、非結構化數據和半結構化數據。結構化數據即指可以用二維表結構來邏輯表達實現的數據,簡單來說就是數據庫。非結構化數據,即不方便用數據庫二維邏輯表來表現的數據。包括所有格式的高校辦公文檔、精品課件里包含的文本、圖片、XML、HTML、各類報表、圖像和音頻/視頻信息、高校智慧圖書館包括的相關信息等。半結構化數據包括校園郵件、HTML、報表、資源庫等。高校大數據的范疇包含結構化數據和非結構化數據,非結構化數據的增長對大數據的促進作用相比結構化數據更大、更明顯。
大數據處理技術Hadoop
針對以非結構化數據為主的高校校園網大數據技術處理技術比較有代表性的是Hadoop。Hadoop[3]是一種開源的對大規模數據進行分布式處理的技術框架,在處理大數據中非結構化數據有著性能和成本方面的優勢。
Apache Hadoop是一個用Java語言實現的軟件框架,在由大量計算機組成的集群中運行海量數據的分布式計算,它可以讓應用程序支持上千個節點和PB級別的數據。Hadoop是項目的總稱,主要是由分布式存儲(HDFS)、分布式計算(MapReduce)等組成。
1.HDFS簡介
HDFS(Hadoop Distributed File System)是一個高度容錯性的分布式文件系統,能提供高吞吐量的數據訪問,非常適合大規模數據集上的應用,并且可以運行于廉價的機器集群上。HDFS是以默認大小為64MB的酷愛作為存儲和處理數據的邏輯單元,使用這種抽象分塊的優點是可以存儲任意大的文件,而不會受到網絡中單節點磁盤大小的限制,另外一個優點是使用抽象塊作為操作單元可以簡化存儲子系統。HDFS體系結構包括元數據節點(NameNode)和數據節點(DataNode)兩類節點。NameNode可以看作是分布式文件系統中的管理者,DataNode是文件存儲的基本單元。它在本地文件系統中存儲文件塊,保存了文件塊的meta-data,同時周期性地發送所有存在的文件塊的報告給NameNode。存儲文件系統的Metadata主要負責管理文件系統的命名空間,集群配置信息,存儲塊的復制。Client就是需要獲取分布式文件系統文件的應用程序。
2.MapReduce簡介
Map(映射)和Reduce(化簡),采用分而治之思想,先把任務分發到集群的多個節點上并行計算,然后再合并計算結果,從而得到最終計算結果。多節點計算,所涉及的任務調度、負載均衡、容錯處理等,都由MapReduce框架完成,不需要編程人員關心這些內容,減輕了使用者的負擔,提高了分布式資源的利用率。Map階段主要過程是:首先主節點將輸入語句進行劃分,得到子問題集。然后將這些子問題分配給工作節點,如果本次劃分的子問題不能由一個工作節點在一定時間內完成,工作節點將繼續對語句進行劃分,直到得到的子問題可以由一個工作節點完成為止,最終形成樹狀結構,計算完成后,按樹形結構逆序返回,得到一個輸出結果。Reduce階段是把Map輸出集按照一定的方式歸并,并輸出最終結果。
基于Hadoop的高校校園網絡設計
在大數據時代,校園網中的軟件、存儲和計算基礎設施必須能夠接收、驗證和分析大量的數據;校園網絡體系結構[4]和組件必須足夠靈活,以適應和整合多功能需求的大數據變量。軟件定義和融合技術將成為大數據基礎設施的關鍵技術。對于網絡層[5]來說,軟件定義網絡將會成為最好的解決方式。
1.SND簡介
因特網的高速發展可以歸結于細腰的TCP/IP架構和開放的應用層軟件設計,但從網絡核心來講,由于有專有的硬件設備和操作系統,網絡在很大程度上是封閉的SDN[6](軟件定義網絡),旨在實現數據平面節點控制的虛擬化。SDN的行業定義將得以擴展,并從數據中心領域分離出來,為服務提供商降低成本、拓展商業模式帶來全新商機。SDN將控制功能從傳統的分布式網絡設備中遷移到可控的計算設備中,使得底層的網絡基礎設施能夠被上層的網絡服務和應用程序所抽象,最終通過開放可編程的軟件模式來實現網絡的自動化控制功能。OpenFlow實現了SDN可編程網絡的思想,代表了SDN技術的實現原型和部署實例。但從整個SDN架構來看,OpenFlow特指控制平面和數據平面的某一種通信協議。下頁圖描述了SDN架構的邏輯視圖,主要分為基礎設施層、控制層和應用層。基礎設施層表示網絡的底層轉發設備,包含了特定的轉發面抽象(如OpenFlow交換機中流表的匹配字段設計)。中間的控制層集中維護網絡狀態,并通過南向接口(控制和數據平面接口,如OpenFlow)獲取底層基礎設施信息,同時為應用層提供可擴展的北向接口。目前,ONF仍在制定和完善南向接口OpenFlow協議,面向應用的可編程北向接口仍處在需求討論階段。應用層根據網絡不同的應用需求,調用控制層的北向接口,實現不同功能的應用程序。通過這種軟件模式,網絡管理者能夠通過動態的SDN應用程序來配置、管理和優化底層的網絡資源,從而實現靈活、可控的網絡,這也是SDN開放性和可編程性最重要的體現。
在SDN的這種三層架構下,高校校園網絡的運行維護僅需通過軟件的更新來實現網絡功能的升級,網絡配置將通過網絡服務和應用程序的形式直接得到部署,網絡管理者無須再針對每一個硬件設備進行配置或者等待網絡設備廠商硬件的發布,從而加速網絡部署周期。同時,SDN降低了網絡復雜度,使得網絡設備從封閉走向開放,底層的網絡設備能夠專注于數據轉發而使得功能簡化,有效降低了網絡構建成本。另外,傳統網絡中的結點只能通過局部狀態和分布式算法來實現數據轉發,因而很難達到最優性能。SDN通過軟件來實現集中控制,使得網絡具備集中協調點,因而能夠通過軟件形式發揮最優性能,從而加速網絡創新周期。
2.SND的實現方式
實現SDN有多種方式,而近年來在SDN的實現方式中,OpenFlow最為流行,它以良好的靈活性、規范性被廣泛應用,成為SDN事實上的標準。OpenFlow將傳統的由交換機/路由器控制的報文轉發過程轉換為由控制器(Controller)和OpenFlow交換機(OpenFlow Switch)共同完成,從而實現路由控制和數據轉發的分離。通過將控制權從交換機/路由器中分離出來,網絡管理者可以借助自定義的策略來控制網絡中數據流的走向及行為。這種控制權與交換設備的解耦合為網絡帶來了更大的靈活性和可控性。與此同時,數據中心網絡在處理大數據時需要更加靈活的計算能力。因此,其資源配置也對網絡平臺提出了新的要求。網絡平臺連接著服務器、存儲等各類數據中心設備。數據中心內的數據網絡、計算網絡和存儲網絡正在向融合與統一的方向發展。由于大數據的“4V”特性,要求高校數據中心數據讀取的速度要快,只有網絡層次越簡單,處理速度才越快,因此高校數據中心網絡應由三層架構向兩層架構(TOR—核心)演變。云計算數據中心發展的重要引擎就是以太網融合和虛擬化的需求驅動著增強以太網的發展,而萬兆以太網則在推動數據中心橋接(Data Center Bridging,DCB)網絡進行融合。
基于Hadoop的高校校園網絡優化
一個有彈性的高校校園網絡對Hadoop集群非常重要。對Hadoop集群具有重要影響的網絡特性,以其影響程度從大到小依次排序為:網絡可用性和彈性、Burst流量突發處理和隊列深度、網絡過載比、Datanode網絡接入和網絡延遲。
1.網絡可用性和彈性
要部署一個高冗余性和可擴展的網絡,支持Hadoop集群的增長。在Datanode之間部署多條鏈路的技術要比那些有單點失效或兩點失效的技術要好。交換機和路由器已經在業界被證明能夠為服務器提供網絡可用性。
2.Burst流量突發處理和隊列深度
HDFS的有些操作和MapReduce Job會產生突發流量,如向HDFS加載文件或者把結果文件寫入HDFS都需要通過網絡。網絡如果處理不了突發流量,就會丟棄數據包,所以適當的緩存可以緩解突發流量的影響。確保選擇使用緩存和隊列的交換機和路由器,來有效處理流量突發。
3.網絡過載比
一個好的網絡設計需要考慮到網絡中關鍵節點的擁塞情況。一個ToR交換機從服務器接收20Gbps的數據,但是只有2個1Gbps的上聯口會造成數據包丟失(10:1的過載比),嚴重影響集群的性能。過度配置的網絡的價格又非常昂貴。一般情況下,服務器接入層可以接受的過載比在4:1左右,接入層和匯聚層之間,或者核心層的過載比在2:1左右。
4.Datanode網絡接入
要基于集群工作負荷來推薦帶寬配置。一般集群中的節點有1到2根1GB的上聯口,是否選擇10Gbps的服務器要權衡價格和性能。
5.網絡延遲
交換機和路由器延遲的變化對集群性能的影響有限。相比網絡延遲,應用層延遲對任務的影響比例更大。但是網絡的延遲會對應用系統造成潛在的影響,如造成不必要的應用切換等。
小結
大數據是智慧校園網發展的新助推器,大數據的技術、工具、方法還將不斷發展,高校網絡也會隨之不斷演進。在這場剛剛開始的高校大數據信息革命中,高校網絡應該盡早與時俱進。高校校園網今后的升級與規劃,要充分認識大數據的重要性,充分發揮大數據的優勢,為智慧高校的實現提供更加有力、更加精準的支持。
參考文獻:
[1]孫其偉,陸春.大數據在高校中的應用研究[J].中國教育網絡,2014(1):63-65.
[2]孟小峰,慈祥.大數據管理:概念、技術與挑戰[J].計算機研究與發展,2013(1):146-169.
[3]郝樹魁.Hadoop HDFS和MapReduce架構淺析[J].郵電設計技術,2012,(7):37-42.
[4]徐欣欣.大數據時代高校信息系統建設的探討[J].信息與電腦,2013,24(4):120-121.
[5]鄧自立.云計算中的網絡拓撲設計和Hadoop平臺研究[J].中國科學技術大學學報,2009.
[6]左青云,陳鳴,趙廣松,等.基于OpenFlow的SDN技術研究[J].軟件學報,2013(3):1079-1095.