国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

Hadoop云平臺(tái)在“數(shù)據(jù)庫系統(tǒng)原理”課程實(shí)驗(yàn)教學(xué)中的應(yīng)用

2014-12-26 13:59:13黃震華方強(qiáng)
科教導(dǎo)刊 2014年34期
關(guān)鍵詞:理論基礎(chǔ)專業(yè)技能數(shù)據(jù)庫

黃震華 方強(qiáng)

摘 要 數(shù)據(jù)庫是計(jì)算機(jī)科學(xué)的重要分支,是信息系統(tǒng)的核心和基礎(chǔ)。數(shù)據(jù)庫是長期存儲(chǔ)在計(jì)算機(jī)內(nèi)、有組織的、可共享的大量數(shù)據(jù)的集合。數(shù)據(jù)庫中的數(shù)據(jù)按一定的數(shù)據(jù)模型組織、描述和存儲(chǔ),具有較小的冗余度較高的數(shù)據(jù)獨(dú)立性和易擴(kuò)展性,并可為各種用戶共享。①經(jīng)過多年來的發(fā)展,數(shù)據(jù)庫經(jīng)歷了三個(gè)重要的發(fā)展階段:第一代的網(wǎng)狀和層次數(shù)據(jù)庫系統(tǒng),第二代的關(guān)系數(shù)據(jù)庫系統(tǒng),第三代的以面向?qū)ο髷?shù)據(jù)模型為主要特征的數(shù)據(jù)庫系統(tǒng)。數(shù)據(jù)庫已經(jīng)成為計(jì)算機(jī)信息系統(tǒng)和應(yīng)用系統(tǒng)的核心技術(shù)和重要基礎(chǔ),也是許多其他專業(yè)的選修課程。

關(guān)鍵詞 數(shù)據(jù)庫 理論基礎(chǔ) 專業(yè)技能

中圖分類號(hào):G424文獻(xiàn)標(biāo)識(shí)碼:A

Application of Hadoop Cloud Platform in the "Principles of

Database Systems" Course Experiment Teaching

HUANG Zhenhua, FANG Qiang

(College of Electronic and Information Engineering, Tongji University, Shanghai 201804)

Abstract The database is an important branch of computer science, is the core and foundation of information systems. Database is a long-term storage in the computer, an organized collection of large amounts of data can be shared. Data in the database according to certain data model organization, description, and storage, has a high degree of data redundancy smaller independence and ease of scalability, and can be shared by a variety of users. After years of development, the database has gone through three major stages of development: the first generation of mesh and hierarchical database system, the second generation of relational database systems, third-generation object-oriented data model as the main feature of the database systems. Database has become an important foundation for the core technology and computer information systems and applications are also a number of other specialized elective courses.

Key words database; theoretical basis; professional skills

0 引言

數(shù)據(jù)庫具有理論基礎(chǔ)強(qiáng)、實(shí)踐應(yīng)用突出、學(xué)科綜合性強(qiáng)等特點(diǎn)。②數(shù)據(jù)庫技術(shù)也是計(jì)算機(jī)專業(yè)人員必備的專業(yè)技能。數(shù)據(jù)庫課程的教學(xué)應(yīng)當(dāng)與實(shí)際工作中的需求緊密聯(lián)系。要以當(dāng)前主流的數(shù)據(jù)庫應(yīng)用為背景,以數(shù)據(jù)模型作為核心,不僅講授數(shù)據(jù)庫的理論、原理,也要使學(xué)生掌握數(shù)據(jù)庫的運(yùn)用,并能對(duì)數(shù)據(jù)庫進(jìn)行高效的維護(hù)。良好的數(shù)據(jù)庫專業(yè)技能不僅需要扎實(shí)的理論基礎(chǔ)、對(duì)知識(shí)點(diǎn)深入理解,還需要較強(qiáng)的動(dòng)手能力,能運(yùn)用所學(xué)的理論知識(shí)在實(shí)際情況中正確分析、解決問題。③

