孔德麗,屈會雪,卞志勇
(南京機電職業技術學院,江蘇 南京 211135)
目前,高校數據中心建設主要分為兩種形式:一是直接使用傳統服務器搭建數據中心的存儲及應用。服務器的架構價格高,能源消耗高,資源利用率偏低。二是采用專業的VMware虛擬化軟件對IT基礎設施虛擬化成資源池供各類應用部署。
基于Hadoop的高職院校大數據平臺[1-2],避免了傳統數據中心的各種弊端,不僅可以充分發揮集群的威力,還能夠充分挖掘大數據中的隱藏信息,在職業院校決策、管理與服務中可以得到更廣泛的應用,以提高學院的工作效率。
本項目是在linux開發環境下開發的,大數據云平臺總體架構及各分平臺的設計思路及大數據云平臺總體架構設計如圖1所示。

圖1 大數據云平臺總體架構設計
以Hadoop為基礎構建的大數據云平臺,可以很方便地與現有各類業務信息系統實現集成。
1) 結構化數據的存儲與設計
高職院校現有數據庫大多為關系型數據庫,HBase數據庫對結構化數據支持不足。為解決這個問題,以Apache開源軟件開發的Hive數據倉庫工具作為接口,將結構化的數據文件映射為HBase數據庫的一張表,并提供完整的SQL查詢功能。還可以將SQL語句轉換為MapReduce任務來運行,充分利用并行運算的速度優勢。使用Hive,不僅解決了結構化數據的存儲問題,而且提高了數據查詢和存儲的速度,提高了工作效率。下面以一卡通信息系統中常用的結構化數據為例,針對結構化數據,使用Hive數據倉庫平臺,實現數據的存儲和查詢。結構化數據存儲設計如圖2所示。

圖2 結構化數據存儲設計
2) 非結構化數據的存儲設計
在視頻教學系統中會產生大量視頻或圖片文件,常規存儲方式速度太慢。以典型的7200r/min的硬盤為例,其最大傳輸速度約為22.3MB/s,這極大地限制了映像文件的存儲和查詢速度,而以分布式存儲能解決這個問題。本文以視頻教學系統視頻和圖片等文件存儲為例,闡述如何解決非結構化數據存儲過程中的核心問題。
非結構化數據存儲系統設計在視頻教學系統中,單個課堂教學視頻文件往往會有數百兆大小的文件。以HBase存儲保證數據安全性的同時不僅可以實現數據的快速查詢和存儲,還能實現對歷史視頻或圖片文件的快速查詢。非結構化數據存儲系統架構設計如圖3所示。

圖3 非結構化數據存儲系統架構設計
3) 機器學習平臺的設計
以Hadoop為基礎的分布式計算對大數據的機器學習具有更高的效率。在本項目中使用開源項目Mahout提供的機器學習工具[3],開發機器學習模塊,在此模塊基礎上采用機器學習的結果為教學工作者提供建議,優化教學流程,還可以作為數據挖掘的基礎為更高級功能提供基礎架構?;贖adoop的機器學習平臺如圖4所示。

圖4 機器學習平臺設計
機器學習的系統底層是Hadoop框架,從HBase和Hive中獲取數據,通過MapReduce進行分布式計算提供機器學習算法,利用Mahout數據進行整合、清理,然后進行機器學習[4]。獲取數據之后,使用Mahout提供的算法,這些算法包括樸素貝葉斯分類、支持向量機、隨機森林等分類算法和EM聚類、K-means等聚類算法,利用其API實現對數據中心數據的有效利用。
數據共享交換平臺主要包括以下幾個部分:數據交換引擎;安全管理服務;系統管理服務;Web服務管理;Service接口;中心數據庫。將分散建設的若干應用信息進行整合,進行數據傳輸與共享。此平臺可以接入學院所有業務系統的數據,在中心數據庫匯聚,并為學院各部門提供數據業務協同功能,推動智慧校園建設。
基于Hadoop構建的學院大數據云平臺,對結構化與非結構化數據存儲的優化設計,不僅滿足了學院大規模業務數據存儲的需求,還提供了強大的云計算能力。學院數據中心存儲了教務信息、學工信息、科研信息、招生信息、就業信息等各類業務系統的海量信息,利用這些信息可以對教學改革、科研方向規劃、招生宣傳、專業設置、就業導向等提供數據支持,輔助學院高層領導決策。