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