【摘要】在分析校園網絡中數(shù)據(jù)存在的問題,針對數(shù)據(jù)的特點,以數(shù)據(jù)為核心, 通過對現(xiàn)有的整合平臺和整合技術的對比,從而結合Java 語言自身的優(yōu)勢和特點提出基于Hibernate框架結構的整合技術校園網絡的數(shù)據(jù)整合方案。
【關鍵詞】校園網;數(shù)據(jù)整合;中間件整合技術
1.引言
伴隨著網絡的迅猛發(fā)展,信息技術得到了前所未有的發(fā)展和應用,在信息技術發(fā)展中,開發(fā)者和使用者逐步認識到,數(shù)據(jù)是信息技術中的應用核心,沒有數(shù)據(jù)的系統(tǒng),是沒有任何意義的硬件和軟件的疊加如同沒有生命的軀體,只有加上了數(shù)據(jù)在上面流通,如軀體有了血液,才有實際意義。同時為了保證系統(tǒng)的未定性和可用性,數(shù)據(jù)就需要有完整性、準確性、安全性、完整性等。
校園信息化從上世紀90年代開始快速發(fā)展,由于早期對數(shù)據(jù)預期不足,開發(fā)人員個體差異等各種原因,數(shù)據(jù)重復,凌亂、冗余、關聯(lián)性不夠等相關問題接踵而至。就長江職業(yè)技術學院來說,經過多年的信息化建設,學院在不同階段因為不同業(yè)務的需求,搭建了大量不同業(yè)務的系統(tǒng),伴隨著系統(tǒng)也產生了大量的數(shù)據(jù),在開發(fā)過程宏由于技術、需求的原因,從單個軟件系統(tǒng)的應用的角度看,這些數(shù)據(jù)均具有較高的完整性、準確性、安全性、一致性、可用性都不成問題,但整個學院的校園網絡來看,對于不同的領導、部門、科室,多個業(yè)務系統(tǒng)數(shù)據(jù)存在交叉,數(shù)據(jù)存在著種類多、關聯(lián)性差、無同步性。整體表現(xiàn)為缺少統(tǒng)一規(guī)劃和集中管理,標準化不高,大量無效冗余等問題。相關數(shù)據(jù)只為單個系統(tǒng)提供服務,無法實現(xiàn)全局同步、共享等,數(shù)據(jù)孤島現(xiàn)象明顯,由此產生形式上的數(shù)據(jù)冗余。因此如何從全局角度出發(fā),對數(shù)據(jù)的完整性、準確性、安全性、一致性可用性,進行處理成了大量企事業(yè)單位面臨的一大困難,數(shù)據(jù)集成的必要性和迫切性就不言而喻,不斷被推至信息發(fā)展的首要位置。
2.數(shù)據(jù)現(xiàn)狀
經過學院多年的信息化發(fā)展,目前學院已開始使用,不包括正在開發(fā)的各種業(yè)務系統(tǒng)有20個,開發(fā)系統(tǒng)大部分屬于不同的開發(fā)人員、開發(fā)階段和不同的業(yè)務要求,每個應用系統(tǒng)均自己的數(shù)據(jù)庫。
這些系統(tǒng)都是學院在不同的階段為解決不同的業(yè)務需求而建設的,各系統(tǒng)之間沒有考慮關聯(lián),產生的數(shù)據(jù)相互之間也沒有關聯(lián)。這造成了目前多頭存放的數(shù)據(jù)之間存在著無效冗余。
數(shù)據(jù)系統(tǒng)主要存在以下問題:
(1)數(shù)據(jù)共享差
隨著學院的發(fā)展,不同時期產生的系統(tǒng)種類繁,學院各部門、科室相互溝通較少,大多數(shù)系統(tǒng)基本上是針對學院某一單一管理業(yè)務,累積的數(shù)據(jù)也僅限于部門或科室內部使用,系統(tǒng)之間即使相同的數(shù)據(jù)也無法進行有效關聯(lián)與更新,缺乏信息的充分融合,不能實現(xiàn)信息互動,在實際使用中如:查詢學生是否滿足畢業(yè)條件都需查詢兩個系統(tǒng)以上可以得出結論;
(2)數(shù)據(jù)缺乏規(guī)劃
不同時期不同人員不同軟件開發(fā)的數(shù)據(jù)庫種類多、雜。學院數(shù)據(jù)但缺少統(tǒng)一規(guī)劃和集中管理,相關數(shù)據(jù)時效性不強,標準化不高,并有大量無效冗余,大量的學生及教師數(shù)據(jù)庫無法在全局內共享服務,操作人員需多處修改數(shù)據(jù),數(shù)據(jù)孤島現(xiàn)象明顯;
(3)數(shù)據(jù)可用性低
在眾多系統(tǒng)中,同一人員進入學院的不同應用系統(tǒng)需不同的密碼和身份標示,應用無法有效的統(tǒng)計分析現(xiàn)有數(shù)據(jù),提供決策支持信息。
3.數(shù)據(jù)整合
由于數(shù)據(jù)資源不能夠很好地共享,從而不能滿足各單位對信息資源整體開發(fā)利用的需求,因此需要對數(shù)據(jù)進行必要的整合。目前在數(shù)據(jù)整合領域,通常采用聯(lián)邦數(shù)據(jù)庫技術、數(shù)據(jù)倉庫、中間件技術等方法來構造集成的系統(tǒng),這三種方法在不同的著重點和應用上解決數(shù)據(jù)問題。
聯(lián)邦數(shù)據(jù)庫是由Hammer和MvLeod于1979首先提出,在1985年進行了完善,在聯(lián)邦數(shù)據(jù)庫中數(shù)據(jù)源相互獨立,為了實現(xiàn)整合,將各個不同數(shù)據(jù)源之間用于交換的數(shù)據(jù)格式進行一一映射,提供訪問結構,分享數(shù)據(jù),其有點事,整合的數(shù)據(jù)源保留在原有的存儲文職,減少了一定資源的浪費,缺點是擴展性差、查詢反饋較慢,由于其是基礎IBM的DB2數(shù)據(jù)庫系統(tǒng),對于不用數(shù)據(jù)庫資源整合極大不利。
數(shù)據(jù)倉庫就是一種信息集合,要將處理后的數(shù)據(jù)資源存儲在相同的物理問題,使用戶訪問的復雜度得到簡化,提高訪問速度。缺點是功能邏輯復雜,開發(fā)成本較高系統(tǒng)運行開銷較大。
4.數(shù)據(jù)整合方案-中間件整合技術
中間件技術即當客戶端需要查詢某些數(shù)據(jù)時,相關數(shù)據(jù)或服務存在于不同的操作系統(tǒng)服務器上,服務器應用程序長得查詢模塊只需要調用中間件系統(tǒng)就能夠獲得數(shù)據(jù)或服務,并將結果返回給客戶端。其優(yōu)點是可以較好應付不同平臺的數(shù)據(jù)資源整合,使程序的結構層次清晰,降低程序設計的復雜度,同時又大大節(jié)約成本。
在聯(lián)邦數(shù)據(jù)庫系統(tǒng)、數(shù)據(jù)倉庫技術、中間件技術三類數(shù)據(jù)整合技術中,功能和實現(xiàn)方式上各有所長,校園網絡發(fā)展多年,在保證大部分系統(tǒng)正常運行的情況,采取有效的措施解決信息孤島來實現(xiàn)校園網絡信息整合是關鍵所在,中間件整合技術在校園數(shù)據(jù)整合中,不但可以降低成本,還可以兼容多個數(shù)據(jù)平臺,是實現(xiàn)校園數(shù)據(jù)整合的關鍵所在首先重新設計數(shù)據(jù)庫開發(fā)周期長,花費高是不可取的。
開發(fā)中在不改變原有應用系統(tǒng)的前提下,每個系統(tǒng)獨立運行,對局部進行變動使用中間件技術,使得各應用系統(tǒng)可以通過這個中間件相互訪問,查詢各自信息資源,實現(xiàn)資源共享和信息傳輸,同時保證數(shù)據(jù)的一致性和完整度。其次統(tǒng)一開發(fā)結構和數(shù)據(jù)庫建設方案對后續(xù)開發(fā)的系統(tǒng)學校統(tǒng)一開發(fā)結構,對個數(shù)據(jù)元素按照用途劃分類別,按業(yè)務環(huán)節(jié)和流程劃分數(shù)據(jù)類、數(shù)據(jù)子類、數(shù)據(jù)項,并進行標準化統(tǒng)一編號。規(guī)劃設計完成后,起實施可分為轉換和統(tǒng)一兩個階段,逐步實施。
對象關系映射(Object Relation Mapping,簡稱ORM),面向對象的開發(fā)方法是當前商業(yè)開發(fā)應用軟件的主流開發(fā),其注重利用元數(shù)據(jù)將數(shù)據(jù)在對象數(shù)據(jù)庫表格之間來回映射,從而確保訪問代碼不直接侵入域或對象,ORM系統(tǒng)一般是以中間件的形式存在,主要實現(xiàn)程序對象到關系數(shù)據(jù)庫數(shù)據(jù)的映射。就好比是程序中業(yè)務實體對象魚數(shù)據(jù)庫中關系數(shù)據(jù)之間的紐帶,主要作用是管理處于持久化狀態(tài)的域對象,提供通用數(shù)據(jù)訪問方法,優(yōu)化數(shù)據(jù)訪問性能,極大簡化和優(yōu)化了發(fā)雜的數(shù)據(jù)持久化問題,數(shù)據(jù)庫操作對業(yè)務邏輯編程透明,可以使編程人員更專注開發(fā)業(yè)務邏輯功能,提高了開發(fā)效率。
我們在校園數(shù)據(jù)整合中采用目前最為廣泛使用的 Hibernate作為中間整合件,它是使用最為廣泛的開源框架,它成功第實現(xiàn)透明持久化,一面向對象的HQL封裝SQL,提供了一個簡單靈活且面向對象的數(shù)據(jù)訪問接口。對象持久化就是把數(shù)據(jù)同步保存到數(shù)據(jù)庫或某些存儲設備中。在傳統(tǒng)的三層結構中業(yè)務邏輯層要負責業(yè)務邏輯和訪問數(shù)據(jù)庫, 對于純面向對象語言來說,三層結構沒有達到MVC 框架所要求的目標,因而演變出四層結構,在四層結構中實現(xiàn)了邏輯層和對象持久化層的分離。目前大多數(shù)校園網的業(yè)務系統(tǒng)都是獨立的,特別在持久化層,經過整合之后可以把所有系統(tǒng)數(shù)據(jù)層抽象為一個整體,由Hibernate 框架完成,結構如圖1所示。同時當我們只對數(shù)據(jù)庫MySQL 和SQL2000有需求時,這樣數(shù)據(jù)庫就可以保持不變,學生處或者教務處的系統(tǒng)進行代碼修改就可以了由于Hibernate對SQL 語句的封裝,對于這樣的改進是很容易的實現(xiàn)的,大大簡化了開發(fā)難度。在這種結構下可以采用XML 文件的方式來配置異構數(shù)據(jù)庫。
5.結語
對校園網絡的數(shù)據(jù)整合的整合能有效的加大對數(shù)據(jù)的利用率,同時也能減少業(yè)務系統(tǒng)升級或開發(fā)的時間和周期,它在數(shù)據(jù)持久層給開發(fā)者提供統(tǒng)一異構數(shù)據(jù)源接口,使得校園網的資源和業(yè)務系統(tǒng)的利用率能達到最好的效果。它具有個性化展現(xiàn)、業(yè)務和應用集成等功能;通過數(shù)據(jù)整合,大大加強了校園網絡的應用力度,極大地提升了工作效率,提高了高校的教學和管理水平,為高校實現(xiàn)跨越式發(fā)展提供了基礎和保障。