本文在對(duì)數(shù)據(jù)庫這門課程的教學(xué)特性進(jìn)行了深入分析的基礎(chǔ)上構(gòu)建了一個(gè)基于Hadoop的數(shù)據(jù)庫教學(xué)實(shí)驗(yàn)平臺(tái),并詳細(xì)講述了該平臺(tái)在教學(xué)中的優(yōu)勢。

1 數(shù)據(jù)庫學(xué)科教學(xué)現(xiàn)狀

目前各高校計(jì)算機(jī)相關(guān)專業(yè)均開設(shè)了數(shù)據(jù)庫課程,但是在教學(xué)中大都采用的是傳統(tǒng)的課堂授課輔以機(jī)房上機(jī)練習(xí)的形式。這樣的教學(xué)存在著弊端。課堂授課中,側(cè)重于知識(shí)點(diǎn)的講解,理論與實(shí)踐有所脫節(jié),忽略了實(shí)際中的使用技術(shù)。很多同學(xué)的理論知識(shí)學(xué)得很好,包括基本概念、代數(shù)運(yùn)算、規(guī)范化和數(shù)據(jù)庫設(shè)計(jì)等。但是在面對(duì)一個(gè)較為復(fù)雜的實(shí)際情況時(shí)不能設(shè)計(jì)出性能優(yōu)越的數(shù)據(jù)庫來,這很難使學(xué)生所學(xué)的知識(shí)點(diǎn)融會(huì)貫通。機(jī)房上機(jī)練習(xí)雖然能提供給學(xué)生一定的動(dòng)手鍛煉的機(jī)會(huì),但是由于缺乏一些真正的需求,大部分同學(xué)的練習(xí)只是局限于一些常用的數(shù)據(jù)庫工具軟件、命令的使用。同時(shí)這些練習(xí)也僅僅是一些關(guān)于單門學(xué)科的知識(shí)點(diǎn)驗(yàn)證,學(xué)生很難把所學(xué)的知識(shí)與實(shí)際工作相結(jié)合。而且這些練習(xí)中的數(shù)據(jù)大都不具有實(shí)際生產(chǎn)環(huán)境意義,因此學(xué)生在上機(jī)練習(xí)中很難考慮到實(shí)際工程中的一些要求。比如實(shí)際的信息系統(tǒng)中,數(shù)據(jù)量可能達(dá)到百萬、千萬記錄,這時(shí)候的數(shù)據(jù)庫操作可能會(huì)遇到一系列問題,比如溢出錯(cuò)誤等,時(shí)間性能等等。而且傳統(tǒng)的機(jī)房上機(jī)中所涉及到的數(shù)據(jù)庫幾乎都是SQL Server、Oracle、MySQL等,而現(xiàn)在社會(huì)發(fā)展早已進(jìn)入了大數(shù)據(jù)時(shí)代,數(shù)據(jù)的規(guī)模甚至達(dá)到TB、PB級(jí),傳統(tǒng)的數(shù)據(jù)庫技術(shù)在解決大數(shù)據(jù)問題面前遇到了一系列問題。課程教學(xué)應(yīng)該要緊密聯(lián)系生產(chǎn)界的主流技術(shù),與實(shí)踐緊密融合,讓學(xué)生將掌握的理論知識(shí)靈活運(yùn)用到實(shí)際工程中,達(dá)到學(xué)以致用的效果。同時(shí)長期單一的教學(xué)模式不容易使學(xué)生保持較好的學(xué)習(xí)積極性。因此必須運(yùn)用不同的教學(xué)方法與教學(xué)形式,調(diào)動(dòng)學(xué)生的學(xué)習(xí)熱情,促進(jìn)學(xué)生的學(xué)習(xí)。

2 基于Hadoop的數(shù)據(jù)庫教學(xué)實(shí)驗(yàn)平臺(tái)的構(gòu)建

