王 偉,劉 偉,崔海波,
( 1.同濟(jì)大學(xué) 計(jì)算機(jī)科學(xué)與技術(shù)系,上海 200092;2.湖北大學(xué) 計(jì)算機(jī)與信息工程學(xué)院,湖北 武漢430062;3.武漢理工大學(xué) 計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院,湖北 武漢 430070;4.湖北省教育信息化工程技術(shù)研究中心,湖北 武漢430062)
隨著計(jì)算思維的推廣、大數(shù)據(jù)時(shí)代的來(lái)臨、工程認(rèn)證的履行及新工科概念的提出,基于互聯(lián)網(wǎng)與云計(jì)算的工程實(shí)踐平臺(tái)的勢(shì)在必行,需要逐步重新構(gòu)建教育信息化基礎(chǔ)設(shè)施,以支持新一代工程實(shí)踐平臺(tái)的建設(shè)。
現(xiàn)有的傳統(tǒng)教育的基礎(chǔ)設(shè)施出現(xiàn)了諸如配置部署復(fù)雜、安全性難以滿足、軟件硬件升級(jí)成本高、機(jī)密數(shù)據(jù)分散等問(wèn)題,不便于數(shù)據(jù)的集中管理和維護(hù),需要逐步重新構(gòu)建基于云計(jì)算的教育信息化基礎(chǔ)設(shè)施,以支持下一代教育信息化公共服務(wù)平臺(tái)的建設(shè)。另一方面,大數(shù)據(jù)領(lǐng)域持續(xù)發(fā)展,各行各業(yè)都在積極地應(yīng)用大數(shù)據(jù)設(shè)施處理和分析數(shù)據(jù),為了適應(yīng)大數(shù)據(jù)時(shí)代的新狀況,大數(shù)據(jù)相關(guān)的理念、處理方法、操作的教學(xué)與實(shí)踐勢(shì)在必行。
近年來(lái),隨著實(shí)時(shí)互聯(lián)網(wǎng)、微服務(wù)、云端渲染、容器等技術(shù)和理念發(fā)展的不斷深入,軟件(software)形態(tài)將進(jìn)一步朝著云件(cloudware)形態(tài)的方向發(fā)展[1-2]。構(gòu)建基于云件服務(wù)的新一代大數(shù)據(jù)工程實(shí)訓(xùn)平臺(tái),簡(jiǎn)單來(lái)說(shuō),就是將所有實(shí)訓(xùn)軟件全部遷移到云端,并通過(guò)瀏覽器為終端用戶提供大數(shù)據(jù)實(shí)訓(xùn)服務(wù)。這為大規(guī)模重構(gòu)教育信息化基礎(chǔ)設(shè)施、為下一代教育信息化公共服務(wù)平臺(tái)帶來(lái)了新的方法和機(jī)遇[3]。
該實(shí)訓(xùn)平臺(tái)針對(duì)高校工科類實(shí)訓(xùn)場(chǎng)景,通過(guò)將傳統(tǒng)桌面軟件和大數(shù)據(jù)軟件云端化,使得用戶通過(guò)瀏覽器就可以方便使用Matlab、Hadoop等大型軟件環(huán)境,使得傳統(tǒng)軟件無(wú)需修改,即能做到為廣大師生提供大規(guī)模SaaS化的實(shí)訓(xùn)服務(wù)?;谠萍到y(tǒng)的大數(shù)據(jù)實(shí)踐平臺(tái)改變了傳統(tǒng)試驗(yàn)方式,節(jié)約了機(jī)房場(chǎng)地及試驗(yàn)設(shè)備,豐富了教學(xué)形式,簡(jiǎn)化了教學(xué)過(guò)程,提供了便捷高效的工程實(shí)踐環(huán)境。
目前,有云計(jì)算驅(qū)動(dòng)的教育信息化基礎(chǔ)設(shè)施的改造主要體現(xiàn)在虛擬化桌面上面。虛擬化桌面,即虛擬桌面基礎(chǔ)架構(gòu)(virtual desktop infrastructure,VDI),是近年來(lái)虛擬化技術(shù)由服務(wù)器虛擬化向桌面虛擬化延伸的一種技術(shù),是云計(jì)算的一種應(yīng)用模式。然而,隨著大規(guī)模教育信息化的推進(jìn),基于虛擬桌面的基礎(chǔ)設(shè)施難以滿足海量、輕量級(jí)、定價(jià)便宜甚至免費(fèi)的教育場(chǎng)景。教育不同于商業(yè)場(chǎng)景,對(duì)基礎(chǔ)設(shè)施的靈活性、即用即走、價(jià)格、海量部署、長(zhǎng)尾效應(yīng)等特性有著特殊的需求。因此,教育信息化的公共服務(wù)基礎(chǔ)設(shè)施不能按照目前既有的云計(jì)算基礎(chǔ)設(shè)施構(gòu)建的思路,需要一個(gè)全新的思路。軟件和應(yīng)用的輕量級(jí)虛擬化技術(shù)將成為一個(gè)可行的解決方案,它將是未來(lái)云環(huán)境下軟件的主要形態(tài),使得在任何時(shí)間、任何地方通過(guò)瀏覽器使用任何軟件成為可能。圖1展示了從傳統(tǒng)虛擬桌面到軟件上云方式的變革。
圖1 基于云件技術(shù)的軟件上云的方式
有了軟件上云,用戶可以一鍵使用部署好的軟件,以此提供大數(shù)據(jù)的基礎(chǔ)設(shè)施和環(huán)境,平臺(tái)采用微服務(wù)架構(gòu)設(shè)計(jì),具有較好的可擴(kuò)展性、容災(zāi)和靈活配置等特性,易于規(guī)?;渴稹M瑫r(shí),基于高校應(yīng)用場(chǎng)景,搭建教師管理系統(tǒng)和學(xué)生作業(yè)系統(tǒng),為課程學(xué)生提供工程軟件的訓(xùn)練,為面向工程設(shè)計(jì)與計(jì)算創(chuàng)新設(shè)計(jì)的學(xué)生提供學(xué)習(xí)和實(shí)踐,教師可以在平臺(tái)上直接布置作業(yè)、檢驗(yàn)作業(yè)。
該平臺(tái)基于新一代微服務(wù)架構(gòu)和自主研發(fā)的云件服務(wù)技術(shù),在互聯(lián)網(wǎng)、軟件服務(wù)、教育3個(gè)交叉領(lǐng)域進(jìn)行軟件服務(wù)創(chuàng)新。將傳統(tǒng)的PC桌面軟件(如Matlab、SPSS等)和服務(wù)器端分布式軟件(如Hadoop、Spark等)全部進(jìn)行云端化,使得用戶直接僅僅通過(guò)瀏覽器就可以訪問(wèn)這些軟件服務(wù)或編程環(huán)境,將大數(shù)據(jù)實(shí)訓(xùn)的各個(gè)環(huán)節(jié)連接到一起,最終做到大數(shù)據(jù)工程實(shí)訓(xùn)服務(wù)的觸手可及、 隨時(shí)可用、 秒級(jí)啟動(dòng)、 用完即走。
隨著云計(jì)算和虛擬化技術(shù)的興起,越來(lái)越多 的軟件逐漸把軟件主體放在云端,而客戶端只需要通過(guò)互聯(lián)網(wǎng)技術(shù)使用云端軟件的服務(wù)即可,使得軟件不再依賴于終端軟硬件資源,這樣的軟件形態(tài)稱為云件,更多地體現(xiàn)為一種服務(wù)[1-2]。
云件也是SaaS的一種服務(wù)方式,是通過(guò)互聯(lián)網(wǎng)技術(shù)使用云端的服務(wù),但是與傳統(tǒng)的SaaS服務(wù),例如網(wǎng)盤、郵箱和在線辦公相比,其主要差別在于傳統(tǒng)SaaS軟件往往是將桌面軟件進(jìn)行大量的改造,大部分需要相應(yīng)的客戶端程序,大量的計(jì)算還需要本地軟硬件的支持,比如某些在線制圖的工具,將傳統(tǒng)桌面制圖軟件用HTML 5和Flash等相關(guān)技術(shù)進(jìn)行了Web重構(gòu),這是非常繁重的工作,且需要本地渲染的支持。而云件則是將終端的操作系統(tǒng)和運(yùn)行環(huán)境遷移到了云端,傳統(tǒng)桌面軟件可以不做任何修改進(jìn)行云化(cloudalization),客戶端采用統(tǒng)一的交互平臺(tái)(如瀏覽器)來(lái)實(shí)現(xiàn)交互功能,最終實(shí)現(xiàn)與本地同樣用戶體驗(yàn)但不依賴本地資源的軟件模式。
首先構(gòu)建一個(gè)面向云件服務(wù)的PaaS平臺(tái),它是云件開發(fā)、測(cè)試、部署和運(yùn)維的集成操作平臺(tái),既面向開發(fā)者提供云件開發(fā)工具和云件運(yùn)行環(huán)境,也面向用戶提供云件服務(wù);然后在上面構(gòu)建大數(shù)據(jù)實(shí)訓(xùn)環(huán)境。圖2展示了構(gòu)建在云件平臺(tái)上的大數(shù)據(jù)工程實(shí)訓(xùn)模塊示例。
圖2 構(gòu)建在云件平臺(tái)上的大數(shù)據(jù)工程實(shí)訓(xùn)模塊
基于該云件服務(wù)平臺(tái)支撐的相關(guān)核心技術(shù)包括:基于松耦合馮偌伊曼模型的計(jì)算分散化范式、面向云件的云端操作系統(tǒng)、實(shí)時(shí)交互式渲染技術(shù)以及云件系統(tǒng)性能檢測(cè)與容器化調(diào)度技術(shù),具體支撐技術(shù)的細(xì)節(jié)可以參見(jiàn)參考文獻(xiàn)[1—2]。
基于微服務(wù)架構(gòu)和云件技術(shù),針對(duì)高校需求,設(shè)計(jì)并實(shí)現(xiàn)了基于云件系統(tǒng)的大數(shù)據(jù)實(shí)踐教學(xué)平臺(tái),該平臺(tái)主要包括如下功能模塊。
(1)教師端功能:定制課程實(shí)驗(yàn)內(nèi)容、上傳文件、實(shí)驗(yàn)管理、學(xué)生管理、查看學(xué)生算法、成績(jī)管理、報(bào)告管理。
(2)學(xué)生端功能:查看實(shí)驗(yàn)內(nèi)容、閱讀實(shí)驗(yàn)指導(dǎo)書、算法演示、改進(jìn)算法(例如R/Python)、算法對(duì)比分析、提交算法、提交報(bào)告、查看成績(jī)、修改個(gè)人信息。
(3)平臺(tái)管理功能:查看資源、查看計(jì)算作業(yè)、節(jié)點(diǎn)運(yùn)算管理、創(chuàng)建容器環(huán)境、管理容器環(huán)境、恢復(fù)容器環(huán)境、查看進(jìn)度、強(qiáng)制關(guān)閉。
(4)開發(fā)環(huán)境:提供相應(yīng)的開發(fā)環(huán)境,如R、Python、Matlab、Hadoop、Spark 環(huán)境。
(5)算法庫(kù):提供數(shù)據(jù)分析和挖掘的常用經(jīng)典算法,以及基于R/Python實(shí)現(xiàn)的源代碼。
(6)綜合實(shí)驗(yàn)項(xiàng)目案例庫(kù):提供不同行業(yè)的數(shù)據(jù)資源庫(kù),提供綜合實(shí)驗(yàn)項(xiàng)目案例,供課程選用。
(7)數(shù)據(jù)資源庫(kù):提供多種數(shù)據(jù)資源庫(kù),包含真實(shí)數(shù)據(jù)和模擬產(chǎn)生數(shù)據(jù),供算法及案例選用。
大數(shù)據(jù)工程實(shí)訓(xùn)平臺(tái)的微服務(wù)總體架構(gòu)如圖3所示,大數(shù)據(jù)工程實(shí)訓(xùn)平臺(tái)的部署方案如圖4所示。
圖4 大數(shù)據(jù)工程實(shí)訓(xùn)平臺(tái)的部署方案
平臺(tái)用戶分為教師、學(xué)生和管理員3類。
(1)教師端。教師登錄平臺(tái)后,以菜單的方式可以看到課程、內(nèi)容、環(huán)境。課程管理中包含系統(tǒng)提供的基礎(chǔ)課程,教師可在此基礎(chǔ)上,根據(jù)實(shí)際情況進(jìn)行內(nèi)容篩選和排課;教師通過(guò)內(nèi)容管理模塊可對(duì)知識(shí)點(diǎn)內(nèi)容進(jìn)行編輯管理,也可進(jìn)行課程拓展;通過(guò)環(huán)境管理模塊完成容器鏡像維護(hù)。
(2)學(xué)生端。學(xué)生登錄平臺(tái)后,可以看到與他相關(guān)的課程列表,點(diǎn)擊相應(yīng)課程的學(xué)習(xí),進(jìn)入相應(yīng)課程的學(xué)習(xí);課程包含知識(shí)點(diǎn)分類列表,知識(shí)點(diǎn)實(shí)訓(xùn)的實(shí)驗(yàn)指導(dǎo)書、實(shí)驗(yàn)環(huán)境及實(shí)驗(yàn)成果的提交等菜單項(xiàng);進(jìn)入實(shí)驗(yàn)環(huán)境,也可以方便地查看實(shí)驗(yàn)文檔,包括相關(guān)參考文獻(xiàn)、實(shí)驗(yàn)筆記、實(shí)驗(yàn)視頻;提交實(shí)驗(yàn)成果后,學(xué)生可查看老師的評(píng)分,并查看實(shí)驗(yàn)筆記。
(3)管理員。管理員進(jìn)行平臺(tái)后,可以看到環(huán)境、課程、內(nèi)容、用戶。環(huán)境管理模塊主要完成對(duì)系統(tǒng)、設(shè)備、容器等的狀態(tài)檢測(cè);課程管理模塊主要對(duì)基礎(chǔ)和拓展的課程進(jìn)行管理和維護(hù);內(nèi)容管理模塊對(duì)系統(tǒng)提供的和教師提供的內(nèi)容進(jìn)行維護(hù);用戶管理模塊主要管理教師和學(xué)生賬號(hào)。
新一代大數(shù)據(jù)工程實(shí)訓(xùn)平臺(tái)的構(gòu)建,有利于為學(xué)生和老師提供一個(gè)完整的實(shí)訓(xùn)平臺(tái),主要優(yōu)點(diǎn)包括:
(1)獨(dú)享。學(xué)生能夠獨(dú)享自己的實(shí)驗(yàn)環(huán)境,不用跟不同時(shí)間段上機(jī)的同學(xué)共享一臺(tái)PC??梢栽趯?shí)驗(yàn)環(huán)境中下載自己的代碼文件,對(duì)系統(tǒng)進(jìn)行定制,實(shí)驗(yàn)環(huán)境更加安全可控。
(2)快速。學(xué)生只需打開瀏覽器,1秒鐘內(nèi)即可創(chuàng)建新的實(shí)驗(yàn)環(huán)境,省去本地搭建開發(fā)環(huán)境的麻煩,可以在線編寫、提交實(shí)驗(yàn)報(bào)告。
(3)經(jīng)濟(jì)。無(wú)需采購(gòu)大量硬件,同時(shí)也省去了對(duì)大量PC環(huán)境的運(yùn)維工作,所有實(shí)驗(yàn)運(yùn)維工作都在Web頁(yè)面進(jìn)行操作,老師及管理員可以為所有學(xué)生定制統(tǒng)一環(huán)境。
(4)高效。資源的利用率更高,一臺(tái)服務(wù)器可以提供幾百個(gè)甚至上千個(gè)容器環(huán)境,滿足多名學(xué)生實(shí)訓(xùn)需要,全部實(shí)訓(xùn)在云端進(jìn)行,不再受本地計(jì)算機(jī)配置限制,可以方便支持大數(shù)據(jù)這類需要分布式環(huán)境的實(shí)訓(xùn)類別,如圖5所示。
(5)靈活。只要有互聯(lián)網(wǎng),學(xué)生可以隨時(shí)隨地訪問(wèn)自己的實(shí)訓(xùn)環(huán)境,在宿舍也能繼續(xù)上機(jī)課的實(shí)訓(xùn)任務(wù),做到全天候隨時(shí)隨地訪問(wèn)實(shí)訓(xùn)環(huán)境的效果。
圖5 一鍵開啟Hadoop實(shí)驗(yàn)環(huán)境
圖6 大數(shù)據(jù)工程實(shí)訓(xùn)平臺(tái)主頁(yè)面示范
圖7 平臺(tái)整體服務(wù)網(wǎng)絡(luò)架構(gòu)
大數(shù)據(jù)工程實(shí)訓(xùn)平臺(tái)以Web系統(tǒng)的方式最終呈現(xiàn),通過(guò)互聯(lián)網(wǎng)PC端和移動(dòng)端均可以通過(guò)瀏覽器進(jìn)行訪問(wèn)。通過(guò)在云端構(gòu)建完整的微服務(wù)容器運(yùn)行環(huán)境,實(shí)現(xiàn)規(guī)?;渴?、容災(zāi)和靈活配置,系統(tǒng)的部署和運(yùn)行也以微服務(wù)形式架設(shè)在IaaS云計(jì)算系統(tǒng)上。圖6、圖7展示了大數(shù)據(jù)工程實(shí)訓(xùn)平臺(tái)主頁(yè)面范例和平臺(tái)整體服務(wù)網(wǎng)絡(luò)架構(gòu)。
2015年國(guó)務(wù)院常務(wù)會(huì)議通過(guò)的《關(guān)于促進(jìn)大數(shù)據(jù)發(fā)展的行動(dòng)綱要》中強(qiáng)調(diào)開發(fā)應(yīng)用好大數(shù)據(jù)這一基礎(chǔ)性戰(zhàn)略資源,教育部高等學(xué)校教學(xué)指導(dǎo)委員會(huì)也將“大數(shù)據(jù)”列為“十三五”期間高等學(xué)校的教學(xué)改革和教學(xué)建設(shè)的重點(diǎn),同時(shí)教育部高等教育司也于2016年在普通高等學(xué)校本科專業(yè)設(shè)置中增加了“數(shù)據(jù)科學(xué)與大數(shù)據(jù)技術(shù)”專業(yè)(專業(yè)代碼080910T),以及面向高職的“大數(shù)據(jù)技術(shù)與應(yīng)用”專業(yè)(專業(yè)代碼 610215)。
基于上述背景,本文所提出的大數(shù)據(jù)工程實(shí)訓(xùn)平臺(tái)作為同濟(jì)大學(xué)全校本科和研究生大數(shù)據(jù)類課程“大數(shù)據(jù)原理與實(shí)踐”與“數(shù)據(jù)科學(xué)通識(shí)導(dǎo)論”的支撐建設(shè)平臺(tái)。團(tuán)隊(duì)指導(dǎo)老師從2016年開始,面向全校本科生建設(shè)大數(shù)據(jù)類課程,同時(shí)課程建設(shè)團(tuán)隊(duì)開設(shè)了“嘉數(shù)匯”微信公眾號(hào),輔以互動(dòng)交流、課件發(fā)布、材料補(bǔ)充等,取得了良好的效果。團(tuán)隊(duì)同時(shí)開通http://bigdata.#edu.cn域名為課程的實(shí)訓(xùn)平臺(tái)做好準(zhǔn)備。其中“大數(shù)據(jù)原理與實(shí)踐”也入選了2017年的Google支持教育部產(chǎn)學(xué)合作協(xié)同育人項(xiàng)目;而云件基礎(chǔ)技術(shù)項(xiàng)目“未來(lái)互聯(lián)網(wǎng)云件服務(wù)平臺(tái)”也榮獲了2016年第二屆全國(guó)高校云計(jì)算應(yīng)用創(chuàng)新大賽一等獎(jiǎng)。
目前在該平臺(tái)上陸續(xù)構(gòu)建5類實(shí)訓(xùn)模塊:①基礎(chǔ)語(yǔ)言學(xué)習(xí)實(shí)驗(yàn)(4個(gè)子模塊,42個(gè)實(shí)驗(yàn));②數(shù)據(jù)分析與挖掘?qū)嶒?yàn)(4個(gè)子模塊,28個(gè)實(shí)驗(yàn));③大數(shù)據(jù)基礎(chǔ)實(shí)驗(yàn)(4個(gè)子模塊,13個(gè)實(shí)驗(yàn));④大數(shù)據(jù)挖掘?qū)嶒?yàn)(2個(gè)子模塊,12個(gè)實(shí)驗(yàn));⑤案例分析實(shí)驗(yàn)(3個(gè)子模塊,18)。
筆者結(jié)合實(shí)際的教學(xué)經(jīng)驗(yàn),將所有實(shí)訓(xùn)軟件全部遷移到云端,并通過(guò)瀏覽器為終端用戶提供大數(shù)據(jù)實(shí)訓(xùn)服務(wù),具體包括學(xué)生端、教師端、平臺(tái)管理、開發(fā)環(huán)境、算法庫(kù)、綜合實(shí)驗(yàn)項(xiàng)目案例庫(kù)、數(shù)據(jù)資源庫(kù)等功能,為高校大數(shù)據(jù)人才培養(yǎng)提供一個(gè)全方位的觸手可及、 隨時(shí)可用、 秒級(jí)啟動(dòng)、用完即走的大規(guī)模工程實(shí)訓(xùn)服務(wù)平臺(tái)。未來(lái)的重點(diǎn)工作將基于高校應(yīng)用場(chǎng)景,構(gòu)建更大規(guī)模的實(shí)訓(xùn)平臺(tái),為大規(guī)模重構(gòu)教育信息化基礎(chǔ)設(shè)施、為下一代教育信息化公共服務(wù)平臺(tái)提供核心技術(shù)支持。
參考文獻(xiàn):
[1]Guo D, Wang W. Cloudware: An emerging software paradigm for cloud computing[C]// In Proceedings of the Internetware 2016,Beijing, China, September 18, 2016: 1-10.
[2]Guo D, Wang W. Towards cloudware paradigm for cloud computing[C]// In Proceedings of The 9th IEEE International Conference on Cloud Computing, 2016, San Francisco, USA, June 27 - July 2, 2016: 164-171.
[3]鐘登華. 新工科建設(shè)的內(nèi)涵與行動(dòng)[J]. 高等工程教育研究, 2017(3): 1-6.