淺談基于SDO的異構服務數(shù)據(jù)模型研究
下面由YJBYS求職網(wǎng)小編為整理的關于淺談基于SDO的異構服務數(shù)據(jù)模型研究的計算機應用畢業(yè)論文!
摘要:面向服務架構SOA是當前解決異構系統(tǒng)整合和應用系統(tǒng)集成問題的理想方案。通過使用SOA中的服務數(shù)據(jù)對象及數(shù)據(jù)訪問服務技術,對異構服務數(shù)據(jù)模型進行設計,該模型屏蔽了異構數(shù)據(jù)庫間的數(shù)據(jù)訪問細節(jié),從而隔離了數(shù)據(jù)源與應用層,實現(xiàn)業(yè)務邏輯與數(shù)據(jù)源的松耦合。
關鍵詞:SOA; 服務數(shù)據(jù)對象; 異構數(shù)據(jù)模型
0引言
隨著計算機技術發(fā)展和應用的日益廣泛,企業(yè)積累了大量以不同形式存儲的電子數(shù)據(jù),這些數(shù)據(jù)主要以關系型數(shù)據(jù)庫、Excel文件和XML文件等格式存儲,構成了企業(yè)的信息數(shù)據(jù)資源。對于這些根據(jù)當時企業(yè)發(fā)展需要建立起來的分散和孤立的數(shù)據(jù),如何充分利用好這些信息資源,不僅是企業(yè)內部數(shù)據(jù)資源整合和發(fā)展的需要,也是企業(yè)之間數(shù)據(jù)交換的需要。
面向服務架構SOA是當前解決異構系統(tǒng)整合和應用系統(tǒng)集成問題的理想方案。它可以利用現(xiàn)有資源,實現(xiàn)跨平臺的整合,增加程序功能部件的重復利用,減少開發(fā)成本,加快新應用的部署,降低實施風險,促進流程的不斷優(yōu)化,充分高效的'整合現(xiàn)有資源,幫助企業(yè)順利實施信息集成。本文在對SOA體系架構的相關理論及其技術進行研究的基礎之上,依據(jù)SOA建模策略,利用服務數(shù)據(jù)對象(SDO)架構,提出并建立了一種新的異構服務數(shù)據(jù)模型,旨在為信息訪問提供一個統(tǒng)一的數(shù)據(jù)應用框架,實現(xiàn)對企業(yè)內各異構數(shù)據(jù)源的統(tǒng)一、靈活和高效的訪問。
1相關技術介紹
1.1SOA的概念
面向服務的體系結構(SOA)是一個組件模型,它將應用程序中的不同功能單元稱為服務,并通過對這些服務之間定義良好的接口而將其聯(lián)系起來。如圖1所示:
圖1SOA參考模型架構圖
圖1中服務請求者和服務提供者是SOA實現(xiàn)過程中兩種關鍵角色。其中,服務提供者指的是通過發(fā)送請求消息并處理響應消息來提供服務的應用程序;服務請求者指的是通過發(fā)送請求消息調用服務的應用程序。一些服務提供者同時也是服務請求者。服務代理作為服務提供者和服務請求者之間的中介,是一個服務和數(shù)據(jù)描述的存儲庫。其中,服務提供者可以通過服務代理發(fā)布它們的服務,服務請求者可以通過服務代理發(fā)現(xiàn)或查找可用的服務。服務綁定調用指的是在檢索完服務描述之后,服務請求者繼續(xù)根據(jù)服務描述中的信息來調用服務。
1.2SDO架構
SDO具有一個可組合的架構。它提供了一組核心組件和服務,然后使用SDO支持的工具和框架進行擴展。核心SDO規(guī)范提供了適用于各種類型的數(shù)據(jù)源的基本API。
圖2為在J2EE框架下建立的SDO技術架構
圖2SDO技術架構圖
在SDO中,客戶應用程序并不直接地連接數(shù)據(jù)源。它訪問一個叫做數(shù)據(jù)訪問服務的中介并接收響應中的數(shù)據(jù)圖。DAS是為特定數(shù)據(jù)源種類處理技術細節(jié)的服務。它為客戶端將數(shù)據(jù)轉換成SDO?蛻舳藨贸绦蚺c數(shù)據(jù)圖進行交互來獲得數(shù)據(jù)和改變數(shù)據(jù)。為了將更新應用于原始的數(shù)據(jù)源,應用程序將更新過的圖發(fā)送回DAS,而DAS又與數(shù)據(jù)源交互。通常,運行時提供DAS的實現(xiàn),而應用程序開發(fā)工具提供對數(shù)據(jù)圖的支持。
2異構服務數(shù)據(jù)模型的研究及設計
2.1數(shù)據(jù)模型研究
建立一個數(shù)據(jù)模型的原則,簡言之就是:根據(jù)實際情況,反映業(yè)務需要。所以,在數(shù)據(jù)模型的具體技術實現(xiàn)過程中,要考慮的兩個關鍵問題:一是數(shù)據(jù)的訪問;二是數(shù)據(jù)存儲的持久化。數(shù)據(jù)模型建立的主要目的就是實現(xiàn)數(shù)據(jù)訪問及數(shù)據(jù)傳遞,同時如何高效地存儲數(shù)據(jù)也是數(shù)據(jù)模型的重要組成部分,只有做好了這兩點,才能建立一個良好的數(shù)據(jù)模型。目前,現(xiàn)有數(shù)據(jù)模型的設計模式及實現(xiàn)技術至少有以下幾種方式:業(yè)務邏輯與數(shù)據(jù)訪問耦合模式;主動域對象模式;0RM模式。
2.2異構服務數(shù)據(jù)模型設計
在軟件系統(tǒng)的開發(fā)過程中,可以采用以上三種模式來進行數(shù)據(jù)模型的設計。然而,由于目前企業(yè)對業(yè)務流程提出了新的要求,即隨需而變。原有的數(shù)據(jù)模型設計模式不能很好地滿足軟件開發(fā)需要。因此,在分析比較了上述三種數(shù)據(jù)模型設計模式的基礎上,本文提出一種新的設計模式——自主數(shù)據(jù)模式。
該模式以數(shù)據(jù)為中心,從物理數(shù)據(jù)庫獲取的數(shù)據(jù)將按照某種預定義的結構存放在一個虛擬數(shù)據(jù)庫中,數(shù)據(jù)一旦從物理數(shù)據(jù)庫中取出,就具有了自主性,不受原物理數(shù)據(jù)庫結構束縛。系統(tǒng)將對虛擬數(shù)據(jù)庫中用一種統(tǒng)一的數(shù)據(jù)視圖形式表示的數(shù)據(jù)進行操作,該數(shù)據(jù)的任何操作與后臺數(shù)據(jù)源無關。此外,這些數(shù)據(jù)還可以與XML格式文檔進行方便的互換。在本文中,從數(shù)據(jù)庫取得的數(shù)據(jù)將轉換為服務數(shù)據(jù)對象中的相應數(shù)據(jù)形式,系統(tǒng)應用程序在執(zhí)行過程中將調用該格式數(shù)據(jù)執(zhí)行操作。
根據(jù)自主數(shù)據(jù)模式,本文設計了一種新的服務數(shù)據(jù)模型(Service Data Model,SDM),即面向服務的數(shù)據(jù)模型。SDM模型將面向服務的思想與數(shù)據(jù)模型相結合,以建立統(tǒng)一數(shù)據(jù)模型為中心,在SOA架構中抽象出一個服務數(shù)據(jù)層,用來解決SOA的數(shù)據(jù)操作請求。
在SOA的構建過程中包含很多環(huán)節(jié)。如:業(yè)務流程的劃分管理,服務組合,服務表示等。而本文研究的內容只是其中的一部分,即如何實現(xiàn)業(yè)務邏輯在SOA體系架構中與最底層——數(shù)據(jù)層的分離,這也與SOA的實施宗旨——松散耦合相對應。通過SDM模型,無需熟悉特定于技術的API,就能訪問和利用數(shù)據(jù)。
本文采用基于層次的方式對SDM模型進行建模,主要思想是將數(shù)據(jù)操作過程中的各層分離。通過數(shù)據(jù)映射模塊,將系統(tǒng)數(shù)據(jù)的構造與操作映射為對各異構數(shù)據(jù)庫的操作,通過應用系統(tǒng)再對數(shù)據(jù)進行更新與修改。在建模過程中,最底層的數(shù)據(jù)源作為一個層次,由于各數(shù)據(jù)源具有異構性,所以需對這些不同的數(shù)據(jù)源向上抽象出一個統(tǒng)一的接口,以便應用程序方便地訪問、轉化和更新存儲在多個異構數(shù)據(jù)源中的數(shù)據(jù)。最后再通過應用程序調用所需數(shù)據(jù)或執(zhí)行相關操作。
3結束語
本論文在對SOA體系架構的相關理論及其技術進行研究的基礎之上,依據(jù)SOA建模策略,利用SDO及DAS,實現(xiàn)數(shù)據(jù)模型中各層的開發(fā);并通過使用服務數(shù)據(jù)對象和數(shù)據(jù)訪問服務,屏蔽了異構數(shù)據(jù)庫間的數(shù)據(jù)訪問細節(jié),從而隔離了數(shù)據(jù)層與業(yè)務層。旨在為信息訪問提供一個統(tǒng)一的數(shù)據(jù)應用框架,實現(xiàn)對企業(yè)內各異構數(shù)據(jù)源的統(tǒng)一、靈活和高效的訪問。
參考文獻:
[1] Thomas Erl,王滿紅,陳榮華譯.SOA概念、技術與設計.北京:機械工業(yè)出版社,2006.
李洪奇,武裝等.基于SOA的企業(yè)應用集成[J].微計算機信息,2010,1(3):53-55.
Johnson,James L,李天柱,肖艷芹,楊天柱等譯.數(shù)據(jù)庫:模型、語言與設計.電子工業(yè)出版社,2004.
【淺談基于SDO的異構服務數(shù)據(jù)模型研究】相關文章:
5.淺談基于顧客資產(chǎn)的企業(yè)營銷戰(zhàn)略研究