張曲苗
(大慶油田有限責(zé)任公司井下作業(yè)分公司,黑龍江 大慶 163000)
網(wǎng)格是網(wǎng)絡(luò)技術(shù)發(fā)展的主要方向之一,在實現(xiàn)不同資源共享方面可以起到至關(guān)重要的作用,可以為客戶提供“即連即用”服務(wù)。網(wǎng)格計算具備一體化優(yōu)勢,可以很好地實現(xiàn)資源共享。網(wǎng)絡(luò)中的信息和資源孤島可以借助網(wǎng)格技術(shù)消除。文章從框架設(shè)計、實現(xiàn)方案方面就企業(yè)應(yīng)用系統(tǒng)集成進行了探究,以期實現(xiàn)企業(yè)管理中的數(shù)據(jù)融合、共享以及信息聯(lián)動效果。
企業(yè)應(yīng)用集成(Enterprise Application Integration,EAI)指通過把企業(yè)所有必需的異構(gòu)功能實體連接起來,進行跨界的信息和控制流的傳輸,在這種情況下,企業(yè)就可以成為一個協(xié)調(diào)的整體,其生產(chǎn)和運營效果會得到顯著提升。企業(yè)應(yīng)用系統(tǒng)集成的層次是多方面的,最終集成為一個系統(tǒng)。目前,基于消息的中間件方式是運用比較廣泛的集成技術(shù),IBM 的MQ Series和微軟的MSMQ 都運用了這種集成技術(shù),這一技術(shù)在各種系統(tǒng)間借助一個消息中間件實現(xiàn)交互。因為不同制造商的產(chǎn)品很難實現(xiàn)兼容,而且要提前定制消息中間件,導(dǎo)致系統(tǒng)的運行效率較低,整個開發(fā)過程需要較長的時間。而網(wǎng)格技術(shù)可以有效克服上述問題,為企業(yè)應(yīng)用系統(tǒng)的集成提供一個新視角。
開放網(wǎng)格服務(wù)體系結(jié)構(gòu)(Open Grid Services Architecture,OGSA)是Web 依托網(wǎng)格技術(shù)提供服務(wù)的體系,這一體系是建立在網(wǎng)格服務(wù)基礎(chǔ)設(shè)施(Open Grid Service Infrastructure,OGSI)上的,這也是一種分布系統(tǒng)的創(chuàng)新。企業(yè)借助OGSA 建立并運行的各種管理都可以充分整合在一起,并形成了通知機制,使得各種應(yīng)用之間的互操作和共享成為現(xiàn)實,滿足了大型企業(yè)系統(tǒng)管理的各種要求。
OGSA 是基于網(wǎng)格技術(shù)企業(yè)應(yīng)用集成的基本框架。在OGSA 中,所有的一切都被抽象地認為是為了服務(wù),一切程序和設(shè)備都是如此,網(wǎng)格的使用是借助統(tǒng)一的標(biāo)準(zhǔn)接口來實施的。Globus Toolkit 和Web Service 是OGSA 的 兩大技術(shù)支撐,Globus Toolkit 屬于操作系統(tǒng),Web Service 是訪問網(wǎng)絡(luò)應(yīng)用時普遍采用的標(biāo)準(zhǔn)框架。技術(shù)人員可以使用Globus 聯(lián)盟推出的Globus Toolkit 4 建立網(wǎng)格平臺,在平臺上設(shè)立網(wǎng)格門戶,數(shù)據(jù)中心,證書頒發(fā)機構(gòu)(Certificate Authority,CA)服務(wù)器,通用描述、發(fā)現(xiàn)以及整合(Universal Description,Discovery,and Integration,UDDI)服務(wù)器。網(wǎng)格門戶是融合各應(yīng)用系統(tǒng)的數(shù)據(jù)以后,可以用來查詢統(tǒng)計數(shù)據(jù)的界面。數(shù)據(jù)中心服務(wù)器提取出各個應(yīng)用系統(tǒng)中需要交互的數(shù)據(jù),在該中心中使用統(tǒng)一的格式存放,屬于備份數(shù)據(jù)。CA 服務(wù)器不僅可以簽訂合同、公布數(shù)字證書,而且可以對證書的有效性進行驗證,沒有數(shù)字證書的授權(quán),在網(wǎng)格中的任何活動的身份和權(quán)限都是非法的。UDDI服務(wù)器主要是用來提供匹配服務(wù)的,這些服務(wù)的內(nèi)容包括從注冊到發(fā)揮作用的全過程,而且網(wǎng)格服務(wù)不經(jīng)注冊是不能實施的。把Web Service 配置到應(yīng)用系統(tǒng)端和數(shù)據(jù)中心,利用Web Service 對系統(tǒng)數(shù)據(jù)庫實施操作,就可以運用原系統(tǒng)進行信息聯(lián)動以及數(shù)據(jù)共享和融合。
用戶通過客戶端上的Web 瀏覽器訪問網(wǎng)格門戶,這樣可以掌握系統(tǒng)中的所有信息。用戶在注冊了自己的賬戶之后,一旦獲得了授權(quán),就可以對自己的數(shù)據(jù)和信息進行處置,并利用系統(tǒng)的交互功能分享這些信息和數(shù)據(jù)。當(dāng)用戶申請網(wǎng)格服務(wù)時,網(wǎng)格接口就可以把用戶的需求轉(zhuǎn)化為XML 文件,再通過任務(wù)分析模塊把工作流程自動設(shè)計出來。在流程的不同階段,可查詢本系統(tǒng)中的網(wǎng)格服務(wù)是否存在。這些網(wǎng)格服務(wù)被查到后,通過表格的形式調(diào)出,進而開始服務(wù),服務(wù)結(jié)果往往儲存在Cache中??蛻舳擞脩敉ㄟ^網(wǎng)格門戶可以得到這些服務(wù)結(jié)果,如果無法查找到這些服務(wù),則出現(xiàn)錯誤信息自動退回。網(wǎng)格服務(wù)與注冊技術(shù)是密切相關(guān)的,每個服務(wù)器節(jié)點的Web Service 注冊應(yīng)當(dāng)按照UDDI 標(biāo)準(zhǔn)來完成,把自己所有可以提供的服務(wù)進行注冊登記。集成方案的體系結(jié)構(gòu)由服務(wù)封裝層、服務(wù)管理和發(fā)現(xiàn)層、服務(wù)接口層、應(yīng)用層四個層次構(gòu)成,由下層向上層提供服務(wù)。服務(wù)封裝層負責(zé)提取元數(shù)據(jù),在統(tǒng)一格式的前提下,把這些數(shù)據(jù)封裝起來,通過服務(wù)管理和發(fā)現(xiàn)層進行注冊和對外發(fā)布,還可進行服務(wù)監(jiān)控以及服務(wù)調(diào)度優(yōu)化組合。在服務(wù)接口層,可描述和翻譯用戶任務(wù),對任務(wù)進行分析。應(yīng)用層主要為集成系統(tǒng)和用戶的交互界面。
需要交互的數(shù)據(jù)應(yīng)在數(shù)據(jù)中心備份,并及時更新對數(shù)據(jù)中心的數(shù)據(jù)。從應(yīng)用系統(tǒng)的邏輯功能來看,本機數(shù)據(jù)難以實現(xiàn)與Web Service 的交互,Web Service 的定時執(zhí)行成為實現(xiàn)維護功能的重要手段。數(shù)據(jù)更新會形成大量的數(shù)據(jù)流動,所以數(shù)據(jù)更新的頻率不能太高。為了不讓數(shù)據(jù)大規(guī)模更新,通常會在應(yīng)用系統(tǒng)數(shù)據(jù)庫中建立數(shù)據(jù)索引,同時構(gòu)建專門的緩沖池,更改的數(shù)據(jù)在緩沖池內(nèi)儲存。在維護應(yīng)用系統(tǒng)中的數(shù)據(jù)時,必須通過Web Service 借助數(shù)據(jù)索引篩選出那些更新過的數(shù)據(jù),然后把他們傳輸?shù)綌?shù)據(jù)中心,在這一過程中,要隨時刷新數(shù)據(jù)索引,再將需要聯(lián)動的數(shù)據(jù)項寫入緩沖池,并觀察合適的時機,用這些數(shù)據(jù)替換應(yīng)用系統(tǒng)數(shù)據(jù)庫中的數(shù)據(jù),這樣系統(tǒng)內(nèi)就會隨時保存有用數(shù)據(jù)。部署在應(yīng)用系統(tǒng)端的Web Service 會對緩沖池中的數(shù)據(jù)定時查看,及時用數(shù)據(jù)中心緩沖池中的數(shù)據(jù)替換應(yīng)用系統(tǒng)中的數(shù)據(jù),并進行數(shù)據(jù)更新,向操作人員發(fā)出通知,操作人員接到這些通知以后,按照指令操作系統(tǒng)。
網(wǎng)格應(yīng)用的關(guān)鍵是網(wǎng)格服務(wù)。在企業(yè)集成系統(tǒng)中,每一個應(yīng)用系統(tǒng)都需進行封裝并存儲,并通過Web 服務(wù)描述語言(Web Services Description Language,WSDL)描述服務(wù)。針對用戶需求,所有的網(wǎng)格節(jié)點都可以提供相應(yīng)的服務(wù),各個節(jié)點的服務(wù)效果并不完全相同,甚至存在較大的差別。對此,要盡可能選擇有效的服務(wù),提高網(wǎng)格計算的效能。服務(wù)質(zhì)量(Quality of Service,QoS)體現(xiàn)為滿足用戶需求的能力。QoS 可以從多個角度來分析,包括服務(wù)的準(zhǔn)確性和有效性,也包括服務(wù)的安全性和規(guī)范性。QoS 會對網(wǎng)格服務(wù)產(chǎn)生極大的影響,對此,應(yīng)選取子模塊來進行構(gòu)建服務(wù),通過調(diào)用數(shù)據(jù)集成中的服務(wù)質(zhì)量評估子系統(tǒng),量化評價不同節(jié)點的各項服務(wù),保證度量的統(tǒng)一性。要基于節(jié)點提供的服務(wù)質(zhì)量屬性矩陣和用戶定義的服務(wù)質(zhì)量權(quán)值向量來對每個節(jié)點可提供的服務(wù)質(zhì)量進行綜合評價,得到服務(wù)質(zhì)量綜合治理辦法,再擇優(yōu)選擇節(jié)點。在多個節(jié)點中,應(yīng)選擇服務(wù)效果好的節(jié)點提供用戶服務(wù),以此提升集成系統(tǒng)整體服務(wù)質(zhì)量。
網(wǎng)格環(huán)境中的應(yīng)用系統(tǒng)多種多樣,各應(yīng)用系統(tǒng)在數(shù)據(jù)庫系統(tǒng)、操作系統(tǒng)和硬件方面都有所不同。數(shù)據(jù)庫又有著獨立的設(shè)計,這就會使得不同數(shù)據(jù)語義之間的差異十分明顯。通過集成系統(tǒng),在一個被理解的文檔中集成了多種數(shù)據(jù)源,而不同系統(tǒng)數(shù)據(jù)源的異構(gòu)性主要是通過可擴展標(biāo)記語言(Extensible Markup Language,XML)來進行消除,通過模式元數(shù)據(jù)對模式信息進行定義,包括字段和數(shù)據(jù)庫的描述信息,如精度、單位、屬性以及數(shù)據(jù)約束等??赏ㄟ^XML Schema 文檔或文檔類型定義(Document Type Definition,DTD)文檔來處理XML 文檔。如果是Html 文檔以及沒有定義模式信息的其他文本文檔需要增添模式信息,可通過包裝程序的設(shè)計來完成,對結(jié)構(gòu)化的數(shù)據(jù)進行抽取。通過定位元數(shù)據(jù)定義導(dǎo)航信息,對于數(shù)據(jù)源位置的獲取可通過查詢謂詞、統(tǒng)一資源定位系統(tǒng)(Uniform Resource Locator,URL)、URL+文件名、數(shù)據(jù)庫名+導(dǎo)航算法、數(shù)據(jù)庫名等實現(xiàn)。可利用XML 文檔采用簡單對象訪問協(xié)議(Simple Object Access Protocol,SOAP)和Web 服務(wù)描述語言WSDL 來消除各組件間的異構(gòu)性,從而形成統(tǒng)一的數(shù)據(jù)庫系統(tǒng)。
某油田采取上述的技術(shù)和方法成功集成了14 個應(yīng)用系統(tǒng),包括不同的數(shù)據(jù)庫技術(shù)、不同的運行環(huán)境、不同開發(fā)時期等多種應(yīng)用系統(tǒng),在企業(yè)內(nèi)部形成了一個數(shù)據(jù)網(wǎng)絡(luò)平臺,簡化了管理流程,極大提升了管理效率。當(dāng)前,這種應(yīng)用集成只適用于比較小的范圍,還需要加大研究力度,做好組合優(yōu)化、服務(wù)的相似性理解以及控制網(wǎng)絡(luò)流量等,以提升系統(tǒng)的可靠性和穩(wěn)定性。此外,信息服務(wù)只是停留在Grid 服務(wù)和Web 服務(wù)方面,未覆蓋非結(jié)構(gòu)化信息服務(wù),在后續(xù)的發(fā)展過程中,非結(jié)構(gòu)化信息提取技術(shù)將是一個新的研究方向。