• <tr id="yyy80"></tr>
  • <sup id="yyy80"></sup>
  • <tfoot id="yyy80"><noscript id="yyy80"></noscript></tfoot>
  • 99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

    一種空間數(shù)據(jù)分布式處理方法

    2013-12-06 08:46:40陳曉斌
    測(cè)繪工程 2013年1期
    關(guān)鍵詞:空間數(shù)據(jù)數(shù)據(jù)處理客戶端

    陳曉斌,葛 文,李 歆,黃 維

    (1.信息工程大學(xué) 測(cè)繪學(xué)院,河南 鄭州 450052;2.78155部隊(duì),四川 成都 610036)

    資源共享和協(xié)同工作是網(wǎng)格技術(shù)的兩大特性。將網(wǎng)格技術(shù)應(yīng)用于地理信息領(lǐng)域,能夠解決地理空間信息的資源共享和協(xié)同工作問(wèn)題[1]。海量空間數(shù)據(jù)的快速處理,一直是地理信息領(lǐng)域研究的熱點(diǎn)問(wèn)題。OGSA-DAI是網(wǎng)格環(huán)境下進(jìn)行數(shù)據(jù)訪問(wèn)與集成的網(wǎng)格中間件技術(shù),提供了一套使用網(wǎng)格技術(shù)進(jìn)行分布式異構(gòu)數(shù)據(jù)訪問(wèn)與集成的方法。本文研究的目的就是基于OGSA-DAI的運(yùn)行機(jī)制,提供一種解決海量空間數(shù)據(jù)分布式處理的方法。

    1 OGSA-DAI網(wǎng)格中間件

    OGSA-DAI(Open Grid Services Architecture-Data Access and Integration)是一種有效的分布式數(shù)據(jù)訪問(wèn)與管理的解決方案,它是根據(jù)網(wǎng)格技術(shù)發(fā)展而來(lái),符合開放式網(wǎng)格服務(wù)框架標(biāo)準(zhǔn)OGSA的數(shù)據(jù)訪問(wèn)與集成中間件,能把各種分布式異構(gòu)的關(guān)系型數(shù)據(jù)庫(kù)、XML數(shù)據(jù)庫(kù)、文件系統(tǒng)數(shù)據(jù)呈現(xiàn)成網(wǎng)格服務(wù),為用戶提供統(tǒng)一的訪問(wèn)查詢接口[2]。

    OGSA-DAI的最新版本為OGSA-DAI 4.1,于2011-03-01發(fā)布[3],它的主要功能有:支持多種類型的數(shù)據(jù)資源;數(shù)據(jù)資源中的數(shù)據(jù)可查詢和更新;數(shù)據(jù)可以進(jìn)行轉(zhuǎn)換;提供符合WSRF的Web服務(wù);使用統(tǒng)一的格式訪問(wèn)OGSA-DAI服務(wù);強(qiáng)大的擴(kuò)展功能等。從圖1中可以看出OGSA-DAI的運(yùn)行機(jī)制是:將關(guān)系型數(shù)據(jù)庫(kù)、XML數(shù)據(jù)庫(kù)、文件系統(tǒng)數(shù)據(jù)封裝為數(shù)據(jù)資源(Data resources);由各種行為(Activity)對(duì)數(shù)據(jù)資源進(jìn)行操作,實(shí)現(xiàn)數(shù)據(jù)查詢、數(shù)據(jù)轉(zhuǎn)換、數(shù)據(jù)傳輸?shù)裙δ埽煌ㄟ^(guò)工作流引擎(Workflow engine)將多個(gè)行為組織起來(lái),實(shí)現(xiàn)一個(gè)完整的業(yè)務(wù)流程;由表達(dá)層(Presentation layers)提供用戶訪問(wèn)的接口,包括Web服務(wù)和Java API。

    圖1 OGSA-DAI的組件圖

    OGSA-DAI還提供了強(qiáng)大的擴(kuò)展機(jī)制,以滿足用戶特定的需求。OGSA-DAI的擴(kuò)展方式主要有以下幾個(gè)方面:編寫行為、編寫數(shù)據(jù)資源、擴(kuò)展表達(dá)層等。研究人員可依據(jù)OGSA-DAI的擴(kuò)展機(jī)制進(jìn)行二次開發(fā),以滿足自身的功能需求。

    2 OGSA-DAI的工作流

    2.1 工作流的組成

    OGSA-DAI的任務(wù)是由工作流完成的,工作流由多個(gè)行為組成。行為是OGSA-DAI中的基本工作模塊,是一些離散的程序包,實(shí)現(xiàn)具體的功能,如:數(shù)據(jù)查詢、數(shù)據(jù)轉(zhuǎn)換、數(shù)據(jù)傳輸?shù)?。工作流由客戶端?gòu)建,提交給服務(wù)器執(zhí)行,服務(wù)器執(zhí)行工作流并返回執(zhí)行狀態(tài)與結(jié)果。圖2是一個(gè)簡(jiǎn)單的工作流。

    圖2 簡(jiǎn)單的工作流

    從圖2中可以看出:OGSA-DAI工作流由一系列行為(Activity)組成;工作流中的行為是互相連接的,一個(gè)行為的結(jié)果輸出可以作為另一個(gè)行為的內(nèi)容輸入;數(shù)據(jù)流從一個(gè)行為流向另一個(gè)行為,這種流動(dòng)是單向的;不同行為輸入的數(shù)據(jù)與輸出的數(shù)據(jù)格式可能不盡相同,數(shù)據(jù)轉(zhuǎn)換行為可以將數(shù)據(jù)在這些格式間進(jìn)行轉(zhuǎn)換。

    2.2 工作流的運(yùn)行原理

    客戶端構(gòu)建好一個(gè)工作流,提交給服務(wù)器上的數(shù)據(jù)請(qǐng)求執(zhí)行服務(wù)DRES(data request execution service),DRES提供了對(duì)數(shù)據(jù)請(qǐng)求執(zhí)行資源DRER(data request execution resource)的訪問(wèn)。數(shù)據(jù)請(qǐng)求執(zhí)行資源DRER是OGSA-DAI的工作流執(zhí)行組件,它的主要功能是:解析工作流;組織工作流中指定的行為;為行為提供必要的資源;執(zhí)行工作流;創(chuàng)建一個(gè)請(qǐng)求狀態(tài)Request status;向客戶端返回請(qǐng)求狀態(tài)(通過(guò)數(shù)據(jù)請(qǐng)求執(zhí)行服務(wù)DRES)。

    DRER向客戶端返回的請(qǐng)求狀態(tài)Request status包含以下內(nèi)容:

    1)工作流中每一個(gè)行為的執(zhí)行情況,如行為是否順利執(zhí)行或是遇到錯(cuò)誤;

    2)整個(gè)工作流的執(zhí)行情況,如工作流是否執(zhí)行完成、是否遇到錯(cuò)誤、或者過(guò)早被客戶端終止;

    3)數(shù)據(jù),通過(guò)DeliverToRequestStatus行為能夠?qū)?shù)據(jù)添加到請(qǐng)求狀態(tài)中返回給客戶端。

    客戶端提交工作流可在2種執(zhí)行方式中選擇:

    1)同步執(zhí)行:只在工作流執(zhí)行完成后才向客戶端返回執(zhí)行狀態(tài);

    2)異步執(zhí)行:工作流一開始執(zhí)行就向客戶端返回執(zhí)行狀態(tài),通過(guò)執(zhí)行狀態(tài),客戶端可以監(jiān)控工作流的執(zhí)行過(guò)程。

    異步執(zhí)行讓客戶端能夠控制工作流的執(zhí)行,是比較常用的執(zhí)行方式。同步執(zhí)行適用于工作流比較簡(jiǎn)單、數(shù)據(jù)量較小、執(zhí)行時(shí)間很短的情況。工作流的執(zhí)行具有以下特點(diǎn):①工作流中所有行為的執(zhí)行是并行的;②數(shù)據(jù)流以流水線的方式通過(guò)行為;③不同的行為能夠同時(shí)操作數(shù)據(jù)流不同部分。

    OGSA-DAI工作流的這些特點(diǎn)使其能夠有效地處理海量的數(shù)據(jù)??臻g數(shù)據(jù)具有數(shù)據(jù)量大、結(jié)構(gòu)復(fù)雜、關(guān)系多樣化、空間性、多尺度與多態(tài)性等特性[4],因此,使用OGSA-DAI工作流的方式進(jìn)行空間數(shù)據(jù)的處理。

    2.3 數(shù)據(jù)的異步傳輸

    服務(wù)器執(zhí)行工作流,可以將處理后的數(shù)據(jù)寫入請(qǐng)求狀態(tài)Request status返回給客戶端。但是在很多情況下,我們并不希望服務(wù)器直接將數(shù)據(jù)傳給客戶端,而是存儲(chǔ)在其它地方,這時(shí)就需要用到數(shù)據(jù)的異步傳輸。使用DeliverToFTP行為可以將數(shù)據(jù)傳輸?shù)紽TP上以文件的形式存儲(chǔ),使用SQLUpdate行為可以將數(shù)據(jù)存儲(chǔ)在數(shù)據(jù)庫(kù)中,此外,OGSA-DAI還提供2種資源Data source和Data sink支持將數(shù)據(jù)暫時(shí)存儲(chǔ)在OGSA-DAI服務(wù)器上。

    Data source和Data sink都是符合WSRF規(guī)范的。Data source資源允許客戶端從OGSA-DAI服務(wù)器上“拉”(pull)數(shù)據(jù)。當(dāng)工作流執(zhí)行時(shí),可以通過(guò)WriteToDataSource行為將數(shù)據(jù)寫入Data source,之后客戶端可以通過(guò)Web服務(wù)從Data source中獲取數(shù)據(jù)。這種方式被稱之為數(shù)據(jù)傳輸?shù)摹袄保╬ull)方式。

    與Data source的“拉”(pull)方式相對(duì)應(yīng),Data sink資源允許客戶端向OGSA-DAI服務(wù)器上“推”(push)數(shù)據(jù)??蛻舳丝梢酝ㄟ^(guò)Web服務(wù)向Data sink中寫入數(shù)據(jù),之后在工作流中使用ReadFrom-DataSink從Data sink中獲取數(shù)據(jù)進(jìn)行處理。這種方式被稱之為數(shù)據(jù)傳輸?shù)摹巴啤保╬ush)方式。

    3 空間數(shù)據(jù)的分布式處理

    3.1 空間數(shù)據(jù)處理模式

    空間數(shù)據(jù)分布式處理的基本模式如圖3所示。一個(gè)客戶端向多個(gè)OGSA-DAI服務(wù)器提交工作流,OGSA-DAI服務(wù)器分別從數(shù)據(jù)服務(wù)器上獲取數(shù)據(jù)并進(jìn)行處理,最后將處理結(jié)果傳輸?shù)街付ㄎ恢谩<匆粋€(gè)作業(yè)人員可以操作多臺(tái)電腦進(jìn)行數(shù)據(jù)處理工作,極大地提高數(shù)據(jù)處理的效率。將需要處理的空間數(shù)據(jù)封裝為符合WSRF的數(shù)據(jù)資源,實(shí)現(xiàn)空間數(shù)據(jù)的共享;組織多臺(tái)計(jì)算機(jī)共同進(jìn)行數(shù)據(jù)處理工作,實(shí)現(xiàn)計(jì)算機(jī)協(xié)同工作。

    3.2 空間數(shù)據(jù)處理工作流的構(gòu)建

    要構(gòu)建空間數(shù)據(jù)工作流,需要通過(guò)OGSA-DAI的擴(kuò)展功能開發(fā)相應(yīng)的空間數(shù)據(jù)處理行為(Activity),實(shí)現(xiàn)數(shù)據(jù)格式轉(zhuǎn)換、坐標(biāo)變換等功能。OGSADAI的用戶手冊(cè)[3]中詳細(xì)介紹了如何開發(fā)OGSADAI的行為,國(guó)內(nèi)也有一些文獻(xiàn)對(duì)OGSA-DAI的擴(kuò)展技術(shù)進(jìn)行了研究[5-7]。

    開發(fā)人員可以使用OGSA-DAI提供的Java API構(gòu)建工作流,OGSA-DAI也支持通過(guò)XML文件構(gòu)建工作流。通過(guò)XML文件構(gòu)建工作流有許多優(yōu)勢(shì),如:比使用java API構(gòu)建工作流更快、更方便;能夠被java以外的其它編程語(yǔ)言使用。使用WorkflowVisualiserClient可以將構(gòu)建工作流的XML文件轉(zhuǎn)換為圖形描述語(yǔ)言DOT格式,然后在Graphviz中顯示。圖4是一個(gè)將文件數(shù)據(jù)錄入數(shù)據(jù)庫(kù)的工作流。

    圖4 數(shù)據(jù)入庫(kù)工作流

    該工作流中的ReadFromFile行為通過(guò)輸入的文件名從數(shù)據(jù)資源MyFileResource中讀取數(shù)據(jù),通過(guò)FileDataToEXP行為將數(shù)據(jù)轉(zhuǎn)換為SQL表達(dá)式傳遞給SQLUpdate行為,SQLUpdate行為將數(shù)據(jù)封裝為MyOracleResource的Oracle數(shù)據(jù)庫(kù)中,DeliverToRequestStatus將工作流的執(zhí)行情況寫入請(qǐng)求狀態(tài)Request status,完成數(shù)據(jù)入庫(kù)工作。我們將這個(gè)工作流提交給多臺(tái)服務(wù)器,就可以組織多臺(tái)服務(wù)器協(xié)同進(jìn)行工作,提高數(shù)據(jù)處理的效率。

    4 結(jié)束語(yǔ)

    使用OGSA-DAI的工作流處理空間數(shù)據(jù),這種方式有許多優(yōu)點(diǎn):

    1)減輕客戶端工作量及CPU和內(nèi)存需求;

    2)最小化客戶端與服務(wù)器的通信;

    3)工作流在服務(wù)器上處理數(shù)據(jù),減少數(shù)據(jù)在網(wǎng)絡(luò)中的傳輸,這是與BPEL、Taverna等基于Web服務(wù)的工作流引擎是不一樣的;

    4)工作流中的行為能夠并行地處理數(shù)據(jù)流的不同部分,減少服務(wù)器的內(nèi)存消耗和執(zhí)行時(shí)間。

    網(wǎng)格技術(shù)的應(yīng)用,為解決地理信息領(lǐng)域的相關(guān)問(wèn)題提供了新的思路。

    [1]王家耀,祝玉華,吳明光.論網(wǎng)格與網(wǎng)格地理信息系統(tǒng)[J].測(cè)繪科學(xué)技術(shù)學(xué)報(bào),2006,23(1):2-5.

    [2]鐘凱,熊偉,陳葷,等.基于OGSA-DAI擴(kuò)展的空間數(shù)據(jù)訪問(wèn)和集成[J].兵工自動(dòng)化,2010,29(3):47-50.

    [3]OGSA-DAI 4.1Documentation.http://www.ogsadai.org.uk/[EB/OL].2011.

    [4]譚念龍.空間數(shù)據(jù)存儲(chǔ)技術(shù)及其應(yīng)用[J].微電子學(xué)與計(jì)算機(jī),2001(1):15-18.

    [5]靳立瓊,殷兆麟,姜利群.一種新的網(wǎng)格數(shù)據(jù)服務(wù)的設(shè)計(jì)與開發(fā)[J].電腦知識(shí)與技術(shù),2009,5(9):2330-2331.

    [6]李獻(xiàn)禮.擴(kuò)展OGSA-DAI數(shù)據(jù)訪問(wèn)與集成框架的關(guān)鍵技術(shù)分析[J].重慶大學(xué)學(xué)報(bào),2008,31(9):1054-1058.

    [7]南凱,閻保平.擴(kuò)展OGSA-DAI的數(shù)據(jù)集成框架及原型[J].計(jì)算機(jī)工程,2007,33(10):55-57.

    猜你喜歡
    空間數(shù)據(jù)數(shù)據(jù)處理客戶端
    認(rèn)知診斷缺失數(shù)據(jù)處理方法的比較:零替換、多重插補(bǔ)與極大似然估計(jì)法*
    ILWT-EEMD數(shù)據(jù)處理的ELM滾動(dòng)軸承故障診斷
    縣級(jí)臺(tái)在突發(fā)事件報(bào)道中如何應(yīng)用手機(jī)客戶端
    孵化垂直頻道:新聞客戶端新策略
    基于Vanconnect的智能家居瘦客戶端的設(shè)計(jì)與實(shí)現(xiàn)
    元數(shù)據(jù)驅(qū)動(dòng)的多中心空間數(shù)據(jù)同步方法研究
    基于希爾伯特- 黃變換的去噪法在外測(cè)數(shù)據(jù)處理中的應(yīng)用
    基于文件系統(tǒng)的分布式海量空間數(shù)據(jù)高效存儲(chǔ)與組織研究
    基于POS AV610與PPP的車輛導(dǎo)航數(shù)據(jù)處理
    客戶端空間數(shù)據(jù)緩存策略
    全椒县| 依兰县| 乌审旗| 正镶白旗| 额敏县| 阿尔山市| 寻甸| 尤溪县| 绥芬河市| 汉寿县| 星子县| 高州市| 广汉市| 宝丰县| 旺苍县| 浙江省| 临武县| 南靖县| 增城市| 临夏县| 夹江县| 晴隆县| 工布江达县| 高清| 伊宁市| 英德市| 乐业县| 浦北县| 桃源县| 宝坻区| 湘西| 宣城市| 大厂| 廉江市| 礼泉县| 依兰县| 日喀则市| 龙岩市| 栖霞市| 襄樊市| 甘南县|