南京師范大學中北學院信息科學與技術系 王若賢
隨著大數據時代的到來,學生管理系統中多源數據的整合、數據信息的共享成為當下的研究熱點之一。本文提出將大數據中多源異構數據集成技術應用到高校學生管理系統中,從異構信息的集成、異構信息的重構、Web Service在系統中的應用三個方面來探討一種輕量級基于SOA的軟件設計方法。通過這樣一個集成,可以把各種相關數據資源進行整合,這種為訪問者提供統一界面和接口,從而解決了跨平臺異構管理系統導致的信息孤島問題,實現信息共享。
引言:隨著高等學校的規模逐漸擴大,高等學校學生的管理工作量也翻倍增長。為了應對這個問題,多數高校都選購了學生信息管理系統以提高管理工作效率、保證數據查詢的有效性、方便學校的管理工作人員全面的掌握學生工作情況、降低學生的工作量。但高校的不同部門采用的系統都是相對獨立的,學生相關信息分散在不同類型的數據庫系統中,缺少統一訪問門戶,存在信息孤島問題面對這種情況,本文提出了面向學生信息管理的異構數據集成方案,以實現多種數據源數據的集成與共享。
本文系統的結構分為用戶層、業務邏輯層和數據源層,從而構成一個多層服務器體系結構。本文系統中異構數據庫主要包括學籍管理數據庫、教務管理數據庫和團委管理數據庫,從而保證用戶對三個數據庫綜合的查詢功能。三個數據庫集成后,用戶不需要考慮數據庫的保存位置、連接設置、數據保存格式和數據結構等信息即可進行查詢操作。具體集成系統結構如圖1。

圖1 集成系統結構
(1)用戶層
用戶層能夠以網頁的形式實現系統和用戶兩者之間的交互。
(2)業務邏輯層(中間件層)
業務邏輯層即處理用戶操作并返回結果的中間層,它需要通過用戶層獲取用戶的操作,通過數據源層獲取業務需要的數據。因學生信息數據異構的特點,集成系統獲取數據的方式有兩種,一種是直接通過本地數據庫讀取所需的數據,另一種采用Web Service構建數據。為了統一不同系統下的異構數據以及數據的安全備份,業務邏輯層在獲取數據的同時,將異構數據整合存儲在本地數據庫中。
(3)數據源層
數據源層主要由多種數據來源不同的數據組成,是三層結構中的最底層。這一層的數據信息有數據庫、文件、多媒體等信息。
中間件Web Service工作模塊如圖2所示,共包含三個部分:查詢處理器、Web Service中間件、數據解析器。

圖2 中間件Web service工作模型
(1)查詢處理器
查詢處理器包括查詢解析、查詢分解、查詢轉換三個部分。
(2)Web Service中間件
1)數據庫連接配置
數據庫連接配置用來存放與不同數據庫連接配置信息,連接配置信息包括數據庫連接語句、設置事務隔離級別、是否使用外連接抓取等。
2)異構數據映射配置
異構數據映射配置負責定義類與目標數據表進行映射,可以根據需要獲取局部或全部的數據字段,并且可以對數據表字段進行統一化、規范化處理。
3)獲取數據封裝
將獲取的數據按照約定進行封裝,便于集成系統的解析和處理。由Web Service表示數據的基本格式即XML的特點,獲取的結果集還要進行XML層的封裝,所以使得接收結果集的平臺,無論它們所使用的語言、平臺或內部協議是什么,都可以很好的解析數據。
(3)數據解析器
數據解析器與具體數據表一一對應,完成接收結果集的信息的提取工作,并將數據存放在本地數據庫中或交于用戶層顯示給用戶。
(1)Web Service中間件初始化
為了把異構數據源數據集成在本文系統中,首先需要對Web Service中間件進行初始化。其中包括連接數據庫的配置文件和類、數據表映射文件以及程序的數據源封裝規則寫入。初始化基本流程如圖3所示。

