胡雅祺,王海豐,彭鑫
(海南熱帶海洋學院 計算機科學與技術學院,海南 三亞572022)
得益于信息技術的興起及發展,信息獲取方式,記錄手段及存儲媒質都發生了質的變化,因此產生的數據正以前所未有的速度飛快增長和累積。隨著數據的大爆炸,數以萬計的數據信息已成為一種戰略資源,而大數據分析的目的就是從這些數據中挖掘信息、分析趨勢、提供決策支持?!按髷祿奔夹g將是未來高校教育領域最重要的變革手段。
隨著教學信息化的發展,絕大多數的高等院校都在通過不同的信息系統進行辦公處理,教學數據不斷在累積更新。在教學數據中,學生相關信息的數據存量也以幾何倍數增加。在這些數據中,數量不僅僅指的是數據本身的絕對數量大,還包括了數據的全面性,完整性及綜合性。以成績數據為例,現高校對學生的成績考核已不僅僅是期末成績為主,更加注重過程化考核,其中有學生學習行為數據(如考勤打卡,在線訪問次數等)、學生成績數據(如期末成績,作業成績,排名等等),以及學生交互數據(在線互動情況,討論內容,發貼次數等等)。大數據技術對數據分析處理的速度對提高教學反饋效率有所幫助,通過數據分析可以及時得知異常信息,使教學相關人員及早了解,跟蹤。教學信息海量,但存在大量不相關信息。因此需要對教學數據作預測分析,判斷趨勢及規律,雖然單位數據的價值密度在不斷降低,但是數據的整體價值在提高。結合大數據的4V特點,大數據技術可以為教學數據提供可預測性,可趨勢化的客觀分析,通過分析真實有效的數據幫助教師和學校教學相關部門形成科學和快速的決策。
本文提出一種高校學生成績分析大數據平臺,為高校教學數據分析提供一種新思路,在高校建立成績分析的大數據平臺,利用海量的成績數據進行數據挖掘、清洗、分析,為教學部門提供決策依據,為教師和學生提供更智能、便捷的信息化服務。
基于 Hadoop 分布式平臺的學生成績數據分析平臺系統總體分為三個部分:數據采集,數據處理以及數據展示。學生成績數據分析平臺主要的功能是實現學生各類學習數據的收集,并根據教學需求對數據進行挖掘分析,生成趨勢化的可視圖表,便于發現總結學生成績,以及實時的發現異常信息。學生成績數據平臺總體功能模塊圖如圖1所示。

圖1 總體功能模塊圖
本系統測試的實驗數據來源于計算機公共基礎課程的學生成績系統、在線答題系統等數據。計算機公共基礎課程成績數據體量大,類型復雜。其中結構化數據主要存儲在 Oracle、Sqlserver、Mysql等數據庫中,各個教學平臺中的數據基本以結構化數據為主;非結構化數據有些以 blob存儲在數據庫中或直接存儲在文件系統中。
平臺每一天采集一次數據,為了分類方便,用當日時間作為目錄來劃分采集到的數據,對Flume進行配置。由于Hadoop技術處理海量的小文件有所欠缺,故平臺對Flume進行編輯控制,使Flume每天傳遞一次數據。數據采集的流程是由Flume監聽數據源,再將數據源新產生的數據傳遞到HDFS上儲存。
通過對采集到的學生成績數據進行研究分析,發現關于學生的成績數據記錄中存在很多沒有意義的數據,因此需要對原始的成績數據記錄做如下預處理:考慮到Hadoop的性能,首先對數據進行清洗,使用 MapReduce對源數據進行預處理,將處理好的數據放入到 HDFS中。結合本平臺的特點,設計方案中采用MapReduce算法,數據清洗是通過編寫的MapReduce程序來讀取HDFS上的數據文件,去掉無用的字段、亂碼,將數據整理干凈。還要對一些缺失值數據進行清洗,利用學生的成績不為空的理想情況下,數據集中的每條記錄都應該是完整的。在數據集中,若某記錄的屬性值被標記為空白或null等,則認為該記錄存在缺失值,是不完整的數據,MapReduce程序對于這些數據進行刪除處理。
對處理過的成績數據導入到 Hive 數據倉庫中并按天進行分區,并通過 HQL 語言對 Hive 數據倉庫中的數據進行查詢統計分析。然后配置crontab定時器文件,每日夜間無數據訪問時定時運行。
最后將 Hive進行查詢分析后的結果數據導出到 Mysql 數據庫中用于學生的成績分析模塊。數據處理整體流程圖如圖2所示。

圖2 數據處理整體流程圖
數據可視化是目前最流行的一種方式,將復雜的數據信息轉換成易于理解,易于消化的圖表展示,直接而客觀的展現數據處理的結果。
計算機公共基礎課程是一門注重實踐應用能力培養的課程,而學生掌握其應用能力的方式就是“多練”,以計算機公共基礎課程作業數據為例,通過 Hadoop 搭建的平臺對學生的行為數據進行記錄觀測,對現有的學生作業答題數據進行分析,通過獲取學生登錄平臺的IP地址,登錄次數統計每日學生登錄平臺的練習次數來了解學生的答題頻率以及衡量系統的訪問量。機器IP的具體訪問次數數據以降序排列,如圖3所示。

圖3 學生訪問作業系統次數
該數據分析平臺不僅僅是對學生的學習行為數據進行分析,還可根據學生的成績數據分析得到不同學科的及格人數以及不同班級學生的完成情況等,統計后的數據能讓老師了解每個班級的完成情況以及班級內同學的完成情況以此來判斷整體教學情況,不同學科的及格人數統計如圖4所示;不同學科的學生通過率如圖5所示;班級完成情況人數統計如圖6所示;班級作業完成率統計如圖7所示。

圖4 不同學科及格人數統計

圖5 不同學科的學生通過率

圖6 班級完成情況人數統計

圖7 班級作業完成率統計
基于大數據的學生成績數據分析平臺是在目前較流行的Hadoop開源平臺下進行的。以本校計算機公共基礎課程的實際情況為例,設計了基于Hadoop 的大數據平臺,并搭建集群環境,進行學生成績系統數據和Hive之間的數據交互測試,為進一步展開大數據分析做好準備,為本校建設成績分析平臺提出一種設計方案,為高校教學分析建設提供一種新思路。利用這些“大數據”建設結構和非結構化的數據分析平臺,通過平臺利用大數據手段將大量的學生學習行為數據,成績數據,交互數據等轉換成有效的教學信息,把數據深層次的價值挖掘出來,通過圖表的可視化展示訊速的發現影響學生學習成績的關鍵因素,幫助教師與相關部門及時進行教學干預,輔助教學決策,并可形成趨勢化報告,以促使學習提高學習質量,督促教師優化教學方式,實現教學管理、教學過程、自主學習的三合一融合。