摘要:通過(guò)對(duì)虛擬天文臺(tái)中科學(xué)課題的需求分析,提出一種基于數(shù)據(jù)網(wǎng)格針對(duì)天文應(yīng)用的問(wèn)題求解環(huán)境的框架;以“2MASS巡天星表搜尋OB星協(xié)候選體研究銀河系的旋臂結(jié)構(gòu)”科學(xué)課題為例,在科學(xué)數(shù)據(jù)網(wǎng)格上設(shè)計(jì)和實(shí)現(xiàn)了面向天文應(yīng)用的問(wèn)題求解環(huán)境,并對(duì)實(shí)現(xiàn)中的關(guān)鍵技術(shù)進(jìn)行研究#65377;
關(guān)鍵詞:問(wèn)題求解環(huán)境;數(shù)據(jù)網(wǎng)格;工作流
中圖分類(lèi)號(hào):TP393文獻(xiàn)標(biāo)志碼:A
文章編號(hào):1001-3695(2007)04-0242-04
在過(guò)去十多年中,隨著天文探測(cè)器制造技術(shù)的高速發(fā)展,數(shù)據(jù)收集能力也遵循著類(lèi)似摩爾定律而增長(zhǎng),天文學(xué)開(kāi)始進(jìn)入一個(gè)信息富庶的時(shí)代#65377;天文數(shù)據(jù)具有海量#65380;開(kāi)放#65380;高復(fù)雜性#65380;多波段高相關(guān)性#65380;較好歸檔等特點(diǎn),決定天文學(xué)是數(shù)據(jù)網(wǎng)格完美的測(cè)試平臺(tái),同時(shí)網(wǎng)格技術(shù)為大規(guī)模天文應(yīng)用的實(shí)現(xiàn)提供了關(guān)鍵的技術(shù)支撐平臺(tái),使得天文研究和網(wǎng)格技術(shù)[1] 互相結(jié)合,誕生了虛擬天文臺(tái)[2]#65377;
科學(xué)數(shù)據(jù)網(wǎng)格是以中國(guó)科學(xué)院“十五”信息化建設(shè)重大項(xiàng)目“科學(xué)數(shù)據(jù)庫(kù)及其應(yīng)用系統(tǒng)[3]”為背景而建設(shè)的一個(gè)數(shù)據(jù)網(wǎng)格;同時(shí),科學(xué)數(shù)據(jù)網(wǎng)格項(xiàng)目得到國(guó)家“863”計(jì)劃的支持,是“十五”“863”重大專(zhuān)項(xiàng)“高性能計(jì)算機(jī)及其核心軟件”中的一個(gè)應(yīng)用網(wǎng)格#65377;在科學(xué)數(shù)據(jù)網(wǎng)格的建設(shè)中,中國(guó)科學(xué)院計(jì)算機(jī)網(wǎng)絡(luò)信息中心與中國(guó)科學(xué)院國(guó)家天文臺(tái)合作,開(kāi)發(fā)虛擬天文臺(tái)作為科學(xué)數(shù)據(jù)網(wǎng)格的示范應(yīng)用系統(tǒng)#65377;虛擬天文臺(tái)中開(kāi)展許多試驗(yàn)和應(yīng)用,如圖1所示,需要?jiǎng)?chuàng)建一個(gè)協(xié)同的環(huán)境來(lái)反復(fù)實(shí)現(xiàn)復(fù)雜問(wèn)題求解處理#65377;在這個(gè)環(huán)境中,天文工作者依照事先擬訂好的試驗(yàn)步驟,協(xié)同#65380;反復(fù)多次使用大量的分布#65380;異構(gòu)數(shù)據(jù)檢索#65380;數(shù)據(jù)計(jì)算#65380;可視化#65380;數(shù)據(jù)挖掘等資源,甚至可接受本地開(kāi)發(fā)的程序,組合成有效的處理,進(jìn)而開(kāi)展天文研究工作#65377;2MASS巡天星表搜尋OB星協(xié)候選體研究銀河系的旋臂結(jié)構(gòu)(簡(jiǎn)稱(chēng)2MASSOB天文課題)是研究銀河系整體的結(jié)構(gòu)特征,旋臂的形成機(jī)制#65380;銀河系的演化等問(wèn)題的一個(gè)重要項(xiàng)目#65377;本文通過(guò)對(duì)天文課題的需求分析,提出一種基于數(shù)據(jù)網(wǎng)格針對(duì)天文應(yīng)用的問(wèn)題求解環(huán)境的框架#65377;
1相關(guān)工作
1.1傳統(tǒng)的天文研究計(jì)算環(huán)境
傳統(tǒng)的天文研究多是在分散的#65380;孤立的計(jì)算環(huán)境中進(jìn)行的,往往是個(gè)人或者小團(tuán)體針對(duì)特定的天文課題自編程序?qū)崿F(xiàn)#65377;例如天文課題運(yùn)用神經(jīng)網(wǎng)絡(luò)算法研究星系形態(tài)[4],還有通過(guò)查詢(xún)2MASS數(shù)據(jù)庫(kù)研究恒星形成[5]#65377;在這種計(jì)算環(huán)境下,數(shù)據(jù)格式不統(tǒng)一#65380;程序和接口不規(guī)范#65380;開(kāi)發(fā)效率低#65380;數(shù)據(jù)和過(guò)程可共享性低,很難被其他人再利用#65377;
1.2虛擬天文臺(tái)現(xiàn)狀
1999年各國(guó)天文學(xué)界紛紛提出了自己的虛擬天文臺(tái)計(jì)劃,開(kāi)始天文學(xué)領(lǐng)域的全球協(xié)作#65377;2002年6月,國(guó)際虛擬天文臺(tái)聯(lián)盟(IVOA)成立;2002年10月,中國(guó)虛擬天文臺(tái)成為國(guó)際虛擬天文臺(tái)聯(lián)盟成員#65377;為了逐步實(shí)現(xiàn)不同組織之間的互操作,國(guó)際虛擬天文臺(tái)(IVO)目前就許多問(wèn)題在國(guó)際范圍內(nèi)達(dá)成一致,如制定數(shù)據(jù)和接口的統(tǒng)一標(biāo)準(zhǔn),協(xié)調(diào)天文的軟件包#65380;源代碼庫(kù)#65380;開(kāi)發(fā)工具等#65377;除此之外,結(jié)合Grid/Web技術(shù),以服務(wù)的形式封裝分布的異構(gòu)的數(shù)據(jù)資源,進(jìn)一步加強(qiáng)共享和協(xié)作#65377;
然而,在目前虛擬天文臺(tái)的應(yīng)用項(xiàng)目中多是采用定制任務(wù)引擎的方法完成服務(wù)的組合#65377;這種固定的序列組合方式有兩個(gè)缺點(diǎn):①易重構(gòu)性不好#65377;當(dāng)科學(xué)工作者需要對(duì)應(yīng)用的步驟進(jìn)行調(diào)整和改動(dòng)時(shí),必然也將對(duì)這個(gè)定制的任務(wù)引擎進(jìn)行代碼級(jí)的改動(dòng)#65377;②用戶(hù)界面不友好#65377;通過(guò)命令和程序控制后臺(tái)的任務(wù)提交和執(zhí)行;不支持可視化;在設(shè)計(jì)和部署天文試驗(yàn)上給不熟悉命令和程序的天文科學(xué)工作者帶來(lái)極大的不便#65377;
1.3Web Service工作流
工作流有數(shù)十年的歷史,1993年工作流管理聯(lián)盟的成立標(biāo)志著工作流技術(shù)開(kāi)始進(jìn)入相對(duì)成熟的階段#65377;工作流是一類(lèi)能夠完全或者部分自動(dòng)執(zhí)行的業(yè)務(wù)過(guò)程,根據(jù)一系列的過(guò)程規(guī)則,文檔#65380;信息或數(shù)據(jù)在不同的執(zhí)行者之間傳遞和執(zhí)行#65377;傳統(tǒng)工作流的主要應(yīng)用集中在管理和生產(chǎn)過(guò)程的自動(dòng)化,特別是在企業(yè)和大組織內(nèi)部#65377;1995年后,企業(yè)應(yīng)用集成成為工作流的一個(gè)新的應(yīng)用領(lǐng)域,Web技術(shù)因其開(kāi)放#65380;跨平臺(tái)的特性使基于Web的工作管理系統(tǒng)已經(jīng)成為一種必然的發(fā)展趨勢(shì)#65377;
具有代表性的Web Services工作流描述語(yǔ)言有WSFL和業(yè)務(wù)流程建模語(yǔ)言BPML#65377;WSFL(Web Services Flow Language)由IBM提出,符合Web Services層次模型,基于XML描述WS交互的一種網(wǎng)絡(luò)服務(wù)工作流描述語(yǔ)言#65377;WSFL使用一種流模型(Flow Models)和總體模型(Global Models)來(lái)描述網(wǎng)絡(luò)服務(wù)的組成#65377;流模型說(shuō)明了如何使用服務(wù)所提供的功能來(lái)描述商業(yè)交易流程;總體模型則詳細(xì)說(shuō)明所有交易伙伴的交易情形,即服務(wù)如何與其他服務(wù)交互#65377;流模型定義了一系列活動(dòng)表現(xiàn)復(fù)合網(wǎng)絡(luò)服務(wù)的運(yùn)作,并確定活動(dòng)執(zhí)行的順序#65377;它分別使用controlLink和dataLink定義各種活動(dòng)之間的控制和數(shù)據(jù)流#65377;
業(yè)務(wù)流程建模語(yǔ)言(Business Process Management Language,BPML)是一種基于XML為業(yè)務(wù)流程建模的元語(yǔ)言#65377;BPML為協(xié)同事務(wù)性業(yè)務(wù)流程提供了一個(gè)虛擬執(zhí)行模型,它基于一個(gè)叫做事務(wù)有限狀態(tài)機(jī)的概念#65377;
因此,Web Services工作流是實(shí)現(xiàn)協(xié)同工作環(huán)境的一個(gè)良好方法,它能方便地與原有的應(yīng)用#65380;信息集成#65377;然而它是基于Web Services層次模型,適應(yīng)商業(yè)流程,開(kāi)銷(xiāo)往往比較大,而且不是免費(fèi)的,不太滿足科學(xué)研究的需求#65377;
2設(shè)計(jì)與實(shí)現(xiàn)
2.1天文課題的需求
2MASSOB課題是由中國(guó)國(guó)家天文臺(tái)提出的重要天文應(yīng)用#65377;其基本思想是利用已觀測(cè)到的OB星在2MASS天文數(shù)據(jù)庫(kù)中查找OB星的光譜范圍,再將屬于這個(gè)有效光譜范圍的銀河系天體可視化,通過(guò)相應(yīng)的數(shù)據(jù)挖掘,幫助研究銀河系的旋臂結(jié)構(gòu)[6]#65377;
由此得出天文研究的迫切需要:①提供分布#65380;異構(gòu)數(shù)據(jù)資源的統(tǒng)一訪問(wèn)和集成#65377;因?yàn)樵紨?shù)據(jù)信息一般都分布在不同的地理位置,數(shù)據(jù)的存儲(chǔ)格式及存儲(chǔ)管理系統(tǒng)各不相同#65377;②易用#65380;可視化的問(wèn)題求解環(huán)境,幫助科學(xué)家快速構(gòu)造和修改試驗(yàn)流程#65377;在這個(gè)平臺(tái)上定義通用的過(guò)程模型,支持用戶(hù)在圖形編輯環(huán)境下從庫(kù)中選擇各種有效的組件構(gòu)造具體科學(xué)問(wèn)題的求解模型,并自動(dòng)收集執(zhí)行的元數(shù)據(jù)#65377;
2.2問(wèn)題求解環(huán)境層次模型
通過(guò)對(duì)天文課題的需求分析,設(shè)計(jì)出在科學(xué)數(shù)據(jù)網(wǎng)格環(huán)境下面向天文應(yīng)用的問(wèn)題求解環(huán)境,以改善傳統(tǒng)的天文研究環(huán)境,并借鑒Web Services工作流的優(yōu)勢(shì),豐富以服務(wù)為中心的網(wǎng)格體系結(jié)構(gòu)#65377;
問(wèn)題求解環(huán)境本質(zhì)上是透明#65380;可擴(kuò)展#65380;易重構(gòu)的網(wǎng)格環(huán)境#65377;圖2所示的四層模型描述了在問(wèn)題求解環(huán)境中不同抽象級(jí)別上資源和它們之間的互操作#65377;
(1)應(yīng)用表示層
應(yīng)用表示層面向最終用戶(hù),提供友好的#65380;可視化的界面,便于快速構(gòu)造#65380;修改和管理科學(xué)問(wèn)題求解的流程#65377;它從面向問(wèn)題的層面上展現(xiàn)工作流,隱藏服務(wù)間交互的復(fù)雜細(xì)節(jié)#65377;輸入起始試驗(yàn)數(shù)據(jù)后,用戶(hù)只用對(duì)邏輯服務(wù)產(chǎn)生或者接收的數(shù)據(jù)進(jìn)行適當(dāng)連接就能完成工作流中服務(wù)的組合,而不必關(guān)心服務(wù)的實(shí)現(xiàn),也不用了解面向服務(wù)的體系結(jié)構(gòu)(ServiceOriented Architecture)的概念和技術(shù)細(xì)節(jié)#65377;
(2)工作流執(zhí)行層
工作流執(zhí)行層擴(kuò)展和檢查上層中由用戶(hù)設(shè)定的組合邏輯,完成工作流程執(zhí)行細(xì)節(jié)#65377;網(wǎng)格工作流描述語(yǔ)言記錄應(yīng)用表示層中用戶(hù)在可視化界面提出的請(qǐng)求,并轉(zhuǎn)換成包含控制流和數(shù)據(jù)信息的一組過(guò)程規(guī)則;進(jìn)而工作流引擎把各種互相作用的網(wǎng)格服務(wù)或者本地的開(kāi)發(fā)應(yīng)用(如圖2中的“Math Computing”),按照規(guī)則有機(jī)地結(jié)合在一起,其間的文檔#65380;信息或數(shù)據(jù)在不同的網(wǎng)格服務(wù)之間傳遞和執(zhí)行#65377;該層主要完成語(yǔ)義的實(shí)現(xiàn),并不關(guān)心具體服務(wù)的執(zhí)行#65380;維護(hù)#65377;
(3)基于OGSA或WSRF的網(wǎng)格中間件層
網(wǎng)格中間件層封裝數(shù)據(jù)資源和數(shù)學(xué)運(yùn)算為網(wǎng)格服務(wù)(如圖2中的網(wǎng)格資源A#65380;B#65380;C#65380;D#65380;E),以資源的形式和統(tǒng)一的接口提供給上層用戶(hù)#65377;它由Globus Toolkit實(shí)現(xiàn),Globus在網(wǎng)格計(jì)算邏輯結(jié)構(gòu)中的組成部分包括網(wǎng)格安全基礎(chǔ)設(shè)施#65380;Globus資源分配管理GRAM#65380;元計(jì)算目錄服務(wù)#65380;GridFTP服務(wù)等#65377;
(4)數(shù)據(jù)資源層
數(shù)據(jù)資源層包含是位于網(wǎng)絡(luò)中分布的#65380;自治的#65380;異構(gòu)的數(shù)據(jù)資源,如2MassOB試驗(yàn)需要訪問(wèn)的“J/AJ/117/354”數(shù)據(jù)表#65380;Hipparcos和2MASS數(shù)據(jù)庫(kù)#65377;
2.3網(wǎng)格數(shù)據(jù)服務(wù)
2MASSOB課題需要訪問(wèn)的天文數(shù)據(jù)庫(kù)有Hipparcos和2MASS,如表1所示#65377;網(wǎng)格數(shù)據(jù)服務(wù)以可控的方式將這些物理數(shù)據(jù)資源暴露于網(wǎng)格環(huán)境中,通過(guò)公共通用的接口支持對(duì)異構(gòu)物理數(shù)據(jù)資源的統(tǒng)一訪問(wèn);提供基本服務(wù)支持構(gòu)建高層數(shù)據(jù)集成服務(wù),如分布查詢(xún)處理和數(shù)據(jù)聯(lián)盟服務(wù)#65377;
數(shù)據(jù)服務(wù)的實(shí)現(xiàn)使得數(shù)據(jù)資源的提供者能夠按照標(biāo)準(zhǔn)的方式加工#65380;處理和提供數(shù)據(jù),數(shù)據(jù)資源的使用者可以通過(guò)統(tǒng)一的方式高效#65380;便捷地訪問(wèn)到不同來(lái)源的各種數(shù)據(jù)#65377;與此同時(shí),天文分析#65380;處理#65380;可視化工具,如2MASSOB科學(xué)課題中的分析處理:坐標(biāo)變換(從銀經(jīng)銀緯到空間XYZ坐標(biāo))#65380;空間裁減#65380;坐標(biāo)統(tǒng)計(jì)等,也以網(wǎng)格服務(wù)的方式集成到科學(xué)數(shù)據(jù)網(wǎng)格天文的問(wèn)題求解環(huán)境中,構(gòu)成開(kāi)展協(xié)同研究和試驗(yàn)的重要基礎(chǔ)#65377;
2.4Scufl網(wǎng)格工作流描述語(yǔ)言
網(wǎng)格工作流是按照預(yù)先的定義將網(wǎng)格服務(wù)組合起來(lái)完成一個(gè)特定的任務(wù)的操作流,它是開(kāi)展新形式下的科學(xué)研究活動(dòng)最有力的協(xié)作工具#65377;問(wèn)題求解環(huán)境中,網(wǎng)格工作流描述語(yǔ)言每次會(huì)記錄科學(xué)工作者高層建模的結(jié)果,也就是以服務(wù)形式封裝的天文數(shù)據(jù)和應(yīng)用工具的組合方式#65377;網(wǎng)格工作流描述語(yǔ)言需要支持網(wǎng)格服務(wù)的添加和拆卸,一旦科學(xué)工作者對(duì)試驗(yàn)方案進(jìn)行改造或者某些步驟需要調(diào)整,都能快速重構(gòu)#65377;
Scufl(Simple conceptual unified flow language)是高抽象級(jí)別的基于XML的數(shù)據(jù)流描述語(yǔ)言,定義了不同服務(wù)間數(shù)據(jù)交互的流程[7]#65377;Scufl中主要有五種實(shí)體:
(1)輸入(A set of inputs)
(2)輸出(A set of outputs)
(3)過(guò)程(A set of processors)
每個(gè)過(guò)程代表一個(gè)邏輯服務(wù),是工作流中的一個(gè)原子步驟#65377;從用戶(hù)的角度看,一個(gè)過(guò)程完成的行為就是接收輸入數(shù)據(jù),經(jīng)過(guò)內(nèi)部處理后產(chǎn)生數(shù)據(jù)到輸出端#65377;
(4)數(shù)據(jù)連接(A set of data links)
它連接數(shù)據(jù)源到數(shù)據(jù)目的地#65377;數(shù)據(jù)源可以是輸入數(shù)據(jù)或者是一個(gè)過(guò)程的輸出端;數(shù)據(jù)目的地可以是輸出數(shù)據(jù)或者一個(gè)過(guò)程的輸入端#65377;
(5)協(xié)同約束(A set of coordination constraints)
協(xié)同約束提供給數(shù)據(jù)流程一定的依賴(lài)規(guī)則,而不需要數(shù)據(jù)連接(Data Links)的參與#65377;例如在圖3中,過(guò)程addTerm和過(guò)程getDot之間#65380;過(guò)程getDot和過(guò)程destroySession之間有兩個(gè)協(xié)同約束(帶圓點(diǎn)的灰線表示),使得過(guò)程addTerm完全結(jié)束后,過(guò)程getDot才會(huì)開(kāi)始處理數(shù)據(jù),依此類(lèi)推#65377;
Scufl吸取了WSFL的優(yōu)點(diǎn),提供了更簡(jiǎn)化#65380;抽象級(jí)別更高的描述,滿足天文工作者期望的抽象表達(dá),重點(diǎn)針對(duì)數(shù)據(jù)流,適合天文應(yīng)用的語(yǔ)義#65377;
2.5實(shí)例實(shí)現(xiàn)
以2MASSOB天文課題為例,說(shuō)明此問(wèn)題求解環(huán)境中科學(xué)工作者如何按照事先擬訂好的試驗(yàn)步驟,協(xié)同#65380;反復(fù)使用大量的分布#65380;異構(gòu)數(shù)據(jù)#65380;計(jì)算等資源,組合成有效的處理,進(jìn)而開(kāi)展天文研究工作#65377;
圖4是2MASSOB課題的試驗(yàn)步驟#65377;天文工作者依照此步驟,在可視化的界面通過(guò)拖#65380;拽的方式選擇并組合相關(guān)天文服務(wù)#65377;他們像在一個(gè)虛擬的實(shí)驗(yàn)室開(kāi)展試驗(yàn),不必關(guān)心數(shù)據(jù)和工具的物理分布和網(wǎng)格結(jié)構(gòu),就像本機(jī)上使用所有可用的數(shù)據(jù)和應(yīng)用工具一樣#65377;表2描述了服務(wù)的信息;圖5是自動(dòng)生成Scufl描述的數(shù)據(jù)連接#65377;
3結(jié)束語(yǔ)
本文分析了傳統(tǒng)天文研究計(jì)算環(huán)境和當(dāng)前應(yīng)用項(xiàng)目中定制任務(wù)引擎的方法的劣勢(shì),借鑒和發(fā)展Web Services工作流的優(yōu)勢(shì),通過(guò)對(duì)天文課題的需求分析提出了一種基于數(shù)據(jù)網(wǎng)格面
向天文應(yīng)用的問(wèn)題求解環(huán)境的框架#65377;在這個(gè)框架中,分布#65380;異構(gòu)的相關(guān)天文數(shù)據(jù)和分析工具能被發(fā)現(xiàn)#65380;定位和在工作流中集成給對(duì)網(wǎng)格一無(wú)所知的用戶(hù),以完成復(fù)雜的科學(xué)分析和試驗(yàn)#65377;
以2MASSOB天文課題為例,在科學(xué)數(shù)據(jù)網(wǎng)格上設(shè)計(jì)實(shí)現(xiàn)面向天文應(yīng)用的問(wèn)題求解環(huán)境,用可視化流程建模方法開(kāi)展面向天文的科學(xué)活動(dòng),用網(wǎng)格工作流平臺(tái)解決服務(wù)組合問(wèn)題,并研究數(shù)據(jù)的統(tǒng)一訪問(wèn)和網(wǎng)格工作流描述語(yǔ)言等關(guān)鍵技術(shù)#65377;結(jié)果表明在這種環(huán)境開(kāi)展工作,改善了傳統(tǒng)計(jì)算環(huán)境協(xié)作能力低的狀況,將科研活動(dòng)的要素連接起來(lái),可有效降低從事科研工作的門(mén)檻,減少科研的開(kāi)發(fā)周期,使得科技工作者能夠更容易地將自己的創(chuàng)新思想付諸實(shí)現(xiàn)#65377;
本文中所涉及到的圖表、注解、公式等內(nèi)容請(qǐng)以PDF格式閱讀原文。