王全福
(中山大學(xué)南方學(xué)院,廣州510970)
隨著高校教育事業(yè)的發(fā)展,應(yīng)用型本科高校的改革日益重要。2019 年2 月,教育部發(fā)展規(guī)劃司在《支持應(yīng)用型本科高校發(fā)展有關(guān)工作情況》中說(shuō)明要做好應(yīng)用型高校發(fā)展的頂層設(shè)計(jì),《國(guó)家教育事業(yè)發(fā)展“十三五”規(guī)劃》將推動(dòng)具備條件的普通本科高校向應(yīng)用型轉(zhuǎn)變,作為高等教育結(jié)構(gòu)調(diào)整的重要舉措,明確提出引導(dǎo)高校從治理結(jié)構(gòu)、專(zhuān)業(yè)體系、課程內(nèi)容、教學(xué)方式、師資結(jié)構(gòu)等方面進(jìn)行全方位、系統(tǒng)性的改革[1]。
為積極貫徹落實(shí)國(guó)家建設(shè)應(yīng)用型本科高校的戰(zhàn)略,高校新開(kāi)設(shè)《大數(shù)據(jù)與云計(jì)算》專(zhuān)業(yè)課程??紤]到理論與實(shí)踐的有機(jī)結(jié)合,理論知識(shí)的講授深度、動(dòng)手實(shí)踐的難易程度、前沿知識(shí)的科普學(xué)習(xí)等方面。需要在有限的學(xué)期課時(shí)內(nèi),讓學(xué)生深刻理解必要的理論知識(shí),掌握一定的實(shí)踐能力,更好達(dá)到應(yīng)用型本科高校的課程建設(shè)要求。因此,提出一種改進(jìn)的教學(xué)方法,對(duì)教學(xué)改革實(shí)踐具有十分重要的意義。
專(zhuān)業(yè)課程《大數(shù)據(jù)與云計(jì)算》包括兩個(gè)方面的內(nèi)容,一個(gè)是大數(shù)據(jù),另一個(gè)是云計(jì)算。
維基百科中大數(shù)據(jù)的定義:大數(shù)據(jù)是指利用常用軟件工具捕獲、管理和處理數(shù)據(jù)所耗時(shí)間超過(guò)可容忍時(shí)間的數(shù)據(jù)集[2]。大數(shù)據(jù)的處理模式主要分為先存儲(chǔ)后處理的批處理(Batch Processing)和直接處理的流處理(Stream Processing)兩種[3-4]。同時(shí),大數(shù)據(jù)包括數(shù)據(jù)量大(Volume)、多樣(Variety)、快速(Velocity)、價(jià)值密度低(Value)、復(fù)雜度(Complexity)的4V+1C 特征。
云計(jì)算是一種商業(yè)計(jì)算模型,它將計(jì)算任務(wù)分布在大量計(jì)算機(jī)構(gòu)成的資源池上,使各種應(yīng)用系統(tǒng)能夠根據(jù)需要獲取計(jì)算力、存儲(chǔ)空間和信息服務(wù)[5]。而在云計(jì)算服務(wù)的劃分方面,根據(jù)美國(guó)國(guó)家標(biāo)準(zhǔn)與技術(shù)研究院(NIST)的定義,當(dāng)前云計(jì)算服務(wù)可分為3 個(gè)層次,分別是:①基礎(chǔ)設(shè)施即服務(wù)(IaaS),如Amazon 的彈性計(jì)算云(Elastic Compute Cloud,EC2)、IBM 的藍(lán)云(Blue Cloud)以及Sun 的云基礎(chǔ)設(shè)施平臺(tái)(IAAS)等;②平臺(tái)即服務(wù)(PaaS),如Google 的Google App Engine 與微軟的Azure 平臺(tái)等;③軟件即服務(wù)(SaaS),如Salesforce 公司的客戶(hù)關(guān)系管理服務(wù)等[6]。
課程內(nèi)容有許多需要實(shí)踐操作的技術(shù)知識(shí)點(diǎn),包括大數(shù)據(jù)中的數(shù)據(jù)獲取、數(shù)據(jù)清洗、數(shù)據(jù)分析、數(shù)據(jù)解釋、數(shù)據(jù)可視化等內(nèi)容。云計(jì)算中的Hadoop 基本架構(gòu)、Spark 基本架構(gòu)、虛擬化技術(shù)、數(shù)據(jù)中心建設(shè)、核心
算法介紹等。在有限的學(xué)期課時(shí)內(nèi)全部都掌握并實(shí)踐顯然會(huì)有較大難度??紤]到學(xué)生的自控力,在技術(shù)選型和實(shí)踐操作中也會(huì)遇到困難。同時(shí),學(xué)校的配套資源更需要進(jìn)一步提高。
在大數(shù)據(jù)與云計(jì)算的關(guān)系中,大數(shù)據(jù)可以描繪為待解決的問(wèn)題,而云計(jì)算是解決此問(wèn)題的方法。如果用x表示大數(shù)據(jù),f表示云計(jì)算,則求解目標(biāo)可以表示二者關(guān)系。但通過(guò)具體教學(xué)實(shí)踐方式找準(zhǔn)切入點(diǎn),將大數(shù)據(jù)與云計(jì)算技術(shù)渾然天成地融合起來(lái),需要教師特定的教學(xué)方法、技術(shù)儲(chǔ)備以及相關(guān)領(lǐng)域的工作背景。
對(duì)于大數(shù)據(jù)方面的教學(xué)改進(jìn),首先可以從大數(shù)據(jù)4V+1C 特征進(jìn)行舉例,例如電商平臺(tái)交易業(yè)務(wù)、鐵路春運(yùn)售票系統(tǒng)、金屬射流有限元模擬等數(shù)據(jù)處理。之后引入數(shù)據(jù)獲取、數(shù)據(jù)清洗、數(shù)據(jù)分析等理論知識(shí)。最后講授數(shù)據(jù)可視化的內(nèi)容。
在實(shí)踐操作上需要用到的工具包括Anaconda 軟件與VS Code 軟件,使用Python 語(yǔ)言來(lái)編寫(xiě)數(shù)據(jù)分析的程序代碼。Anaconda 軟件作為一個(gè)開(kāi)源的Python包管理器,包含Pandas、NumPy、matplotlib 等豐富的科學(xué)計(jì)算模塊,但其開(kāi)發(fā)界面不太友好。而VS Code 是一個(gè)輕量并且強(qiáng)大的跨平臺(tái)開(kāi)源代碼編輯器IDE(Integrated Development Environment),具有豐富的插件生態(tài)系統(tǒng),開(kāi)發(fā)界面友好。將二者配置連接后便可進(jìn)行數(shù)據(jù)分析的實(shí)踐學(xué)習(xí),配置內(nèi)容如圖1 所示。
圖1 VS Code內(nèi)配置代碼內(nèi)容
在數(shù)據(jù)分析中會(huì)涉及到對(duì)比性指標(biāo)、離散程度指標(biāo),以及相關(guān)性指標(biāo)等。而在數(shù)據(jù)可視化方面,需要繪制折線圖、氣泡圖、雷達(dá)圖、熱力圖等圖表來(lái)清晰有效表達(dá)數(shù)據(jù)信息,如圖2 所示。
圖2 某數(shù)據(jù)分析師的綜合成績(jī)
對(duì)于云計(jì)算方面的教學(xué)改進(jìn),首先可以從大型的分布式文件系統(tǒng)GFS(Google File System)舉例介紹客戶(hù)端(Client)、主服務(wù)器(Master)、數(shù)據(jù)塊服務(wù)器(Chunk Server)等內(nèi)容。之后引入分布式計(jì)算框架MapReduce,包括Map 映射函數(shù)操作以及Reduce 歸約函數(shù)操作。最后講授分布式文件系統(tǒng)HDFS(Hadoop Distributed File System)以及分布式操作系統(tǒng)Yarn(Yet Another Resource Negotiator)。
在具體的實(shí)踐過(guò)程中,首先可以使用虛擬機(jī)安裝CentOS 7 操作系統(tǒng),實(shí)踐修改主機(jī)名、修改IP 地址、關(guān)閉防火墻等操作。其次安裝JDK 與Hadoop 并執(zhí)行必要的文件配置操作。配置HDFS 的namenode 地址和Hadoop 運(yùn)行時(shí)產(chǎn)生文件的目錄,如圖3 所示。最后初始化HDFS,使用HDFS 管理界面,如圖4 所示,以及使用Yarn 管理界面完成一些文件的上傳和下載操作。
圖3 配置Hadoop文件的部分代碼
圖4 HDFS的管理界面
數(shù)據(jù)的價(jià)值會(huì)隨著時(shí)間的流逝而不斷減少,因此需要盡可能快地對(duì)數(shù)據(jù)做出分析并給出結(jié)果。數(shù)據(jù)分析是整個(gè)大數(shù)據(jù)處理流程的核心,因?yàn)榇髷?shù)據(jù)的價(jià)值產(chǎn)生于分析過(guò)程[7]。同時(shí),云計(jì)算是大數(shù)據(jù)平臺(tái)的技術(shù)支持基礎(chǔ)。通過(guò)Anaconda 軟件分析處理后的數(shù)據(jù)文件可以上傳至HDFS 進(jìn)行存儲(chǔ)備份。同樣,也可以從HDFS 中下載待分析的數(shù)據(jù)文件供Anaconda 軟件進(jìn)行分析處理。以此通過(guò)簡(jiǎn)單案例實(shí)現(xiàn)大數(shù)據(jù)與云計(jì)算的技術(shù)融合,提高教學(xué)過(guò)程中的可操作性,便于學(xué)生理解掌握相關(guān)理論知識(shí)。
理論與實(shí)踐相結(jié)合,從簡(jiǎn)單案例逐步過(guò)渡到理論知識(shí),再運(yùn)用理論知識(shí)指導(dǎo)實(shí)踐操作。使用改進(jìn)后的教學(xué)方法,由淺入深循序漸進(jìn)地教學(xué),更能提高學(xué)生的學(xué)習(xí)興趣。經(jīng)過(guò)學(xué)生的課后反饋,普遍認(rèn)為理論課程不再枯燥乏味,課程的技術(shù)實(shí)踐操作更能提高學(xué)生的專(zhuān)注程度。通過(guò)分組完成課程設(shè)計(jì),在程序?qū)崿F(xiàn)方面可以運(yùn)行出相應(yīng)的正確結(jié)果。在課程設(shè)計(jì)報(bào)告中,培養(yǎng)出規(guī)范化的書(shū)寫(xiě)能力與較高的團(tuán)隊(duì)合作意識(shí),每位同學(xué)在小組內(nèi)的不同分工,會(huì)獲得不同的學(xué)習(xí)總結(jié)感受,進(jìn)一步提高自身學(xué)習(xí)能力。畢竟,在大學(xué)中培養(yǎng)出學(xué)生較好的自學(xué)能力會(huì)使其終生受益。
在《大數(shù)據(jù)與云計(jì)算》這門(mén)課程的教學(xué)改革實(shí)踐過(guò)程中,通過(guò)大數(shù)據(jù)和云計(jì)算兩方面理論知識(shí)的教學(xué)分析與教學(xué)實(shí)踐,有助于強(qiáng)化學(xué)生理解并掌握這門(mén)課程的相關(guān)知識(shí)點(diǎn)。同時(shí),在實(shí)際的教學(xué)實(shí)踐過(guò)程中收到良好的反饋效果,符合應(yīng)用型本科高校的教學(xué)改革實(shí)踐要求。