針對大數(shù)據(jù)時代下數(shù)據(jù)庫技術(shù)的新需求,該文探討了基于關(guān)系和非關(guān)系數(shù)據(jù)庫結(jié)合的《數(shù)據(jù)庫原理與應(yīng)用》的課程教學(xué)方案。首先總結(jié)了新需求中涉及的主要技術(shù)知識點,構(gòu)建了課程知識樹。其次基于相關(guān)知識點,開發(fā)了《數(shù)據(jù)庫原理與應(yīng)用》實驗實訓(xùn)系統(tǒng)。實踐證明,該方案能夠滿足大數(shù)據(jù)時代下的數(shù)據(jù)庫技術(shù)需求,且在一定程度上提高學(xué)生學(xué)習(xí)的靈活性,實現(xiàn)一定范圍內(nèi)的因材施教。
《西安電子科技大學(xué)學(xué)報》是電子信息學(xué)科的學(xué)術(shù)刊物,雙月刊 , 國內(nèi)外公開發(fā)行。我們的辦刊方針是:發(fā)揮我校的學(xué)術(shù)優(yōu)勢,反映國內(nèi)外高質(zhì)量、高水平的最新科研成果,體現(xiàn)通信與電子信息特色,擴大學(xué)報的影響,促進國內(nèi)外學(xué)術(shù)交流,熱心培養(yǎng)學(xué)術(shù)人才,為"科教興國"和"科教興校"服務(wù)。
隨著物聯(lián)網(wǎng)、云計算和大數(shù)據(jù)的發(fā)展,各行業(yè)數(shù)據(jù)增長迅猛。數(shù)據(jù)作為一種新資源,已被越來越多的人所認(rèn)可。同時,數(shù)據(jù)的海量化、多類型化、多維化,使得數(shù)據(jù)庫技術(shù)從關(guān)系數(shù)據(jù)庫向非關(guān)系數(shù)據(jù)庫、單機處理向分布式處理發(fā)展。《數(shù)據(jù)庫原理與應(yīng)用》是目前大多數(shù)高校都開設(shè)的一門專業(yè)基礎(chǔ)課程[1-5],具有較強的綜合性、應(yīng)用性和實踐性。它是計算機應(yīng)用、信息工程、電子信息、自動化等專業(yè)的基礎(chǔ)課程,是機械交通、生態(tài)旅游、電子商務(wù)、財務(wù)管理等眾多專業(yè)的選修課程。在不同專業(yè),其教學(xué)目標(biāo)以及對學(xué)生應(yīng)用能力的要求都存在著很大的差異,卻也具有一定的相同之處。在大數(shù)據(jù)時代下,如何滿足不同專業(yè)的學(xué)生需求,培養(yǎng)新時代的數(shù)據(jù)庫技術(shù)人才,成為高校數(shù)據(jù)庫教學(xué)改革的核心任務(wù)之一[6]。
1 現(xiàn)狀及問題
1.1大數(shù)據(jù)時代新需求
大數(shù)據(jù)時代前,數(shù)據(jù)來源主要是管理記錄,被動采集為主。數(shù)據(jù)庫類型主要是關(guān)系型(二維表)。所以高校《數(shù)據(jù)庫原理與應(yīng)用》課程以SQL server、MySQL、Oracle等關(guān)系數(shù)據(jù)庫技術(shù)為主。隨著物聯(lián)網(wǎng)技術(shù)的發(fā)展,越來越多的移動設(shè)備自動采集數(shù)據(jù)。隨著智能手機的普及,越來越多的數(shù)據(jù)變?yōu)槲谋尽D像、音頻、視頻等非關(guān)系型數(shù)據(jù)。針對大數(shù)據(jù)時代的新需求,NoSQL等非關(guān)系數(shù)據(jù)庫技術(shù)發(fā)展迅速。如何結(jié)合SQL和NoSQL技術(shù),培養(yǎng)新時代的數(shù)據(jù)庫技術(shù)人才,是新時期《數(shù)據(jù)庫原理與應(yīng)用》課程改革需要解決的重要問題。
1.2 高校專業(yè)差異
《數(shù)據(jù)庫原理及應(yīng)用》課程教學(xué)涉及眾多專業(yè),不同專業(yè)的培養(yǎng)方案不同,前期的計算機基礎(chǔ)差異較大。計算機相關(guān)專業(yè)隊數(shù)據(jù)庫技術(shù)要求高,需要系統(tǒng)的學(xué)習(xí)關(guān)系和非關(guān)系數(shù)據(jù)庫的相關(guān)技術(shù)。信息管理相關(guān)專業(yè)主要針對關(guān)系型數(shù)據(jù)庫,要求學(xué)生熟悉和掌握關(guān)系數(shù)據(jù)庫技術(shù),能夠結(jié)合一門語言開發(fā)簡單的管理信息系統(tǒng)。生態(tài)旅游專業(yè)前期編程課程很少,只要求了解數(shù)據(jù)庫技術(shù),不涉及開發(fā)技術(shù)。以上所示,不同專業(yè)隊數(shù)據(jù)庫技術(shù)的需求差異較大,如何設(shè)定不同專業(yè)的培養(yǎng)目標(biāo),滿足不同行業(yè)的數(shù)據(jù)庫技術(shù)需求,是當(dāng)前《數(shù)據(jù)庫原理與應(yīng)用》課程必須面對的問題。
1.3 學(xué)生能力差異
相同的專業(yè),學(xué)生能力參差不齊,學(xué)習(xí)興趣與積極性差別較大。《數(shù)據(jù)庫原理及應(yīng)用》一般分為理論和實驗教學(xué)。理論教學(xué)為多媒體教室知識點講解,實踐教學(xué)為機房上機練習(xí)。理論教學(xué)經(jīng)常出現(xiàn)學(xué)生注意力不集中,交頭接耳甚至玩手機等現(xiàn)象,教師監(jiān)督困難。實驗教學(xué)中,一般針對上節(jié)理論課的主要知識點,根據(jù)相關(guān)題目實踐練習(xí)。因教師要考慮大多數(shù)學(xué)生的學(xué)習(xí)能力,故實驗中涉及的練習(xí)題目需要難度適中。能力強的同學(xué),可能用一半時間就完成了實驗。能力差的同學(xué)則需要課下另外增加更多時間練習(xí),才能完成實驗任務(wù)。如何針對不同能力的學(xué)生,實現(xiàn)因材施教,不僅是《數(shù)據(jù)庫原理與應(yīng)用》課程,也是所有課程教學(xué)中存在的普遍問題。
2 實驗實訓(xùn)系統(tǒng)
實驗實訓(xùn)系統(tǒng)是將課程中主要的知識點,以一定的形式隱含在網(wǎng)絡(luò)系統(tǒng)中,學(xué)生以在線練習(xí)的形式逐一掌握(如圖1所示)。在線實驗系統(tǒng)有很多的優(yōu)點。首先,在線練習(xí)容易抓住學(xué)生的注意力,促進學(xué)生的交流,激發(fā)學(xué)生的主動性。其次,練習(xí)中的錯誤能夠讓學(xué)生認(rèn)識到自己的不足,了解與其它同學(xué)的差距,促進學(xué)生良性競爭。最后,在線練習(xí)能夠讓學(xué)習(xí)者自己發(fā)現(xiàn)探索規(guī)律,而不是有老師闡述告知結(jié)果。總之,一個好的實驗實訓(xùn)系統(tǒng),不僅讓學(xué)生能夠?qū)W到扎實的基礎(chǔ)知識,激發(fā)學(xué)生的積極主動性,還能讓學(xué)生結(jié)合實際舉一反三。
3 實施方法
3.1課堂組織
將《數(shù)據(jù)庫原理與應(yīng)用》的章節(jié)分為兩部分:關(guān)系數(shù)據(jù)庫和非關(guān)系數(shù)據(jù)庫。其中關(guān)系數(shù)據(jù)庫又分為關(guān)系數(shù)據(jù)庫原理、基本命令、綜合編程。原理部分沿用傳統(tǒng)的多媒體教學(xué),主要包含關(guān)系數(shù)據(jù)庫基本術(shù)語、關(guān)系運算、概念模式、范式與設(shè)計理論等,并以在新練習(xí)的形式考核。基本命令主要包含數(shù)據(jù)庫對象操作、表對象操作,以及表中基本的添加、修改、刪除、查詢等命令,是整個數(shù)據(jù)庫課程的核心知識,是學(xué)生掌握及應(yīng)用數(shù)據(jù)庫技術(shù)的重點部分。綜合編程部分主要包含TSQL、函數(shù)、存儲過程、觸發(fā)器、游標(biāo)等高級SQL編程部分,是學(xué)生全面應(yīng)用數(shù)據(jù)庫技術(shù),培養(yǎng)學(xué)生解決復(fù)雜數(shù)據(jù)庫問題的能力。基本命令和綜合編程兩部分,主要以機房即講即練的方式,練習(xí)主要以在線考核的形式,讓學(xué)生在在線系統(tǒng)中掌握基本的SQL命令及SQL編程。非關(guān)系數(shù)據(jù)庫部分,主要分為非關(guān)系數(shù)據(jù)庫基本原理、非關(guān)系數(shù)據(jù)庫基本操作、綜合編程。其中基本原理主要講解非關(guān)系數(shù)據(jù)庫的存儲結(jié)構(gòu)與設(shè)計理論。基本操作部分主要以Hbase為例,講述非關(guān)系數(shù)據(jù)庫的添加、修改、刪除、查詢等基本操作。綜合編程部分主要講解使用Java或python調(diào)用非關(guān)系數(shù)據(jù)庫,實現(xiàn)基本應(yīng)用。
3.2理論教學(xué)
理論教學(xué)部分主要涉及的章節(jié)如表1所示,主要讓學(xué)生了解關(guān)系與非關(guān)系數(shù)據(jù)庫的相關(guān)概念,掌握基本的關(guān)系運算,理解ER圖及范式理論,理解關(guān)系與非關(guān)系數(shù)據(jù)庫的存儲架構(gòu)差異,熟悉數(shù)據(jù)庫設(shè)計理論及一般思路。相關(guān)知識點將以在線競賽的形式考核。
3.3實踐教學(xué)
(1) 基本命令知識樹
SQL基本命令可以分為:DDL、DML、DCL。其中DDL主要有數(shù)據(jù)庫、表、視圖等的創(chuàng)建(create)、修改(alter)、刪除(drop)組成;DML主要包含數(shù)據(jù)表中記錄的添加(insert)、刪除(delete)、修改(update)、查詢(select)等組成。DCL主要有數(shù)據(jù)庫用戶的賦權(quán)(grant)、廢除用戶權(quán)限(revoke)、提交當(dāng)前事務(wù)(commit)等組成。關(guān)系數(shù)據(jù)庫中基本命令知識樹如圖2所示。
非關(guān)系數(shù)據(jù)庫的基本命令可以分為數(shù)據(jù)定義語言DDL和數(shù)據(jù)操作語言DML。DDL主要為非關(guān)系數(shù)據(jù)庫中表對象的創(chuàng)建、注銷與刪除。DML主要包含表中記錄的添加、刪除、修改、查詢等(如圖3所示)。
(2) SQL編程提高
關(guān)系數(shù)據(jù)庫編程主要包含TSQL編程、函數(shù)、存儲過程、觸發(fā)器、游標(biāo)等技術(shù)(如圖4所示)。需要學(xué)生掌握TSQL編程的基本語法,熟悉常用的系統(tǒng)函數(shù),掌握自定義函數(shù)、存儲過程、觸發(fā)器、游標(biāo)的創(chuàng)建和調(diào)用。具體知識樹如圖3所示。對于非計算機專業(yè)學(xué)生,可以根據(jù)不同情況有選擇性地安排此部分教學(xué)任務(wù)。
非關(guān)系數(shù)據(jù)庫編程主要包含程序調(diào)用、MapReduce處理、Hive類SQL等部分(如圖5所示)。程序調(diào)用是利用Java或python調(diào)用非關(guān)系數(shù)據(jù)庫,實現(xiàn)表中記錄的增刪改查等基本操作。MapReduce處理是指使用Hadoop的HDFS與MapReduce處理NoSQL數(shù)據(jù)。Hive類SQL主要基于MapReduce原理,使用類SQL實現(xiàn)大數(shù)據(jù)的聚合統(tǒng)計等批量處理。
3.4綜合實習(xí)
《數(shù)據(jù)庫原理與應(yīng)用》課程是非常重要的專業(yè)必修課,一般會安排實習(xí)。實習(xí)是數(shù)據(jù)庫技術(shù)的綜合運用,可以安排具體的行業(yè)數(shù)據(jù)庫設(shè)計及開發(fā)應(yīng)用實例。培養(yǎng)學(xué)生將數(shù)據(jù)庫設(shè)計理論和技術(shù)相結(jié)合,應(yīng)用到實踐中的能力。主要涉及的內(nèi)容如表2所示。
4 結(jié)束語
本文主要討論了大數(shù)據(jù)時代對數(shù)據(jù)庫技術(shù)的新需求,并在此基礎(chǔ)上提出基于關(guān)系和非關(guān)系數(shù)據(jù)庫結(jié)合的《數(shù)據(jù)庫原理與應(yīng)用》的課程教學(xué)方案。該方案首先總結(jié)了大數(shù)據(jù)時代新需求中涉及的主要技術(shù)知識點,構(gòu)建了數(shù)據(jù)庫課程知識樹。其次基于相關(guān)知識點,開發(fā)了《數(shù)據(jù)庫原理與應(yīng)用》實驗實訓(xùn)系統(tǒng),能夠讓學(xué)生根據(jù)自己的專業(yè)和能力實現(xiàn)在線練習(xí)。實踐證明,該方案能夠滿足大數(shù)據(jù)時代下的數(shù)據(jù)庫行業(yè)需求,且在一定程度上提高學(xué)生學(xué)習(xí)的靈活性,實現(xiàn)一定范圍內(nèi)的因材施教。
參考文獻:
[1] 高英,信鳳芹,韓丹,郭春燕.提高《數(shù)據(jù)庫原理》教學(xué)質(zhì)量的探討[J].教育教學(xué)論壇,2012(29).
[2] 張福安,包振強.數(shù)據(jù)庫原理及應(yīng)用課程教學(xué)改革與實踐[J].安徽工業(yè)大學(xué)學(xué)報·社會科學(xué)版,2010(1).
[3] 亓文娟,晏杰.應(yīng)用型本科院校“數(shù)據(jù)庫原理及應(yīng)用”教學(xué)改革研究[J].洛陽師范學(xué)院學(xué)報,2014(5).
[4] 顧永軍,齊敬敬.《數(shù)據(jù)庫原理及應(yīng)用》課程教學(xué)改革探討[J].時代教育,2014(13).
[5] 晏杰.《數(shù)據(jù)庫原理及應(yīng)用》實踐教學(xué)改革研究[J].安陽工學(xué)院學(xué)報,2014(4).
[6] 孫銀博.數(shù)據(jù)庫技術(shù)在大數(shù)據(jù)中的應(yīng)用[J].電腦知識與技術(shù),2016(3).
論文指導(dǎo) >
SCI期刊推薦 >
論文常見問題 >
SCI常見問題 >