隨著互聯(lián)網(wǎng)的發(fā)展,數(shù)據(jù)呈指數(shù)級(jí)增長。大數(shù)據(jù)的存儲(chǔ)、處理對(duì)現(xiàn)有數(shù)據(jù)庫技術(shù)提出了巨大的挑戰(zhàn),Hadoop的出現(xiàn)從一定程度上解決了這個(gè)問題,并得到了廣泛的運(yùn)用。④秉承課程教學(xué)要與實(shí)踐相結(jié)合的原則,我們通過搭建一個(gè)Hadoop平臺(tái)進(jìn)行數(shù)據(jù)庫教學(xué)、實(shí)驗(yàn)。

Hadoop是目前一個(gè)非常流行的開源框架,可編寫和運(yùn)行分布式應(yīng)用處理大規(guī)模數(shù)據(jù)。⑤Hadoop可運(yùn)行在由廉價(jià)機(jī)器構(gòu)建的集群上,有簡單、健壯、可擴(kuò)展等特點(diǎn)。HDFS文件系統(tǒng)是Hadoop的底層文件系統(tǒng),它是一個(gè)主從式的分布式文件系統(tǒng),有NameNode和若干個(gè)DataNode組成。HBase是基于HDFS上的一個(gè)開源數(shù)據(jù)庫,目前在一些大公司得到了廣泛運(yùn)用。HBase⑥是一個(gè)分布式的、面向列的開源數(shù)據(jù)庫,在Hadoop之上提供了類似于Bigtable的能力。HBase與關(guān)系型數(shù)據(jù)庫有著區(qū)別:HBase是一個(gè)適合于非結(jié)構(gòu)化數(shù)據(jù)存儲(chǔ)的數(shù)據(jù)庫,而且是基于列的而不是基于行的模式。HBase主要用于需要隨機(jī)訪問,實(shí)時(shí)讀寫大數(shù)據(jù)的情況。

針對(duì)目前數(shù)據(jù)庫教學(xué)中遇到的難題,我們利用Hadoop的技術(shù)優(yōu)勢,構(gòu)建了一個(gè)基于Hadoop的數(shù)據(jù)庫教學(xué)實(shí)驗(yàn)平臺(tái)。該平臺(tái)對(duì)于服務(wù)器的硬件配置要求較低,這也是Hadoop技術(shù)的一大優(yōu)勢,因此我們利用廉價(jià)的機(jī)器搭建起底層系統(tǒng)并配置好HDFS文件系統(tǒng)。

2.1 平臺(tái)的搭建

該平臺(tái)中有9臺(tái)計(jì)算機(jī),配置均為雙核CPU、4GB內(nèi)存、500G硬盤、Ubuntu操作系統(tǒng),我們選取的Hadoop版本是1.21,它具有良好的穩(wěn)定性、容錯(cuò)性。指定其中一臺(tái)計(jì)算機(jī)作為系統(tǒng)的NameNode及JobTracker,7臺(tái)作為系統(tǒng)的DataNode和TaskTracker。NameNode節(jié)點(diǎn)指導(dǎo)DataNode節(jié)點(diǎn)進(jìn)行底層的IO任務(wù),并記錄文件如何被分成文件塊、以及這些塊被哪些節(jié)點(diǎn)存儲(chǔ)等其他信息。而DataNode則存儲(chǔ)文件塊,進(jìn)行計(jì)算,并與其他節(jié)點(diǎn)交互、復(fù)制數(shù)據(jù)以實(shí)現(xiàn)冗余。在Hadoop文件系統(tǒng)HDFS上,我們配置適合Hadoop版本的HBase,HBase是一個(gè)能存儲(chǔ)海量數(shù)據(jù)的數(shù)據(jù)庫。由于NameNode節(jié)點(diǎn)在系統(tǒng)中作用較大,如果NameNode節(jié)點(diǎn)出現(xiàn)故障,整個(gè)平臺(tái)的使用都會(huì)受到影響。為此我們?nèi)∫慌_(tái)單獨(dú)的計(jì)算機(jī)作為Secondary NameNode,Secondary NameNode的作用是與NameNode通信,它不存儲(chǔ)HDFS的任何實(shí)時(shí)變化,只是按照一定的時(shí)間間隔獲取HDFS信息的一個(gè)快照。萬一NameNode節(jié)點(diǎn)出現(xiàn)故障,可根據(jù)Secondary NameNode上的信息快速恢復(fù)系統(tǒng)平臺(tái),并降低各節(jié)點(diǎn)丟失數(shù)據(jù)的概率。Hadoop的架構(gòu)如圖1所示。

