譚云松 孫先明 鄭更生 金豪 張峰
【摘 要】隨著Moodle 教學(xué)平臺(tái)的廣泛應(yīng)用,由于不同平臺(tái)的數(shù)據(jù)具有異構(gòu)性,教學(xué)文檔轉(zhuǎn)換日益重要,本文研究了數(shù)據(jù)庫(kù)轉(zhuǎn)換方法,讓舊版本 Moodle 也可支持目前許多大學(xué)所用的數(shù)據(jù)管理系統(tǒng)(如 Oracle, MS SQL server,Sybase),使 Moodle 功能與擴(kuò)充性增強(qiáng),并廣泛適用于各大型學(xué)校與組織。并通過(guò) ADOdb 函數(shù)庫(kù)的幫助,使之能與市面上大部分的數(shù)據(jù)庫(kù)管理系統(tǒng)連接,并定義一套符合 Moodle 使用的XML 來(lái)達(dá)到異構(gòu)數(shù)據(jù)庫(kù)的格式及舊數(shù)據(jù)的轉(zhuǎn)換。
【關(guān)鍵詞】Moodle;教學(xué)平臺(tái);數(shù)據(jù)轉(zhuǎn)換
【中圖分類號(hào)】G434【文獻(xiàn)標(biāo)識(shí)碼】A
【文章編號(hào)】2095-3089(2018)24-0025-01
一、研究背景
網(wǎng)絡(luò)學(xué)習(xí)傳統(tǒng)教育的一大改變與發(fā)展趨勢(shì),由于信息技術(shù)的快速發(fā)展與網(wǎng)路帶寬的提升,很多傳統(tǒng)的課堂活動(dòng)都逐漸的通過(guò)數(shù)字化與網(wǎng)路化的環(huán)境,讓教學(xué)活動(dòng)的參與者如學(xué)生、老師以及其他相關(guān)人員,可以更方便有效地進(jìn)行教學(xué)活動(dòng),增加學(xué)生的學(xué)習(xí)成效,減少老師所需投入的精力。
目前這類教學(xué)平臺(tái)系統(tǒng)可分為開(kāi)放源碼與商業(yè)版兩種。商業(yè)版軟件價(jià)格昂貴而且不容易進(jìn)行定制化修改,因此,開(kāi)放源碼軟件便逐漸為學(xué)校所接受。
原本為小型學(xué)校課程設(shè)計(jì)之Moodle后端檔案型數(shù)據(jù)管理系統(tǒng)MySQL,在大量存取下,時(shí)常產(chǎn)生前臺(tái)網(wǎng)頁(yè)讀取速度變慢及后臺(tái)數(shù)據(jù)庫(kù)資料損害的情況。
二、存在問(wèn)題分析
Moodle版本在1.7之后,提供了商用大型數(shù)據(jù)庫(kù)(Oracle、MS SQL Server)的支持。但對(duì)于早期已使用moodle1.7之前版本穩(wěn)定運(yùn)作的大型院校組織,可能已經(jīng)更改原代碼或開(kāi)發(fā)新模塊來(lái)作為官方教學(xué)平臺(tái),所以無(wú)法進(jìn)行版本的升級(jí), 也就只能維持現(xiàn)況同時(shí)管理兩套數(shù)據(jù)庫(kù),這樣的情況對(duì)于組織的數(shù)據(jù)維護(hù)實(shí)為一項(xiàng)挑戰(zhàn)與負(fù)擔(dān)。針對(duì)舊版 Moodle 無(wú)法克服的商用數(shù)據(jù)庫(kù)連結(jié)問(wèn)題,本文提出一套數(shù)據(jù)庫(kù)轉(zhuǎn)換的模型,雖然目前這個(gè)解決方案只是一個(gè)雛型,但是期望將來(lái)能把整個(gè)架構(gòu)建立得更加完善,能夠支持更多不同種類的平臺(tái)與數(shù)據(jù)庫(kù),為大型院校組織解決下列常見(jiàn)的問(wèn)題:
(1)數(shù)據(jù)須定時(shí)同步,數(shù)據(jù)可能不一致的問(wèn)題。
(2)小型MySQL數(shù)據(jù)庫(kù)面對(duì)前端使用者大量存取導(dǎo)致效能不佳的問(wèn)題。
(3)同時(shí)管理維護(hù)兩套數(shù)據(jù)庫(kù)的負(fù)擔(dān)問(wèn)題。
每種數(shù)據(jù)庫(kù)都有屬于自己的一套數(shù)據(jù)型態(tài)、數(shù)據(jù)結(jié)構(gòu)與數(shù)據(jù)定義或操作語(yǔ)言,基于XML擴(kuò)充性與可自行定義數(shù)據(jù)標(biāo)簽的原因,非常適合用來(lái)作為數(shù)據(jù)轉(zhuǎn)換的對(duì)照工具,用來(lái)定義MySQL與異構(gòu)性數(shù)據(jù)庫(kù)之間型態(tài)對(duì)應(yīng)的規(guī)則與Moodle使用后臺(tái)數(shù)據(jù)庫(kù)時(shí)的一些特別限制。
三、數(shù)據(jù)轉(zhuǎn)換方案研究
原始數(shù)據(jù)庫(kù)會(huì)產(chǎn)生一個(gè)完整結(jié)構(gòu)與數(shù)據(jù)的SQL Script 并參考自行定義的XML map file將SQL Script 內(nèi)容轉(zhuǎn)換成符合目標(biāo)數(shù)據(jù)庫(kù)語(yǔ)法適用的SQL Script, 最后在目標(biāo)數(shù)據(jù)庫(kù)上面執(zhí)行此SQL Script,建立與原始數(shù)據(jù)庫(kù)相同的結(jié)構(gòu)與數(shù)據(jù)。在程序執(zhí)行的過(guò)程中,我們也可以在此XML中規(guī)范一些例外的操作。另外,由于XML 是一個(gè)樹(shù)狀的結(jié)構(gòu)且具有可擴(kuò)充的性質(zhì), 將來(lái)我們可在上面描述
MySQL對(duì)應(yīng)其他數(shù)據(jù)庫(kù)型態(tài)的規(guī)則以達(dá)到擴(kuò)展后臺(tái)數(shù)據(jù)庫(kù)的功能。
數(shù)據(jù)轉(zhuǎn)換實(shí)踐可以以 ApacheHTTPD2.2.9、PHP5.2.6、MySQL5.0.51b、Moodle 1.6.5、Oracle 9.2.0 等版本作為測(cè)試平臺(tái),Moodle雖是開(kāi)放源碼平臺(tái),
但其套件支持性與教學(xué)管理都已具相當(dāng)?shù)乃?,雖沒(méi)有專業(yè)級(jí)經(jīng)驗(yàn)廠商的維護(hù), 但由于其自由軟件特性,所以擁有更大量的社團(tuán)投入開(kāi)發(fā),使導(dǎo)入的成本大大的降低。為了使其應(yīng)用在現(xiàn)有的 Moodle平臺(tái)之上,將 Oracle數(shù)據(jù)庫(kù)轉(zhuǎn)換至 MySQL或PostgreSQL之上。mDBC是繼承著自由軟件精神所制作出來(lái)的 Moodle組件, 可以讓有需要的人利用以從事數(shù)字學(xué)習(xí)工作的使用,并期以個(gè)人的力量與經(jīng)驗(yàn)分享給龐大的 Moodle開(kāi)發(fā)社團(tuán),讓 mDBC能更靈活的運(yùn)用在 Moodle的平臺(tái)之上。本研究期望此 Moodle之轉(zhuǎn)換軟件的研究,能為數(shù)字學(xué)習(xí)帶來(lái)實(shí)際與實(shí)用性的幫助。
四、 總結(jié)
本文定義了一個(gè)符合Moodle后臺(tái)數(shù)據(jù)庫(kù)轉(zhuǎn)換使用的 XML map file,用以處理 MySQL數(shù)據(jù)庫(kù)與 Oracle數(shù)據(jù)庫(kù)轉(zhuǎn)換的對(duì)應(yīng)格式規(guī)則,且留下將來(lái)擴(kuò)充到別的數(shù)據(jù)庫(kù)的延伸方式。在 mDBC的研究當(dāng)中,我們經(jīng)歷過(guò)很多 MySQL數(shù)據(jù)庫(kù)與其它數(shù)據(jù)庫(kù)的型態(tài)不符問(wèn)題,數(shù)據(jù)表名稱長(zhǎng)度問(wèn)題,數(shù)據(jù)匯入格式問(wèn)題,ADOdb函數(shù)庫(kù)套用在 Moodle的問(wèn)題等,這些數(shù)據(jù)與遇到過(guò)的問(wèn)題可作為將來(lái)進(jìn)一步的研究提供很好的經(jīng)驗(yàn)。
參考文獻(xiàn)
[1]Marina Papastergiou.Course. Management Systems as Tools for the Creation of Online Learning Environments:Evaluation from a Social Constructivist Perspective and Implications for their Design.” International Journal on E-Learning. (2006)(4), pp. 593-622. Chesapeake, VA:AACE.
[2]姚?,?, 趙嵬. 基于網(wǎng)絡(luò)課程平臺(tái)的混合式學(xué)習(xí)模式的探索與實(shí)踐[J]. 高教論壇, 2012(11):85-88.
[3]王燕. 基于高校網(wǎng)絡(luò)教學(xué)平臺(tái)的混合學(xué)習(xí)要素分析[J].教育教學(xué)論壇,2016(37):251-252.