《基于軟總線技術的多數(shù)據(jù)庫融合應用研究與實現(xiàn).ppt》由會員分享,可在線閱讀,更多相關《基于軟總線技術的多數(shù)據(jù)庫融合應用研究與實現(xiàn).ppt(25頁珍藏版)》請在裝配圖網(wǎng)上搜索。
1、基于軟總線技術的多數(shù)據(jù)庫融合應用研究與實現(xiàn),報告人:靳輝 導師: 金志剛 2004年4月,一、數(shù)據(jù)庫融合需求,企業(yè)的決策依據(jù)來自于對企業(yè)內(nèi)外部各種數(shù)據(jù)多方位、多層次分析,而異構數(shù)據(jù)是不能很好地集成的。異構數(shù)據(jù)有幾種情況,一是企業(yè)中的數(shù)據(jù)存放在不同類型的數(shù)據(jù)庫中,有小型的數(shù)據(jù)庫,也有一些大型的數(shù)據(jù)庫系統(tǒng);另一種是有業(yè)務往來的企業(yè)之間有可能有一部分數(shù)據(jù)需要共享,這些數(shù)據(jù)的類型、格式等也可能不盡相同。異構數(shù)據(jù)的一個典型的例子是Web數(shù)據(jù)資源的利用。,如何解決數(shù)據(jù)異構問題,合理、充分利用各種可能的數(shù)據(jù)源,是當前的一個研究熱點。 合理利用軟總線及軟插件技術可以有效的解決這一問題。,二、軟件復用技術,
2、何為軟件復用? 所謂軟件復用是指利用現(xiàn)有的軟件成分(資源)來構造新的軟件系統(tǒng)。該軟件成分可能是已有的軟件,也可能是專門開發(fā)設計的可復用軟件構件。復用成分是軟件復用技術的核心,復用過程的直觀描述如圖1所示。,系統(tǒng)分析軟件結構,軟件分析模塊分解刻畫,程序設計/編碼(部分),,新增成分,原有成分,復用成分庫,圖1 軟件復用過程,目標系統(tǒng),功能模塊,可用部件,,,,,,,,軟件復用類型 軟件復用技術一般可分為組裝技術和生成技術兩類。組裝技術即對已有軟件構件不作修改或少作修改,直接將其插裝在一起,從而構造出新的目標系統(tǒng);生成技術有程序生成器完成對軟件結構模式的復用,生成器到處模式相當于種子,從中
3、可生長出新的專用構件。如V c++ 的Wizard。,軟插件與軟總線,軟插件(S-IC)模型 軟插件技術從本質(zhì)上來講是一種軟件集成技術。據(jù)統(tǒng)計,生成一個新的軟件系統(tǒng),80%85%的工作量耗費在重復編寫已有的軟件單元上。因此人們感到必須尋找一種新的集成機制,將以成熟的軟件單元制成一個相對獨立的實體,使之不加改動或少作改動就應用于新的軟件系統(tǒng)中,從而提高軟件生產(chǎn)效率。軟插件應運而生。,按照軟插件理論,軟插件是一種具有一組外接插頭----功能描述和外接消息以及相應的說明信息的軟件單元實體。(假設構造一個系統(tǒng)所需要的軟插件都已存在,那么構造者只需要對整個系統(tǒng)的構造策略和原則進行精心的描述和制定,將
4、所需要的軟插件按哲這些原則、策略組織起來,便可以推出一個新的軟件系統(tǒng),從而大大提高軟件生產(chǎn)效率。),軟插件應具有的特征 模塊性好,獨立性強;(一個軟插件應是一個可以獨立存在的實體,它應當不受或少受外界影響,以便能較為自由的為不同的軟件系統(tǒng)所用) 可靠性好; 連接簡單; 封裝功能; 內(nèi)部功能的高效實現(xiàn); 清晰簡明的說明。,軟總線模型,軟總線模型出現(xiàn)于軟插件概念之后,其解決軟插件間的交互問題,以支持軟件工廠總裝期間和運行階段的高級通信,并解決系統(tǒng)內(nèi)各軟插件的互操作問題。圖2給出了軟總線概念模型。,用戶界面插件,用戶界面插件,適配器,適配器,適配器,適配器,,數(shù)據(jù)構件,數(shù)據(jù)構件,軟 總 線,功能服務
5、插件,功能服務插件,用戶界面插件,適配器,適配器,控制服務插件,圖2 軟總線概念模型,,,,,,,,,,,,,分布環(huán)境中軟插件和軟總線應用,作為開放系統(tǒng)的主要特征,互操作一直是計算機界關注的焦點。隨著分布式系統(tǒng)的日漸流行,大量的異構網(wǎng)絡及各個廠商推出的軟、硬件產(chǎn)品,造成分布式系統(tǒng)的各個層次都存在互操作問題。如果將軟總線與操作系統(tǒng)、網(wǎng)絡通信機制結合起來,就能夠比較好地解決分布系統(tǒng)的互操作問題。圖3給出了將軟總線模型應用于分布系統(tǒng)的體系模型。,VB/PB.. 應用程序,數(shù)據(jù)庫 應用程序,WWW瀏覽器,應用程序插件,OCX/OLE,APIs,HTTP/HTML,適配器,軟 總 線,Win
6、dows9X/NT,UNIX,Windows/UNIX,操作系統(tǒng),TCP/IP,UDP/IP,網(wǎng)絡通信協(xié)議,,圖3 分布環(huán)境中的軟總線體系模型,,,,,,,,,,,,,,,,,,,網(wǎng)絡,封裝的軟插件可位于不同的系統(tǒng)平臺,他們通過各自的適配器向軟總線發(fā)出請求,軟總線對其進行解釋并確定接受方的位置。向網(wǎng)絡層發(fā)送消息,完成通信并實現(xiàn)互操作。程序員只需設計不同的適配器,就能最大限度使用已有的軟件,實現(xiàn)系統(tǒng)集成。,三、基于XML的軟總線,XML----Web的又一場革命 自Web產(chǎn)生以來,HTML一直作為網(wǎng)頁的描述語言,盡管隨著新版本的出現(xiàn),HTML的功能越來越完善,但還是有它的不足之處。,HTML
7、的不足,靜態(tài)標識語言,標簽預定義,難以擴展; 同時描述網(wǎng)頁內(nèi)容與顯示信息,給Web信息搜索帶來不便。 與HTML不同,XML是一種基于SGML的元語言,它允許在它之上定義更復雜的語言。,XML的優(yōu)點,可擴展性 由于XML只定義了語法,用戶可以根據(jù)自己的需求定制自己的XML語言,甚至可以針對領域定義領域的規(guī)范。 與平臺無關 只描述內(nèi)容,不包括數(shù)據(jù)的顯示信息,只要與相應的擴展樣式表結合就可以被識別、顯示。 與數(shù)據(jù)庫接口 “XML是數(shù)據(jù)庫的文檔化,同時也是文檔的數(shù)據(jù)庫化”。XML已成為Web資源與數(shù)據(jù)庫集成的重要技術。,基于XML軟總線的數(shù)據(jù)融合模型,基于XML的軟總線,,,,,SQL Se
8、rver,Sybase,Oracle,Web,,,,,,圖4 基于XML軟總線的數(shù)據(jù)融合模型,用戶界面插件,用戶界面插件,適配器,適配器,,,,,圖5 基于XML的軟總線結構,,基于XML 的軟總線,,,,,SQL Server,Sybase,Oracle,Web,,,,,,數(shù)據(jù)獲取,,格式轉(zhuǎn)換,接口,通過使用軟總線,實現(xiàn)了對異構數(shù)據(jù)源的集成及轉(zhuǎn)換,最終通過XML格式與用戶進行交互,所以既解決了多數(shù)據(jù)庫的融合問題,同時解決了終端用戶的系統(tǒng)的異構問題。,四、基于CORBA(軟總線)的分布式工作流模型,,工作流控 制數(shù)據(jù)庫,,總工作流管理系統(tǒng) (運行與企業(yè)總工 作流服務器),,總公司 數(shù)據(jù)庫,,工
9、作流 數(shù)據(jù),,分布工 作流系 統(tǒng)1,,分布工 作流系 統(tǒng)2,,,分布工 作流系 統(tǒng)n,,工作流 數(shù)據(jù),,應用 數(shù)據(jù),,應用 數(shù)據(jù),,應用系統(tǒng) (CORBA) 封裝的對象 或組件,,應用系統(tǒng) (CORBA) 封裝的對象 或組件,,用戶1,,用戶n,,,,,,,,,,,,,,,,,,,,圖6 基于CORBA的分布式工作流模型,為什么分層次? 各協(xié)作企業(yè)/部門都應該有自己的工作流管理系統(tǒng)和相應的數(shù)據(jù)庫,因為: 1.各協(xié)作企業(yè)/部門是相對獨立的尸體,平時都有自己的經(jīng)營與管理流程。如果采用集中模式,用單一工作流與單一數(shù)據(jù)庫服務器管理所有企業(yè)的過程,整合起來十分困難,不太現(xiàn)實;大量的數(shù)據(jù)存取也會對服務器
10、能力與帶寬提出很高的要求,導致效率低下。 2.各協(xié)作企業(yè)/部門所承擔的任務一般也有一定的獨立性??梢岳斫?,每個寫作任務都可劃分為幾個,相對獨立的模塊,協(xié)作成員各負責一塊是合理的。由于模塊的相對獨立性,各企業(yè)/部門在大多數(shù)情況下可以獨立運行其流程,是在本地數(shù)據(jù)庫上存取數(shù)據(jù)。這樣效率較高。 對于跨地區(qū)協(xié)作的企業(yè)聯(lián)盟,需要通過Internet相互連接,在Internet上訪問工作流及其應用系統(tǒng),可以瀏覽器Web或Java等圖形界面作為客戶端,通過CORBA中間層查找相應工作流,工作流調(diào)用所需對象,取得服務,也就是基于CORBA阮總線的3層體系。,,,,,HTML及Forms,Java,C++等 圖
11、形界面,Internet及 TCP/IP,,,,圖7 通過CORBA訪問工作流與應用,客戶層,中間層,資源層,,,對象 服務器,,Web 服務器,,CORBA ORB,,,CORBA IIOP,HTTP,基于Web的用戶界面,,應 用 服 務 層,文檔 管理 服務,郵件 管理 服務,共享 白板 服務,圖像 瀏覽 服務,,,工 作 流 運 行 環(huán) 境,XML_WPDL,工作流執(zhí)行,管理與監(jiān)控工具,數(shù)據(jù)訪問層,,數(shù) 據(jù) 存 儲,,過程定義數(shù)據(jù),,工作流數(shù)據(jù),,用戶數(shù)據(jù),圖8 工作流管理系統(tǒng)結構,,,,,,,,,,,,考慮到系統(tǒng)的通用性,客戶端最好使用瀏覽器,由瀏覽器向Web服務器發(fā)送請求,Web服務器接受請求后,其Java Servlets即與ORB聯(lián)系,由ORB通知相應工作流系統(tǒng)調(diào)用所需的CORBA對象,取得服務,然后從原路返回結果。 分布數(shù)據(jù)庫之間的數(shù)據(jù)通過XML文件進行交換。XML可使用與各種操作系統(tǒng),并得到各大數(shù)據(jù)庫廠商的支持,即使不同平臺的數(shù)據(jù)庫,也可通過XML文件交互數(shù)據(jù)。,進度安排,了解工作流管理系統(tǒng)技術現(xiàn)狀(2004.34) 熟悉Java CORBA及XML(2004. 5) 系統(tǒng)分析、模塊分解(2004.67) 程序設計(2004. 89) 程序組裝調(diào)試、修改(2004.10) 論文撰寫(2004.11),