圖1 Hadoop架構(gòu)

應(yīng)用層的構(gòu)建我們依據(jù)MVC設(shè)計(jì)原則,采用Struts+Hibernate+Spring技術(shù),將視圖控制模型分離,降低耦合度,提高代碼可重用性,使層次架構(gòu)更加清晰明了,同時(shí)也便于后期維護(hù)、降低維護(hù)成本。該平臺(tái)能夠處理大數(shù)據(jù),且使用的機(jī)器很廉價(jià),并具有較好的穩(wěn)定性、魯棒性。該平臺(tái)主要框架如圖2所示。

圖2 基于Hadoop的數(shù)據(jù)庫教學(xué)實(shí)驗(yàn)平臺(tái)

2.2 平臺(tái)功能介紹

用戶可通過登錄模塊進(jìn)入系統(tǒng)。系統(tǒng)管理員可以為學(xué)生分配平臺(tái)資源使用的權(quán)限,并可以執(zhí)行系統(tǒng)設(shè)置、用戶管理、消息發(fā)布、平臺(tái)維護(hù)等操作。學(xué)生根據(jù)管理員分配的權(quán)限可以進(jìn)入平臺(tái)執(zhí)行相應(yīng)的操作。

在實(shí)驗(yàn)練習(xí)模塊中學(xué)生可以通過該模塊操作HBase數(shù)據(jù)庫中的海量數(shù)據(jù),所學(xué)知識(shí)將在真實(shí)環(huán)境數(shù)據(jù)下得到運(yùn)用,能對(duì)知識(shí)點(diǎn)融會(huì)貫通。同時(shí)該平臺(tái)中的HBase數(shù)據(jù)庫不僅能滿足數(shù)據(jù)庫教學(xué)的中的一般需求,而且實(shí)現(xiàn)了壓縮算法、內(nèi)存操作和布隆過濾器,這能為一些學(xué)習(xí)能力較強(qiáng)的學(xué)生提供鉆研探索的機(jī)會(huì),有效地鍛煉學(xué)生的創(chuàng)新能力。在這里學(xué)生有機(jī)會(huì)玩轉(zhuǎn)大數(shù)據(jù),能真正地讓學(xué)生在課堂上所學(xué)的理論知識(shí)與實(shí)踐得到很好地結(jié)合。這為學(xué)生以后進(jìn)入社會(huì)參加工作提供了經(jīng)驗(yàn)。

深入學(xué)習(xí)模塊可以讓學(xué)生全面、深入地繼續(xù)學(xué)習(xí)。一方面,該模塊向?qū)W生展示了關(guān)于數(shù)據(jù)庫課程的教學(xué)方案、該教學(xué)平臺(tái)的特性、平臺(tái)的搭建細(xì)節(jié)以及平臺(tái)的使用指南,讓學(xué)生不僅能快速地學(xué)會(huì)這個(gè)平臺(tái)的使用,還能對(duì)該平臺(tái)有個(gè)全面細(xì)致的了解。另一方面,該模塊發(fā)布了一些教學(xué)視頻、講義、資料供學(xué)生下載,讓學(xué)生在課余時(shí)間能夠?qū)Ω信d趣的內(nèi)容進(jìn)行自主學(xué)習(xí)。

