網路選課系統中分布式資料庫設計
何翠雙王巧雲張麗麗
摘要:
關鍵字:選課;分布式;資料庫
distributed system of on-line course choosing
abstract:
key words: course choosing
;distributed ;database
隨著學校規模不斷擴大,專業、班級、學生的數量急劇增加,有關學生選課的各種資訊量也成倍增長。目前許多高校的學生選課管理仍停留在人工操作上,重複工作較多,工作量大,效率低。既便有些高校已經使用了網上選課系統,仍然存在著可擴充性差、安全機制不夠完善等問題。
針對這些情況,我們開發了基於網際網路的分布式網路選課系統,主要是利用oracle9i強大的分布式功能來實現的。在分布式網路選課系統中,主要是分布式資料庫的設計,以解決資料共享、資料庫間的複製和資料安全等問題。
分布式資料庫需要建立若干個資料庫站點(在這裡我們建立三個),分別儲存在不同的伺服器上,通過彼此之間建立資料鏈路來形成乙個整體的分布式資料庫系統。
在選課系統中,使用者分為管理員、老師和學生。我們通過生成管理員角色、老師角色和學生角色三個不同的角色來分別賦予他們不同的許可權。
在每乙個資料庫站點中,都存有學生資訊表,教師資訊表,課程資訊表,選課資訊表,選課結果表,以這幾個表為基表,建立學生-課程、教師-課程等檢視。
在建立分布式資料庫的過程中,把整個資料庫分成三個大小均等的資料庫站點:a站點、b站點、c站點。a的複製站點建到b伺服器上,b的複製站點建到c伺服器上,c的複製站點建到a伺服器上,這樣可以在某台資料庫伺服器發生故障的時候,不至於導致整個資料庫的癱瘓。
在設計過程中把整個資料庫分成三個大小均等的資料庫站點:xkxt1站點、xkxt2站點、xkxt3站點,通過資料鏈路,實現它們之間的鏈結。在物理上是三個小型的資料庫,分別儲存在三個小型的伺服器上,在邏輯上是乙個統一的資料庫,這對於使用者來說是透明的。這樣就省去了大型伺服器的使用,降低了裝置成本,而且實現了高效率的網路選課和管理。
在伺服器xkxt1上建立資料庫xkxt1,在伺服器xkxt2建立資料庫xkxt2,在伺服器xkxt3上建立xkxt3,三個資料庫之間是通過網際網路連線起來的,各資料庫間的關係如圖1-1所示:
圖1-1
管理員是資料庫的超級使用者,擁有一切許可權,他負責資料庫的管理與安全維護,管理其他使用者資訊,備份與恢復資料庫。老師與學生是資料庫的普通使用者,他們只有資訊查詢與修改自己基本資訊的許可權。老師可以查詢選修某課程的學生的名單與學生的基本資訊,學生可以查詢講授某選修課
程的老師的基本資訊,老師與學生都可以修改自己的基本資訊以及學生選課。
每個小型資料庫的內部結構是一樣的。主要表之間的聯絡如圖1-2所示: 圖
1-2
xkxt1儲存的是計算機系,外語系,文傳系的資訊,xkxt2 中儲存的是數學系,物理系,化學系的資訊,而在xkxt3中儲存的是美術系,**系,體育系的資訊,將資料儲存在最靠近它頻繁使用的地方,這樣就可以降低了對cpu和i/o服務的爭用。在每個分資料庫中都建立了到另外兩個分資料庫的資料鏈路,即在資料庫xkxt1中建立了到資料庫xkxt2和到資料庫xkxt3的資料鏈路,在資料庫xkxt2中建立了到資料庫xkxt1和到資料庫xkxt3的資料鏈路,在資料庫xkxt3中建立了到資料庫xkxt1和到資料庫xkxt2的資料鏈路,這樣就可以實現資料庫間的資料共享。在邏輯上是乙個整體,在物理儲存的時候分別儲存在若干個小型的伺服器上面,從而實現易於擴充套件,**低廉的選課系統。
在oralce 分布式資料庫中,要訪問遠端資料庫,必須在tnsnamewora檔案中配置好它的訪問路經。
在使用者具有建立create database link 或createpublic database link 的許可權下,就可以建立資料鏈路。
建立好資料庫鏈結後就可以用有效的使用者名稱和密碼直接訪問遠端資料庫的資料了,可以同時訪問本地和遠端資料庫的資料。資料的訪問對使用者來說是透明的。
為了保證資料庫的安全,資料訪問的透明性為各個物件建立同義詞。
為了避免由於突發事件造成資料庫毀壞,在資料庫的執行其間最好讓其工作於歸檔模式並建立相應的日誌檔案。
主要應用增量匯出的方式,對資料進行備份。具體如下安排:
星期一完全匯出(a)
星期二增量匯出(b)
星期三增量匯出(c)
星期四增量匯出(d)
星期五累計匯出(e)
星期六增量匯出(f)
星期日增量匯出(g)
假設,在星期日的時候,資料庫遭到了破壞,資料庫管理員可以按以下步驟來恢復資料庫:
第一步:用命令create database 重新生成資料庫結構。
第二步:建立乙個足夠大的附加回滾段。
第三步:完全增量匯入a。
imp system/manager inctype=restore full=y file a
第四步:累計增量匯入e
imp system/manager inctype=restore full=y file=e
第五步 最近增量匯入f
imp system/manager inctype=restore full=y file=f
分布式網路選課系統基於多層架構,不受時間、地點的限制,面向internet易於使用且不受地域限制,能夠輕鬆的實現隨時隨地的移動辦公,提高辦公效率。分布式資料庫的構建提高了對資料庫的訪問速度、訪問透明性以及資料的安全性。分布式網路選課系統基本實現了分布式資料庫的構建與應用,在系統效能上還需進一步優化。
參考資料:
[1]孫佳、劉中兵、李伯華等.《jsp+oracle 動態**開發案例精選》.北京:清華大學出版社,2023年
[2]荊棘鳥工作室.《oracle 9i 應用及開發實務》.中國水利北京:中國水利水電出版社,2023年
[3]michael、j.hernanacle.z、john l、viescas.《sql查詢凡人入門》.北京:電子工業出版社,2023年
作者簡介:
何翠雙(1984-),女(漢),河北石家莊趙縣人,現就讀於石家莊學院,本科。
王巧雲(1984-),女(漢),河北石家莊藁城人,現就讀於石家莊學院,本科。
張麗麗(1984-),女(漢),河北唐山人,現就讀於石家莊學院,本科。
分布式資料庫
1 背景 我們知道資料是乙個公司的命脈,隨著業務越做越大,資料量也會越來越大,計算也會越來越複雜,效能,可靠性,可擴充套件性的需求就會越來越強烈,這個時候乙個集中式的資料庫顯然已經滿足不了需求了。對於技術決策者來說有兩條路可以走,第一 按照現有的大型資料庫的解決方案,比如sql server clu...
分布式資料庫
一 分布式資料庫的出現的場景 網際網路 軟體國產化 o2o 五新 新零售 新製造,新金融 新資源 新技術 等主題接連提出來,並且在各個行業落地,給資料庫帶來了巨大機會,具體包含3個方向 1.遠超單機資料庫容量的資料儲存和訪問峰值 2.實時資料分析檢索 oltp兼顧olap 3.更高階別的容災需求。這...
分布式資料庫
分布式資料庫系統通常使用較小的計算機系統,每台計算機可單獨放在乙個地方,每台計算機中都有dbms的乙份完整 拷貝副本,並具有自己區域性的資料庫,位於不同地點的許多計算機通過網路互相連線,共同組成乙個完整的 全域性的大型資料庫。這種組織資料庫的方法克服了物理中心資料庫組織的弱點。首先,降低了資料傳送代...