基於Hadoop平臺的課程雲系統開發研究論文

基於Hadoop平臺的課程雲系統開發研究論文

  摘要:隨著資訊化教學的推進, 高校在資訊化教學的發展和進步, 已積累大量課程資源和課程資料, 如何在這些課程資源資料進行有效儲存管理, 並在此基礎上挖掘出有意義的資料, 對課程資源進行關聯歸類, 形成課程體系智慧學習, 成為目前高校課程大資料的主要研究物件。文章以高校計算機類課程為基礎, 搭建Hadoop叢集環境, 研究基於Hadoop平臺的課程雲平臺, 為高校課程資訊化建設提供方案。

  關鍵詞:Hadoop; 課程雲平臺; 智慧學習;

  近年來隨著網際網路技術, 雲計算技術, 大資料技術, 物聯網技術等各方面的迅速發展, 各個行業已經進入大資料的資訊化時代。大資料技術逐漸以應用為中心的資訊化系統轉變為以資料為中心, 大資料提供大規模資料的儲存、管理、處理、挖掘等技術, 更進一步加快了資訊化的發展。

  高校在資訊化教學、資訊化課程建設方面已發展多年, 累積了大量課程資源和課程資料, 如何在這些課程資源資料進行有效儲存管理, 並在此基礎上挖掘出有意義的資料, 對課程資源進行關聯歸類, 形成課程體系智慧學習。Hadoop[1]大資料技術的發展與成熟, 正好提供了一個非常好的技術平臺;因此應用Hadoop平臺技術, 來構建一個課程雲平臺系統是非常有意義的。

  1、Hadoop

  Hadoop平臺是Apache基金會所開發釋出的分散式系統資料儲存平臺, Hadoop平臺提供了高效、可靠、大規模資料分散式處理和儲存能力, 在Hadoop平臺下一個控制節點控制整個叢集的執行處理, 協調各個資料節點間資料管理和計算任務[2].Hadoop的核心由分散式檔案處理HDFS, Map Reduce平行計算框架和HBase分散式資料庫系統組成。Hadoop結構如圖1所示。

  2、課程雲平臺系統

  傳統資訊化課程的建設, 往往只關注某一門課程知識體系的構建和知識點的建設, 容易忽略整個知識體系的構建, 及該課程與其他課程間的知識點關聯, 例如, 計算機類課程中某一門專業課程, 其背後又關聯到多門專業基礎課程的應用[3] (以計算機專業中“Java EE程式設計”課程為例, 如圖2所示) , 專業課程間又存在交叉和先後順序, 以往課程建設都是任課教師基於本門課程的相關資源建設, 課程與課程間無銜接、無關聯, 這樣就形成課程上的資訊孤島, 不利於學生學習。所以運用Hadoop大資料技術, 儲存特性、覆蓋性和靈活性, 構建開發一個課程雲平臺, 將以往的課程教學資源整合起來。

  應用Hadoop大資料技術, 以計算機專業中某一門專業核心課程為例構建起該課程的課程雲平臺, 透過課程雲平臺構建起該關聯課程體系, 將該課程所涉及的多門課程有序地融合起來, 形成完善的課程雲平臺。

  同時透過Hadoop技術海量資料管理功能, 對課程中每個知識點進行資料深度挖掘, 提供課程間知識點快速檢索和訪問。也對各個課程中所涉及的影片圖片各類資源進行有效儲存管理。

  雲課程平臺也與實踐應用對接, 將實訓專案引入到雲平臺中, 透過雲課程平臺, 對專案進行分解, 將專案中所應用的各知識點與各課程進行關聯, 讓雲課程平臺引導學生進行專案實訓, 對專案中所涉及的知識點能快速地檢索訪問, 如圖3所示。

  從圖3可以看出, 一門課程的背後往往涉及多門課程知識體系的資料支撐, 而一個學科的知識體系會涉及更加複雜、龐大的課程體系資料的支撐。而這些課程資料中又包含有各型別的.結構化和非結構的資料, 因此使用Hadoop平臺實現是非常可行的。

  3、課程雲平臺的設計

  本課題應用Hadoop平臺技術, 針對高校課程資訊化的特點, 構建課程雲平臺系統, 期系統結構如下:資料來源、資料清洗與整合、分散式資料儲存、資料分析與挖掘, Hadoop平臺管理、應用程式介面 (Application Program Interface, API) 平臺管理等, 其結構如圖4所示。

  課程資源平臺:指目前高校現有課程建設平臺, 包括現有平臺上的各類課程資源資訊, 如結構化資料和非結構化資料, 結構化資料主要是現有課程資源的資料庫資訊, 例如 (My SQL資料庫資料、Oracle資料庫中資料等) ;非結構化資料主要包含課程資源中的各類資料檔案、圖片、音訊、影片資源等。

  資料採集:包含資料採集, 資料清洗, 資料整合等, 指對現有資料資源使用Sqoop等技術將課程資源平臺中的結構化資料匯入到Hadoop的HDFS和Hive進行儲存, 結構化資料可以使用表或者Key-Value方式存放, 非結構化資料則以目錄檔案的方式進行存放。

  大資料分析:指使用Hadoop中Map Reduce或Spark技術等, 對Hadoop平臺中的資料進行流式分析計算或離線分析計算, 產生出各個知識點間的關聯及學習情境分析等。

  智慧分析與視覺化:使用Tableau, D3, Flot等技術[4], 利用機器學習、資料探勘演算法等對課程資料進行深層次的分析, 並以圖表的方式直觀的展示給師生。

  API介面層:提供平臺各類資料的訪問介面, 以便Web APP或移動APP等應用系統可以從平臺方便地獲取課程資訊資源, 為平臺的二次開發提供便利[5].

  4、實現過程

  實現環境:這裡選用了5臺伺服器作為Hadoop平臺實現基礎, 其配置如表1所示。

  伺服器軟體執行環境如表2所示。

  (1) 執行環境:首先配置每臺伺服器的SSH無密碼登入, 然後配置伺服器上Java執行環境, 最後配置Hadoop執行環境。配置完成後在Name Node上輸入start-all.sh命令, 啟動Hadoop.

  (2) 資料遷移:資料遷移可分為結構化資料遷移和非結構化資料遷移, 其中結構化資料遷移匯入過程可分成3步。第一, 將My SQL資料先匯入到HDFS中;第二, 在Hive中建立表結構;第三, 將HDFS中資料載入到Hive已建立的表中。非結構化資料可以轉化文字化與HBase整合進行遷移處理[6].

  5、執行測試

  課程雲平臺的建設主要是將各類分散的課程資源進行整合挖掘, 使用Hadoop平臺技術對課程資源資料進行管理、深度挖掘、處理等。在Hadoop平臺下既節省了伺服器資源又提高教學資源的利用率, 並對課程進行深度挖掘, 實現智慧學習。課程雲平臺Web APP端使用Spring MVC框架開發、Tomcat服務、JSP頁面等技術, 執行效果如圖5所示。

  6、結語

  本文以Hadoop技術為基礎, 以高校計算機類課程為研究案例, 研究基於Hadoop平臺的課程雲平臺, 透過對Hadoop平臺的技術特點及搭建配置過程, 以及開發方法等進行詳細論述, 為高校課程資訊化建設提供思路。

  參考文獻

  [1]陳一龍。基於雲平臺的英語專業核心課程數字化教學資源的共建共享機制研究[J].荊楚學術, 2017 (9) :5.

  [2]王鵬。雲計算的關鍵技術與應用例項[M].北京:人民郵電出版社, 2010.

  [3]楚京予。MOOC平臺課程資源組織模型與體系架構研究[D].合肥:合肥工業大學, 2016.

  [4]王潤, 周先進。雲課程的實施困境及其突破[J].教育發展研究, 2015 (12) :34-39.

  [5]徐毅。湖北地方課程教育雲資源的設計與應用實踐[D].武漢:華中師範大學, 2015.

  [6]王玥。雲課程平臺聚合社會化媒體的網路教學研究[D].南京:南京郵電大學, 2014.

最近訪問