在線測試模塊主要給學(xué)生提供一個(gè)在線測試的平臺(tái),教師可以定期在平臺(tái)上發(fā)布在線測試,學(xué)生將在規(guī)定的時(shí)間內(nèi)進(jìn)入系統(tǒng)答題,由平臺(tái)自動(dòng)判分,同時(shí)平臺(tái)具有一定的查重功能,這能夠有效地避免抄襲現(xiàn)象的存在。對(duì)于每道題,教師可以提前設(shè)置好正確答案分析,學(xué)生可以在測試結(jié)束后自己分析做錯(cuò)的題。對(duì)于學(xué)生答題的判分情況,系統(tǒng)自動(dòng)生成各種報(bào)表,讓教師能對(duì)學(xué)生的學(xué)習(xí)情況有個(gè)全面細(xì)致的了解,從而對(duì)學(xué)生的薄弱知識(shí)點(diǎn)進(jìn)行查缺補(bǔ)漏。

答疑解惑模塊可以讓教師、學(xué)生在線直接交流,學(xué)生對(duì)于未來課程所期望的知識(shí)點(diǎn)講解也可以留言,學(xué)生不懂的問題可以在此請(qǐng)教教師,這打破了課堂教學(xué)時(shí)間的限制,能讓學(xué)生獲得更多的指導(dǎo)學(xué)習(xí)時(shí)間。

3 數(shù)據(jù)庫教學(xué)實(shí)驗(yàn)平臺(tái)的效果與優(yōu)勢分析

自從該平臺(tái)投入教學(xué)使用后,取得了較好的教學(xué)效果。學(xué)生的學(xué)習(xí)熱情越來越高,參與在線學(xué)習(xí)的人(下轉(zhuǎn)第181頁)(上接第139頁)數(shù)越來越多,在線測試中學(xué)生的成績斐然,參與數(shù)據(jù)庫實(shí)驗(yàn)平臺(tái)的學(xué)生人數(shù)和在線時(shí)間均處于持續(xù)增長。

搭建這個(gè)數(shù)據(jù)庫教學(xué)實(shí)驗(yàn)平臺(tái)并在教學(xué)中使用是我們?cè)诮虒W(xué)改革中的探索,這為以后的教學(xué)改革指明了方向。

搭建了基于Hadoop的數(shù)據(jù)庫教學(xué)實(shí)驗(yàn)平臺(tái)。一方面提供給了學(xué)生一個(gè)鍛煉實(shí)踐的機(jī)會(huì)。學(xué)生在教材中學(xué)到的各種理論知識(shí)都能在該平臺(tái)的練習(xí)中得到深入理解并加以融會(huì)貫通,增加了學(xué)生動(dòng)手鍛煉的機(jī)會(huì),通過平臺(tái)的教學(xué),學(xué)生能夠深入理解數(shù)據(jù)庫基本原理,熟練設(shè)計(jì)數(shù)據(jù)庫的基本原則以及具體細(xì)節(jié),掌握數(shù)據(jù)庫操作的性能調(diào)優(yōu)技術(shù)。Hadoop、HBase等新技術(shù)的運(yùn)用不僅能讓學(xué)生了解工業(yè)界流行的技術(shù),避免與實(shí)際脫軌,而且有助于培養(yǎng)學(xué)生的獨(dú)立思考、解決新問題的能力。同時(shí)對(duì)于那些感興趣的同學(xué),可以進(jìn)一步學(xué)習(xí)Hadoop框架的底層實(shí)現(xiàn)細(xì)節(jié)。另一方面,該平臺(tái)在教學(xué)中的使用改變了傳統(tǒng)的教學(xué)模式,讓學(xué)生成為教學(xué)的主體,學(xué)習(xí)過程中更加注重的是學(xué)習(xí)方法的指導(dǎo),重視學(xué)生能力的培養(yǎng)。特別是定期的在線測試改變了傳統(tǒng)的考核方式,在完成每個(gè)學(xué)習(xí)階段后,相應(yīng)的在線測試能檢測學(xué)生的學(xué)習(xí)效果,能讓學(xué)生始終保持對(duì)自身的正確認(rèn)識(shí)。通過多元化的教學(xué)方式,極大地調(diào)動(dòng)了學(xué)生的積極性和主動(dòng)性。

