胡雅祺,王海豐,彭鑫
(海南熱帶海洋學(xué)院 計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院,海南 三亞572022)
得益于信息技術(shù)的興起及發(fā)展,信息獲取方式,記錄手段及存儲媒質(zhì)都發(fā)生了質(zhì)的變化,因此產(chǎn)生的數(shù)據(jù)正以前所未有的速度飛快增長和累積。隨著數(shù)據(jù)的大爆炸,數(shù)以萬計(jì)的數(shù)據(jù)信息已成為一種戰(zhàn)略資源,而大數(shù)據(jù)分析的目的就是從這些數(shù)據(jù)中挖掘信息、分析趨勢、提供決策支持?!按髷?shù)據(jù)”技術(shù)將是未來高校教育領(lǐng)域最重要的變革手段。
隨著教學(xué)信息化的發(fā)展,絕大多數(shù)的高等院校都在通過不同的信息系統(tǒng)進(jìn)行辦公處理,教學(xué)數(shù)據(jù)不斷在累積更新。在教學(xué)數(shù)據(jù)中,學(xué)生相關(guān)信息的數(shù)據(jù)存量也以幾何倍數(shù)增加。在這些數(shù)據(jù)中,數(shù)量不僅僅指的是數(shù)據(jù)本身的絕對數(shù)量大,還包括了數(shù)據(jù)的全面性,完整性及綜合性。以成績數(shù)據(jù)為例,現(xiàn)高校對學(xué)生的成績考核已不僅僅是期末成績?yōu)橹?,更加注重過程化考核,其中有學(xué)生學(xué)習(xí)行為數(shù)據(jù)(如考勤打卡,在線訪問次數(shù)等)、學(xué)生成績數(shù)據(jù)(如期末成績,作業(yè)成績,排名等等),以及學(xué)生交互數(shù)據(jù)(在線互動(dòng)情況,討論內(nèi)容,發(fā)貼次數(shù)等等)。大數(shù)據(jù)技術(shù)對數(shù)據(jù)分析處理的速度對提高教學(xué)反饋效率有所幫助,通過數(shù)據(jù)分析可以及時(shí)得知異常信息,使教學(xué)相關(guān)人員及早了解,跟蹤。教學(xué)信息海量,但存在大量不相關(guān)信息。因此需要對教學(xué)數(shù)據(jù)作預(yù)測分析,判斷趨勢及規(guī)律,雖然單位數(shù)據(jù)的價(jià)值密度在不斷降低,但是數(shù)據(jù)的整體價(jià)值在提高。結(jié)合大數(shù)據(jù)的4V特點(diǎn),大數(shù)據(jù)技術(shù)可以為教學(xué)數(shù)據(jù)提供可預(yù)測性,可趨勢化的客觀分析,通過分析真實(shí)有效的數(shù)據(jù)幫助教師和學(xué)校教學(xué)相關(guān)部門形成科學(xué)和快速的決策。
本文提出一種高校學(xué)生成績分析大數(shù)據(jù)平臺,為高校教學(xué)數(shù)據(jù)分析提供一種新思路,在高校建立成績分析的大數(shù)據(jù)平臺,利用海量的成績數(shù)據(jù)進(jìn)行數(shù)據(jù)挖掘、清洗、分析,為教學(xué)部門提供決策依據(jù),為教師和學(xué)生提供更智能、便捷的信息化服務(wù)。
基于 Hadoop 分布式平臺的學(xué)生成績數(shù)據(jù)分析平臺系統(tǒng)總體分為三個(gè)部分:數(shù)據(jù)采集,數(shù)據(jù)處理以及數(shù)據(jù)展示。學(xué)生成績數(shù)據(jù)分析平臺主要的功能是實(shí)現(xiàn)學(xué)生各類學(xué)習(xí)數(shù)據(jù)的收集,并根據(jù)教學(xué)需求對數(shù)據(jù)進(jìn)行挖掘分析,生成趨勢化的可視圖表,便于發(fā)現(xiàn)總結(jié)學(xué)生成績,以及實(shí)時(shí)的發(fā)現(xiàn)異常信息。學(xué)生成績數(shù)據(jù)平臺總體功能模塊圖如圖1所示。
圖1 總體功能模塊圖
本系統(tǒng)測試的實(shí)驗(yàn)數(shù)據(jù)來源于計(jì)算機(jī)公共基礎(chǔ)課程的學(xué)生成績系統(tǒng)、在線答題系統(tǒng)等數(shù)據(jù)。計(jì)算機(jī)公共基礎(chǔ)課程成績數(shù)據(jù)體量大,類型復(fù)雜。其中結(jié)構(gòu)化數(shù)據(jù)主要存儲在 Oracle、Sqlserver、Mysql等數(shù)據(jù)庫中,各個(gè)教學(xué)平臺中的數(shù)據(jù)基本以結(jié)構(gòu)化數(shù)據(jù)為主;非結(jié)構(gòu)化數(shù)據(jù)有些以 blob存儲在數(shù)據(jù)庫中或直接存儲在文件系統(tǒng)中。
平臺每一天采集一次數(shù)據(jù),為了分類方便,用當(dāng)日時(shí)間作為目錄來劃分采集到的數(shù)據(jù),對Flume進(jìn)行配置。由于Hadoop技術(shù)處理海量的小文件有所欠缺,故平臺對Flume進(jìn)行編輯控制,使Flume每天傳遞一次數(shù)據(jù)。數(shù)據(jù)采集的流程是由Flume監(jiān)聽數(shù)據(jù)源,再將數(shù)據(jù)源新產(chǎn)生的數(shù)據(jù)傳遞到HDFS上儲存。
通過對采集到的學(xué)生成績數(shù)據(jù)進(jìn)行研究分析,發(fā)現(xiàn)關(guān)于學(xué)生的成績數(shù)據(jù)記錄中存在很多沒有意義的數(shù)據(jù),因此需要對原始的成績數(shù)據(jù)記錄做如下預(yù)處理:考慮到Hadoop的性能,首先對數(shù)據(jù)進(jìn)行清洗,使用 MapReduce對源數(shù)據(jù)進(jìn)行預(yù)處理,將處理好的數(shù)據(jù)放入到 HDFS中。結(jié)合本平臺的特點(diǎn),設(shè)計(jì)方案中采用MapReduce算法,數(shù)據(jù)清洗是通過編寫的MapReduce程序來讀取HDFS上的數(shù)據(jù)文件,去掉無用的字段、亂碼,將數(shù)據(jù)整理干凈。還要對一些缺失值數(shù)據(jù)進(jìn)行清洗,利用學(xué)生的成績不為空的理想情況下,數(shù)據(jù)集中的每條記錄都應(yīng)該是完整的。在數(shù)據(jù)集中,若某記錄的屬性值被標(biāo)記為空白或null等,則認(rèn)為該記錄存在缺失值,是不完整的數(shù)據(jù),MapReduce程序?qū)τ谶@些數(shù)據(jù)進(jìn)行刪除處理。
對處理過的成績數(shù)據(jù)導(dǎo)入到 Hive 數(shù)據(jù)倉庫中并按天進(jìn)行分區(qū),并通過 HQL 語言對 Hive 數(shù)據(jù)倉庫中的數(shù)據(jù)進(jìn)行查詢統(tǒng)計(jì)分析。然后配置crontab定時(shí)器文件,每日夜間無數(shù)據(jù)訪問時(shí)定時(shí)運(yùn)行。
最后將 Hive進(jìn)行查詢分析后的結(jié)果數(shù)據(jù)導(dǎo)出到 Mysql 數(shù)據(jù)庫中用于學(xué)生的成績分析模塊。數(shù)據(jù)處理整體流程圖如圖2所示。
圖2 數(shù)據(jù)處理整體流程圖
數(shù)據(jù)可視化是目前最流行的一種方式,將復(fù)雜的數(shù)據(jù)信息轉(zhuǎn)換成易于理解,易于消化的圖表展示,直接而客觀的展現(xiàn)數(shù)據(jù)處理的結(jié)果。
計(jì)算機(jī)公共基礎(chǔ)課程是一門注重實(shí)踐應(yīng)用能力培養(yǎng)的課程,而學(xué)生掌握其應(yīng)用能力的方式就是“多練”,以計(jì)算機(jī)公共基礎(chǔ)課程作業(yè)數(shù)據(jù)為例,通過 Hadoop 搭建的平臺對學(xué)生的行為數(shù)據(jù)進(jìn)行記錄觀測,對現(xiàn)有的學(xué)生作業(yè)答題數(shù)據(jù)進(jìn)行分析,通過獲取學(xué)生登錄平臺的IP地址,登錄次數(shù)統(tǒng)計(jì)每日學(xué)生登錄平臺的練習(xí)次數(shù)來了解學(xué)生的答題頻率以及衡量系統(tǒng)的訪問量。機(jī)器IP的具體訪問次數(shù)數(shù)據(jù)以降序排列,如圖3所示。
圖3 學(xué)生訪問作業(yè)系統(tǒng)次數(shù)
該數(shù)據(jù)分析平臺不僅僅是對學(xué)生的學(xué)習(xí)行為數(shù)據(jù)進(jìn)行分析,還可根據(jù)學(xué)生的成績數(shù)據(jù)分析得到不同學(xué)科的及格人數(shù)以及不同班級學(xué)生的完成情況等,統(tǒng)計(jì)后的數(shù)據(jù)能讓老師了解每個(gè)班級的完成情況以及班級內(nèi)同學(xué)的完成情況以此來判斷整體教學(xué)情況,不同學(xué)科的及格人數(shù)統(tǒng)計(jì)如圖4所示;不同學(xué)科的學(xué)生通過率如圖5所示;班級完成情況人數(shù)統(tǒng)計(jì)如圖6所示;班級作業(yè)完成率統(tǒng)計(jì)如圖7所示。
圖4 不同學(xué)科及格人數(shù)統(tǒng)計(jì)
圖5 不同學(xué)科的學(xué)生通過率
圖6 班級完成情況人數(shù)統(tǒng)計(jì)
圖7 班級作業(yè)完成率統(tǒng)計(jì)
基于大數(shù)據(jù)的學(xué)生成績數(shù)據(jù)分析平臺是在目前較流行的Hadoop開源平臺下進(jìn)行的。以本校計(jì)算機(jī)公共基礎(chǔ)課程的實(shí)際情況為例,設(shè)計(jì)了基于Hadoop 的大數(shù)據(jù)平臺,并搭建集群環(huán)境,進(jìn)行學(xué)生成績系統(tǒng)數(shù)據(jù)和Hive之間的數(shù)據(jù)交互測試,為進(jìn)一步展開大數(shù)據(jù)分析做好準(zhǔn)備,為本校建設(shè)成績分析平臺提出一種設(shè)計(jì)方案,為高校教學(xué)分析建設(shè)提供一種新思路。利用這些“大數(shù)據(jù)”建設(shè)結(jié)構(gòu)和非結(jié)構(gòu)化的數(shù)據(jù)分析平臺,通過平臺利用大數(shù)據(jù)手段將大量的學(xué)生學(xué)習(xí)行為數(shù)據(jù),成績數(shù)據(jù),交互數(shù)據(jù)等轉(zhuǎn)換成有效的教學(xué)信息,把數(shù)據(jù)深層次的價(jià)值挖掘出來,通過圖表的可視化展示訊速的發(fā)現(xiàn)影響學(xué)生學(xué)習(xí)成績的關(guān)鍵因素,幫助教師與相關(guān)部門及時(shí)進(jìn)行教學(xué)干預(yù),輔助教學(xué)決策,并可形成趨勢化報(bào)告,以促使學(xué)習(xí)提高學(xué)習(xí)質(zhì)量,督促教師優(yōu)化教學(xué)方式,實(shí)現(xiàn)教學(xué)管理、教學(xué)過程、自主學(xué)習(xí)的三合一融合。