圖4 接口可視化調用界面

圖5 接口返回數據界面

圖3 Web service中間件初始化
(2)系統工作過程
系統的運行過程如下:
1)用戶向系統發出查詢請求,系統啟動查詢處理器;
2)查詢處理器解析和分解查詢語句,然后將查詢語句生成執查詢命令,最后發動查詢命令給相應的Web Service中間件;
3)Web Service中間件根據查詢命令進行查詢,然后將查詢結果返回給業務邏輯層中的數據解析器;
4)數據解析器將查詢結果存儲到本地數據庫,調用相應頁面向用戶顯示結果集。
系統主要集成了三個數據庫,即:學籍管理數據庫、教務管理數據庫、團委管理數據庫,主要實現對不同數據庫中學生信息的異構整合。用戶只要本系統就可以獲取不同數據庫中的數據,而不必再去不同的管理系統中調取所需的數據,也不用考慮不同數據庫中數據存儲位置、存儲格式、數據結構等不同導致的問題,也就是說,對用戶來說,只是在本系統中進行數據的查詢,各個復雜系統中不同的數據結構對用戶而言是不存在的。異構數據集成使得本系統可以更好的兼容其他學校系統,無需考慮學校各個系統之間平臺、開發語言以及數據結構的差異。異構數據集成的實現依托于WebService接口中間件,根據對不同數據的不同數據要求,將數據表進行映射,然后對字段命名規則統一化,獲取所需的數據。WebService接口代碼可以依附本系統一起發布,也可以發布在對應異構數據庫的服務器上。本系統同過HTTP或TCP/IP的方式進行接口調用。得利與WebService接口可視化調用模式,如圖4所示為獲取學生獲得榮譽信息的接口截圖,GetStudentPrize為接口名稱,_studentnumber、_studentrelateinformation為接口的兩個參數,填寫相應的查詢信息點擊調用,獲取數據集如圖5所示。截圖中可以看出,數據是以JSON格式進行編碼,以XML進行封裝的,極大的滿足了數據在不同平臺間的傳遞。系統收到接口反饋的數據進行解析,并呈現給用戶。
數據的異構問題在各個高校的學生管理工作中都存在,因此異構數據集成有很重要的作用和現實意義,異構數據集成為解決學生的各種信息來源于不同的數據庫,存儲不同的數據格式這個問題提供了一條解決途徑。
參考:馮潤民,基于SSH的高校學生管理系統設計與實現:計算機工程,2009;馬孝賀,李莎,XML技術在大數據環境下的運用探討:無線互聯科技,2018;SANTIPACH W,HONIG M L.Optimization of training and feedback overhead for beamforming over block fading channels[J].IEEE Transactions on Information Theory,2010;余小高,余小鵬,基于Web服務、移動代理和本體的教育大數據集成研究:信息通信,2017;甘克勤,張寶林,計雄飛,田方,標準大數據實踐(1)——異構數據集成:標準科學,2016;劉云峰,楊冬青,唐世渭,et al.基于XML數據集成與交換中的完整性約束研究:計算機工程,2005;孫鴻飛,武慧娟,信息系統中基于數據倉庫技術的異構數據源的集成策略:電腦迷,2017;LEE S W,MOON B.Design of flash-based DBMS:an in-page logging approach;proceedings of the ACM SIGMOD International Conference on Management of Data,Beijing,China,June,F,2007;龐秋奔,李銀,基于Web Service多源異構系統增量同步的實現:計算機應用與軟件,2018;NG A Y,JORDAN M I.PEGASUS:A policy search method for large MDPs and POMDPs;proceedings of the Conference on Uncertainty in Artificial Intelligence,F,2013;舒建武,基于ASP.Net技術和工作流技術的學生信息管理系統的研究與開發:浙江工業大學,2009;袁宗杰,基于ASP.NET的學生信息管理系統的設計:電子科技大學,2014。