4 結(jié)束語

數(shù)據(jù)庫技術(shù)是計(jì)算機(jī)科學(xué)技術(shù)中的核心技術(shù)之一,也是發(fā)展最快的技術(shù)之一。數(shù)據(jù)庫學(xué)科理論性強(qiáng)、實(shí)踐應(yīng)用性突出的特點(diǎn)決定了學(xué)好這門學(xué)科必須要理論與實(shí)踐相結(jié)合。本文針對(duì)當(dāng)前的數(shù)據(jù)庫課程教學(xué)現(xiàn)狀中存在的問題進(jìn)行了深入分析,并提出了一個(gè)基于Hadoop的教學(xué)實(shí)驗(yàn)平臺(tái),該教學(xué)實(shí)驗(yàn)平臺(tái)具有良好的交互性、易操作,在數(shù)據(jù)庫的教學(xué)中起著重要的作用。這不僅能強(qiáng)化學(xué)生對(duì)教材中理論知識(shí)的掌握,而且提供給學(xué)生一個(gè)實(shí)踐的機(jī)會(huì),極大地鍛煉了學(xué)生獨(dú)立思考、解決新問題的能力。在將來的教育中應(yīng)該要重視實(shí)踐環(huán)節(jié),培養(yǎng)學(xué)生的創(chuàng)新能力。

注釋

① 薩師煊,王珊.數(shù)據(jù)庫系統(tǒng)概論[M].高等教育出版社,2000.

② 瞿中.數(shù)據(jù)庫教學(xué)方法改革的探索與實(shí)踐[J].黑龍江高教研究,2006(2):113-114.

③ 張?jiān)?,韓燮.基于CDIO的數(shù)據(jù)庫課程體系改革與實(shí)踐[J].計(jì)算機(jī)教育,2011(3):52-55.

④ Borthakur D, Gray J, Sarma J S, et al. Apache Hadoop goes realtime at Facebook[C]//Proceedings of the 2011 ACM SIGMOD International Conference on Management of data. ACM, 2011:1071-1080.

⑤ Shvachko K, Kuang H, Radia S, et al. The hadoop distributed file system[C]//Mass Storage Systems and Technologies (MSST), 2010 IEEE 26th Symposium on. IEEE,2010:1-10.

⑥ The Apache HBase project.http://hbase.apache.org/.

猜你喜歡
理論基礎(chǔ)專業(yè)技能數(shù)據(jù)庫
淺談學(xué)前教育專業(yè)技能大賽與課堂教學(xué)的有機(jī)銜接
活力(2019年19期)2020-01-06 07:36:22
不斷提高攝影記者的專業(yè)技能和綜合素質(zhì)
新聞傳播(2018年10期)2018-08-16 02:10:04
數(shù)據(jù)庫
實(shí)踐性知識(shí)視角下教師培訓(xùn)實(shí)踐性課程開發(fā)的理論基礎(chǔ)
淺議中職計(jì)算機(jī)基礎(chǔ)課自主學(xué)習(xí)教學(xué)模式
會(huì)計(jì)準(zhǔn)則變革的非預(yù)期效應(yīng)理論框架構(gòu)建
商情(2016年40期)2016-11-28 09:40:02
非法證據(jù)排除規(guī)則的理論基礎(chǔ)
數(shù)據(jù)庫
數(shù)據(jù)庫
數(shù)據(jù)庫
永年县| 安图县| 郓城县| 河池市| 道孚县| 河南省| 巴塘县| 通化县| 临朐县| 云林县| 巩义市| 若尔盖县| 遵化市| 溧水县| 鄂州市| 延长县| 同德县| 遵义县| 陆丰市| 巴东县| 梁山县| 惠来县| 南漳县| 富锦市| 客服| 丰宁| 芦山县| 池州市| 日土县| 海口市| 林西县| 深圳市| 叶城县| 四会市| 札达县| 台湾省| 类乌齐县| 莎车县| 高雄县| 腾冲县| 菏泽市|