湖北中醫(yī)藥大學(xué)信息工程學(xué)院
數(shù)字化校園是以數(shù)字化信息和網(wǎng)絡(luò)為基礎(chǔ),利用計(jì)算機(jī)技術(shù)、網(wǎng)絡(luò)技術(shù),對教學(xué)、科研、管理和生活服務(wù)等校園信息資源進(jìn)行全面、規(guī)范的收集、處理、整合、存儲(chǔ)、傳輸和集成應(yīng)用,使數(shù)字資源得到充分優(yōu)化利用,構(gòu)成統(tǒng)一的用戶管理、資源管理和權(quán)限控制,以實(shí)現(xiàn)教育信息化、管理規(guī)范化[1]。
就當(dāng)前各高校的信息系統(tǒng)發(fā)展?fàn)顩r而言,各部門系統(tǒng)相對獨(dú)立,大部分以自身需求應(yīng)用為主體,未綜合考慮學(xué)校各部門系統(tǒng)之間的交互性、集成性、統(tǒng)一性以及擴(kuò)展性,不僅造成資源浪費(fèi),而且仍存在信息更新的滯后等問題。因此,為盡可能充分利用現(xiàn)有資源,避免重復(fù)開發(fā),本文提出了基于云計(jì)算的數(shù)字化校園數(shù)據(jù)集成系統(tǒng),目的在于充分利用整合學(xué)校現(xiàn)有信息系統(tǒng)資源,提高各系統(tǒng)的綜合運(yùn)維能力。
云計(jì)算(Cloud Computing)是一種近年來提出的新型計(jì)算模式,是一種基于互聯(lián)網(wǎng)的計(jì)算方式,通過這種方式,共享的軟硬件資源和信息可以按需求提供給計(jì)算機(jī)和其他設(shè)備,是分布式計(jì)算、并行計(jì)算和網(wǎng)格計(jì)算的發(fā)展結(jié)果[2,3]。
“基于云計(jì)算的數(shù)字化校園數(shù)據(jù)集成系統(tǒng)”是在數(shù)字化校園的基礎(chǔ)上,實(shí)現(xiàn)對云計(jì)算環(huán)境中各種關(guān)系型、非關(guān)系型異構(gòu)數(shù)據(jù)進(jìn)行智能集成,根據(jù)不同部門用戶所提出的不同需求,滿足各用戶高并發(fā)、高負(fù)載及高速處理海量數(shù)據(jù)的復(fù)雜多表關(guān)聯(lián)的查詢請求[4]。
該系統(tǒng)的功能從適用范圍上可分為兩大類,一類是使用面較廣、適應(yīng)較強(qiáng)、使用環(huán)境較復(fù)雜,但操作相對較少的簡約型,例如面向廣大師生、實(shí)驗(yàn)技術(shù)人員和某些行政部門的功能需求;另一類是使用面相對較窄,但數(shù)據(jù)操作量大、操作頻繁、要求穩(wěn)定,對硬軟件要求較高的集中型,例如針對少數(shù)內(nèi)部管理人員使用的部分業(yè)務(wù)。因此,系統(tǒng)充分利用B/S 結(jié)構(gòu)的子系統(tǒng)部署簡便,維護(hù)成本低,C/S 結(jié)構(gòu)的事務(wù)處理能力較強(qiáng),保證數(shù)據(jù)操作的速度、可靠性、穩(wěn)定性的特點(diǎn),采用B/S 三層結(jié)構(gòu)的子系統(tǒng)和C/S 結(jié)構(gòu)的子系統(tǒng)相互結(jié)合的混合部署方式,根據(jù)不同類別的功能需求采取不同的結(jié)構(gòu)模式。部署結(jié)構(gòu)圖如圖1所示。
圖1 部署結(jié)構(gòu)圖
圖2 系統(tǒng)整體邏輯框架圖
從系統(tǒng)的整體結(jié)構(gòu)而言,可分為應(yīng)用層、中間層、云層3 個(gè)層次,其中應(yīng)用層包括教務(wù)管理、圖書館、科研、不動(dòng)產(chǎn)管理等應(yīng)用;中間層即面向數(shù)字校園數(shù)據(jù)集成交互的核心服務(wù)過程層,包括資源服務(wù)以及應(yīng)用反饋,是數(shù)字校園應(yīng)用服務(wù)數(shù)據(jù)支撐的重要載體;云層負(fù)責(zé)提供中間層在資源調(diào)度時(shí)需各類資源的使用分配工作。
在此3 層中,涉及云端數(shù)據(jù)交互接口、數(shù)據(jù)分析與任務(wù)調(diào)度功能接口、數(shù)據(jù)集成接口、云數(shù)據(jù)存儲(chǔ)管理以及數(shù)據(jù)安全管理5 個(gè)功能,統(tǒng)一在云數(shù)據(jù)存儲(chǔ)管理功能的管理與協(xié)調(diào)下工作,系統(tǒng)整體邏輯框架圖如圖2。
云端數(shù)據(jù)交互接口作為系統(tǒng)對外調(diào)用的統(tǒng)一接口,主要功能在于根據(jù)用戶提出的功能需求,完成用戶查詢等功能語句的預(yù)處理以及處理最終結(jié)果的展示。
對于分布式數(shù)據(jù)庫、傳統(tǒng)關(guān)系數(shù)據(jù)庫和非關(guān)系型的數(shù)據(jù)庫(noSQL),系統(tǒng)應(yīng)支持統(tǒng)一自定義的查詢語言,滿足不同類型的數(shù)據(jù)查詢要求。各用戶根據(jù)自身功能需求情況,定義標(biāo)準(zhǔn)SQL 接口和shell 接口提交查詢分析請求,該分析請求經(jīng)預(yù)處理后傳達(dá)到數(shù)據(jù)分析與任務(wù)調(diào)度功能,調(diào)用數(shù)據(jù)集成接口,得到最終數(shù)據(jù)分析結(jié)果返回用戶。
該接口的主要功能在于接收從遠(yuǎn)端數(shù)據(jù)交互接口預(yù)處理后的數(shù)據(jù)后,將各用戶查詢?nèi)蝿?wù)按設(shè)定要求作相應(yīng)的邏輯操作,根據(jù)虛擬數(shù)據(jù)庫結(jié)構(gòu)將邏輯操作自動(dòng)生成為相對應(yīng)的子任務(wù)集合,最后將子任務(wù)集合傳輸給數(shù)據(jù)集成接口。
在數(shù)據(jù)分析與任務(wù)調(diào)度過程中,對數(shù)據(jù)查詢處理采取的生成子任務(wù)集合的方式,因此需要涉及數(shù)據(jù)獲取分析任務(wù)管理和數(shù)據(jù)獲取分析用戶管理等模塊,用于對用戶數(shù)據(jù)起到相應(yīng)的控制和監(jiān)視作用。
該接口是整個(gè)系統(tǒng)最根本的核心,主要功能在于完成數(shù)據(jù)分析與任務(wù)調(diào)度后傳輸?shù)牟樵冏尤蝿?wù)集的具體實(shí)現(xiàn)和結(jié)果反饋,并通過異構(gòu)數(shù)據(jù)語義集成方式將現(xiàn)有校園公有云中存在的各種異構(gòu)數(shù)據(jù)動(dòng)態(tài)集成,構(gòu)造實(shí)時(shí)最新的校園公有云。
此接口不僅要完成針對特定數(shù)據(jù)源的數(shù)據(jù)訪問調(diào)用,形成處理后的一個(gè)個(gè)原子操作,再將這些操作傳遞給云計(jì)算處理接口統(tǒng)一執(zhí)行,并向上層反饋處理結(jié)果,而且還要考慮到云計(jì)算環(huán)境中各種不同數(shù)據(jù)存儲(chǔ)方式、不同數(shù)據(jù)處理模式等數(shù)據(jù)之間的同步性,確保系統(tǒng)在延展性方面的要求。
該功能模塊是保證整個(gè)系統(tǒng)正常穩(wěn)定運(yùn)行的基礎(chǔ),借助云計(jì)算環(huán)境下的資源數(shù)據(jù)管理技術(shù)方法,實(shí)現(xiàn)為所需各功能提供數(shù)據(jù)存儲(chǔ)管理和系統(tǒng)資源動(dòng)態(tài)配置,以及云計(jì)算環(huán)境下的高并發(fā)、高負(fù)載、海量數(shù)據(jù)的查詢與存儲(chǔ)的管理功能。
該功能的實(shí)現(xiàn),必須依靠云計(jì)算環(huán)境下的元數(shù)據(jù)和服務(wù)管理技術(shù)。在底層可采取分布式數(shù)據(jù)庫和傳統(tǒng)關(guān)系數(shù)據(jù)庫等各種存儲(chǔ)結(jié)構(gòu),以求能夠符合對于不同的各個(gè)數(shù)據(jù)源配置要求的存儲(chǔ)架構(gòu),使得各類用戶在使用時(shí)都有一個(gè)適合的方式存儲(chǔ)和管理用戶數(shù)據(jù)。
該功能模塊是整個(gè)系統(tǒng)穩(wěn)定運(yùn)行的重要保障,主要在于完成本系統(tǒng)運(yùn)行過程中所涉及的用戶認(rèn)證、權(quán)限管理、安全維護(hù)、異常處理和日志管理等系統(tǒng)安全服務(wù)。
掌握數(shù)據(jù)源的元數(shù)據(jù),即被集成數(shù)據(jù)源的相關(guān)信息,是進(jìn)行異構(gòu)數(shù)據(jù)源的集成操作的前提條件[5]。
根據(jù)數(shù)據(jù)集成元數(shù)據(jù)現(xiàn)有結(jié)構(gòu),按統(tǒng)一標(biāo)準(zhǔn)描述設(shè)計(jì)相應(yīng)的數(shù)據(jù)庫,數(shù)據(jù)庫字段按描述集分類制定,以確保數(shù)據(jù)集成元數(shù)據(jù)結(jié)構(gòu)不存在失真現(xiàn)象。
由于各數(shù)據(jù)源的應(yīng)用目的和背景均不相同,以至于各元數(shù)據(jù)在構(gòu)造過程中的語法、語義、模式等方面都存在異構(gòu)。由此,數(shù)據(jù)集成的功能目的就是從現(xiàn)有數(shù)據(jù)源出發(fā),將其中具有相同概念、被定義為主鍵的元數(shù)據(jù)作為匹配鏈接的關(guān)聯(lián)點(diǎn),根據(jù)不同的應(yīng)用業(yè)務(wù)查詢需求從各數(shù)據(jù)源取得數(shù)據(jù),并將數(shù)據(jù)做相應(yīng)的匯總與整合,為減少在整合時(shí)因?yàn)閿?shù)據(jù)源對字段類型定義的不同而導(dǎo)致集成失敗,所以在進(jìn)行實(shí)際的集成過程之前,必須根據(jù)實(shí)際的查詢需求建立相應(yīng)的集成模式,以具有相同語義的元數(shù)據(jù)重新定義用戶能夠理解的名稱、類型和長度等信息標(biāo)準(zhǔn)進(jìn)行轉(zhuǎn)換。
相同語義的元數(shù)據(jù)在不同數(shù)據(jù)源中表達(dá)形式基本都不一樣,常規(guī)的集成模式是一種范圍相對較窄的統(tǒng)一方式,唯一能確保僅有直接與相對應(yīng)元數(shù)據(jù)相聯(lián)系的查詢過程才可能得到所需數(shù)據(jù)結(jié)果,為進(jìn)一步擴(kuò)展相關(guān)功能,借鑒集成模式特點(diǎn),加強(qiáng)系統(tǒng)與用戶之間的交互關(guān)系,直接將整合表的主動(dòng)權(quán)交給用戶,讓用戶確定整合模式及范圍,使得元數(shù)據(jù)最終的關(guān)聯(lián)關(guān)系更加集中明確,也進(jìn)一步簡化了異構(gòu)數(shù)據(jù)源的查詢過程[6]。
通過分析集成模式及其對應(yīng)的映射關(guān)系,將集成模式的查詢分解處理為一個(gè)個(gè)對各異構(gòu)數(shù)據(jù)源的查詢,再將各數(shù)據(jù)源的查詢結(jié)果歸并整合形成最終的集成結(jié)果。基本步驟如下:
1)按需求對集成模式作預(yù)處理,生成用戶視圖,并匹配相應(yīng)的映射關(guān)系。
2)根據(jù)用戶視圖結(jié)果,做進(jìn)一步分析處理,通過“字段”以及相應(yīng)的映射關(guān)系確定每個(gè)數(shù)據(jù)源需要查詢的字段,以用戶視圖的“字段”作為數(shù)據(jù)源表的字段的別名,若不存在用戶視圖“字段”在數(shù)據(jù)源中的映射關(guān)系,則以NULL 值進(jìn)行代替數(shù)據(jù)源字段。
3)生成各數(shù)據(jù)源的查詢語句,建立臨時(shí)表保存查詢結(jié)果,準(zhǔn)備集成。
4)對臨時(shí)表排序并按關(guān)聯(lián)關(guān)系生成新的臨時(shí)表,迭代重復(fù)直到最后一個(gè)臨時(shí)表,即為集成查詢的初步結(jié)果。
5)對最終的臨時(shí)表進(jìn)行整理,反饋用戶并輸出,完成數(shù)據(jù)集成。
基于云計(jì)算的環(huán)境下提出一種數(shù)字化校園數(shù)據(jù)集成系統(tǒng)的框架,借助云計(jì)算環(huán)境下統(tǒng)一的數(shù)據(jù)獲取、分析、應(yīng)用接口和異構(gòu)數(shù)據(jù)集成、訪問接口,可實(shí)時(shí)將學(xué)校各系統(tǒng)數(shù)據(jù)匯總統(tǒng)計(jì),減少高校建設(shè)數(shù)字校園開支,充分利用各部門原有的設(shè)備和系統(tǒng),提升教育科研資源共享,為學(xué)校領(lǐng)導(dǎo)提供最及時(shí)的決策支持,增加學(xué)校綜合競爭力。
[1]蔣東興.大學(xué)資源計(jì)劃的方案研究[J].清華大學(xué)學(xué)報(bào):自然科學(xué)版,2004,44(4).
[2]Danielson,Krissi.Distinguishing Cloud Computing from Utility Computing.Ebizq.net.[2010-08-22].
[3]Gartner Says Cloud Computing Will Be As Influential As E-business.Gartner.com.[2010-08-22].
[4]鐘將,宋娟.基于本體的異構(gòu)數(shù)據(jù)集成框架[J].計(jì)算機(jī)工程,2011,7(14):44-46,49.
[5]丁一琦.異構(gòu)數(shù)據(jù)訪問中間件的設(shè)計(jì)與實(shí)現(xiàn)[J].科技資訊,2011 (1):43.
[6]楊森,夏燕等.語義異構(gòu)生物數(shù)據(jù)源中的數(shù)據(jù)集成與更新.計(jì)算機(jī)工程,2008,348)38-40.