???????? Service Data Object(SDO)是Service Oriented Architecture(SOA)體系中的基本技術之一。近來,BEA,IBM,ORACLE,SAP,IONA,SIEBEL和Sybase都發布了他們支持SOA使能規范的框架,就是常說的Service Component Architecture(SCA)。SDO在這些框架中提供了最基本的數據表示功能。
??????? 目前,大多電信,企業應用都采用了關系數據庫作為數據存儲介質。在傳統的開發過程中,開發者通常要了解一些關系數據庫的基本知識,比如SQL語法,存儲過程等。SDO的出現,極大的改善了這一狀況。精通數據庫的項目成員可以專注于數據庫部分,業務開發者可以專注于開發業務邏輯,他們只用了解SDO的一些接口即可,他們不用關心后端的存儲源到底是什么。
??????? SDO給我們帶來了以下的好處:
??????? 1.? 它以無連接的方式表示數據庫的一個view,這樣可以降低應用對數據庫的訪問頻率,降低server負載。
??????? 2.? 它能夠自動跟蹤所有對數據圖的更改。
??????? 3.?? 相對關系數據庫的數據存儲模型,SDO的樹狀數據模型更符合客觀世界,降低了數據冗余。
??????? 4.? SDO能夠很容易的序列化為XML格式數據。
??????? 5.? SDO能夠屏蔽后端的數據源,業務開發者不用關注后端數據源具體是什么。(有可能但不限于是XML,DB,其它組件,EJB等)
其中上面的第4個特性為我們帶來了巨大的好處,這使SDO能夠成為各個組件之間的通信橋梁,從而使SDO成為SOA體系中不可或缺的一部分。
??????? 不過當前的SDO(2.0)規范只定義了數據模型層,對DAS層沒有規范出來,SDO3.0規范會加入對DAS的定義。期待ing。