999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于網(wǎng)格的異構(gòu)數(shù)據(jù)源訪問體系研究

2007-12-31 00:00:00朱鴻宇韋海亮謝向輝李偉東陸林生
計算機應用研究 2007年10期

摘要:基于網(wǎng)格的異構(gòu)數(shù)據(jù)源訪問體系定義了一套通用的數(shù)據(jù)訪問接口,包括結(jié)構(gòu)化查詢操作和非結(jié)構(gòu)化查詢操作#65377;該體系采用基于網(wǎng)格基礎構(gòu)件的多層結(jié)構(gòu)設計,包括附加在各個數(shù)據(jù)源之上的訪問代理層和用于負責維護模板庫和邏輯映射表的仲裁機構(gòu),通過在訪問代理層實現(xiàn)與實際數(shù)據(jù)源相關的轉(zhuǎn)換操作來提供對通用數(shù)據(jù)訪問接口的支持#65377;該體系實現(xiàn)了真正意義上的語句透明,并在最大限度上提供了數(shù)據(jù)的自動集成#65377;

關鍵詞:

異構(gòu)數(shù)據(jù)源;仲裁機構(gòu);訪問代理

中圖分類號:TP393文獻標志碼:A

文章編號:1001-3695(2007)10-0065-03

0引言

數(shù)據(jù)網(wǎng)格的發(fā)展促進了許多應用的蓬勃發(fā)展,尤其是面向海量信息處理的大型應用,如生命科學以及地球科學等#65377;這些應用往往需要訪問各種大型且復雜的數(shù)據(jù)集合#65377;這些數(shù)據(jù)集合來自不同組織甚至不同國家,它們之間的聯(lián)系是松散而且不穩(wěn)定的#65377;與此同時,數(shù)據(jù)的組織方式也是多種多樣的,既有結(jié)構(gòu)化的信息資源,如符合關系模型的關系數(shù)據(jù)庫#65380;符合面向?qū)ο竽P偷膶ο髷?shù)據(jù)庫和符合概念模型的數(shù)據(jù)倉庫;也有半結(jié)構(gòu)化或非結(jié)構(gòu)化的信息資源,如各種格式的數(shù)據(jù)文檔(word#65380;PPT#65380;HTML和XML等)以及采用文件方式存儲的文本信息或二進制數(shù)據(jù)信息#65377;而上層應用系統(tǒng)關心的是如何集成這些信息資源,使之能夠通過類似的訪問手段來對不同的信息資源進行訪問#65377;

本文提出的異構(gòu)數(shù)據(jù)源訪問體系試圖為解決以上問題提供一種方案#65377;該體系定義了一套基于代理訪問中間件的網(wǎng)格服務向上層應用提供數(shù)據(jù)訪問的手段#65377;其核心思想就是設計一個仲裁機構(gòu)來處理上層應用的數(shù)據(jù)訪問請求,之后該機構(gòu)負責將這些訪問請求轉(zhuǎn)換為標準化的中間查詢語句發(fā)送到底層的數(shù)據(jù)源,而在各個數(shù)據(jù)源之上覆蓋了一層訪問代理中間件負責解析這些中間查詢語句,并按照特定數(shù)據(jù)源的訪問方式重構(gòu)為專門的查詢語句#65377;訪問代理中間件還負責將查詢結(jié)果封裝為XML文檔發(fā)送到仲裁機構(gòu);而仲裁機構(gòu)則負責合并結(jié)果,并將結(jié)果轉(zhuǎn)換為合適的格式返回給上層應用#65377;

1異構(gòu)數(shù)據(jù)訪問體系結(jié)構(gòu)

為了實現(xiàn)異構(gòu)數(shù)據(jù)源的統(tǒng)一訪問,首先需要解決的問題是如何將用戶的訪問請求轉(zhuǎn)換為體系內(nèi)部的標準化查詢命令,在此是通過提供一個應用相關的模板庫來實現(xiàn)用戶請求的標準化處理的;其次需要確定各個數(shù)據(jù)源是否包含所需要的信息,這可通過查詢邏輯映射表來實現(xiàn);最后需要將通用的查詢語法表示轉(zhuǎn)換為各個數(shù)據(jù)源所能夠識別的查詢命令,并將從各個數(shù)據(jù)源返回的數(shù)據(jù)按照指定的數(shù)據(jù)格式進行歸并后返回給上層應用#65377;整個過程如圖1所示#65377;

在體系架構(gòu)的設計上,采用了中心+分層結(jié)構(gòu)#65377;中心是指仲裁機構(gòu),該機構(gòu)負責維護模板庫和邏輯映射表;分層是指將實際的數(shù)據(jù)訪問工作分解到不同的位置實現(xiàn)以提高系統(tǒng)的可重用性以及可擴展性#65377;整個體系結(jié)構(gòu)可分為以下層次:

a)語句解析層#65377;該層位于仲裁機構(gòu),分析接收到的查詢請求,根據(jù)模板庫中的定義將其轉(zhuǎn)換為體系定義的標準化數(shù)據(jù)訪問命令形式#65377;

b)數(shù)據(jù)集成層#65377;該層位于仲裁機構(gòu),負責接收來自各個數(shù)據(jù)訪問代理的結(jié)果信息,并按照預先指定的數(shù)據(jù)組織方式進行數(shù)據(jù)合并#65377;

c)語句重構(gòu)層#65377;該層位于訪問代理,負責接收由仲裁機構(gòu)發(fā)送過來的標準化數(shù)據(jù)訪問命令,并根據(jù)其代理的數(shù)據(jù)源類型將其重構(gòu)為數(shù)據(jù)源可識別的數(shù)據(jù)訪問命令#65377;

d)數(shù)據(jù)查詢層#65377;該層位于訪問代理,負責執(zhí)行由語句重構(gòu)層所生成的特定數(shù)據(jù)訪問命令,并將結(jié)果返回到仲裁機構(gòu)#65377;異構(gòu)數(shù)據(jù)訪問體系的結(jié)構(gòu)圖如圖2所示#65377;

上層應用與仲裁機構(gòu)之間的通信采用標準的HTTP(s)進行#65377;仲裁機構(gòu)與訪問代理中間件之間的通信則采用基于HTTP(S)的XML數(shù)據(jù)交換格式#65377;訪問代理中間件與底層數(shù)據(jù)源的通信則根據(jù)需求可以分別采用不同的專門協(xié)議進行,如JDBC#65380;OCI或私有協(xié)議等#65377;

仲裁機構(gòu)采用Servlet+傳統(tǒng)Java類的方式實現(xiàn),它可以被命令行工具#65380;Web瀏覽器或編程API接口所調(diào)用#65377;上層應用的編寫者不需要具備任何關于底層數(shù)據(jù)源方面的知識,他僅僅需要通過標準的HTTP get方法和post方法就可以訪問到任何種類的數(shù)據(jù)源#65377;訪問代理中間件提供符合網(wǎng)格服務規(guī)范的服務,接收XML格式的命令請求,返回XML格式的結(jié)果數(shù)據(jù);同時它也可以直接被上層應用所訪問,從而提供更加直接的數(shù)據(jù)操縱機制#65377;同一類的數(shù)據(jù)源可以由一個或多個訪問代理中間件所管理,訪問代理中間件通過網(wǎng)格服務注冊機制來發(fā)現(xiàn)和查找指定的數(shù)據(jù)源#65377;

2標準與規(guī)范

2.1中間層語言

為實現(xiàn)異構(gòu)數(shù)據(jù)源之間數(shù)據(jù)訪問的透明轉(zhuǎn)換,需要定義一種中間層的表示語法#65377;本文定義了數(shù)據(jù)訪問的查詢操作,同時還定義了能夠返回目標數(shù)據(jù)類型的描述操作#65377;具體說明如下:

a)查詢操作(query)#65377;對于數(shù)據(jù)源的查詢可分為結(jié)構(gòu)化查詢和非結(jié)構(gòu)化查詢兩類#65377;對于結(jié)構(gòu)化查詢采用四元組表名,選取字段列表,查詢條件,排序條件表示#65377;其中:表名為系統(tǒng)定義的虛擬表名,通過映射關系映射到各個數(shù)據(jù)源的實際表名;選取字段列表和查詢條件的表示方法均符合標準SQL 92定義;排序條件支持order和group/having兩種操作#65377;

對于非結(jié)構(gòu)化查詢,其主要的查詢需求為全文檢索,即在目標文檔中發(fā)現(xiàn)指定的關鍵字,并按照一定的格式返回目標文檔#65377;其中檢索模式具有可擴展性,能夠支持更多的智能信息處理模式#65377;其查詢采用三元組檢索模式,查詢條件,返回格式表示#65377;

目前支持的檢索模式包括文件名檢索和全文檢索兩種#65377;例如,文件名檢索,“QueryFileName”,pureText表示以純文本的格式返回指定文件名為QueryFileName的文件內(nèi)容;全文檢索,“Keyword1 and Keyword2”,original表示以文檔的原始格式返回包含指定關鍵字Keyword1和Keyword2的文件內(nèi)容#65377;

b)描述操作(describe)#65377;通過描述操作可以返回目標數(shù)據(jù)源的類別以及所支持的操作,同時可以根據(jù)給定的表名返回其中的字段及類型#65377;描述操作采用三元組數(shù)據(jù)源,查詢命令,查詢條件表示#65377;其中:數(shù)據(jù)源通過IP:port的格式來指定提供服務的數(shù)據(jù)源位置;查詢命令指定了查詢的種類,目前包括數(shù)據(jù)源類別查詢和表結(jié)構(gòu)查詢兩類;對于數(shù)據(jù)源類別查詢,查詢條件可為空,對于表結(jié)構(gòu)查詢,查詢條件為表名#65377;例如,IP:port,“QueryDataSource”,1表示返回指定數(shù)據(jù)源的描述信息,包括數(shù)據(jù)源的類型以及支持的操作;IP:port,“QueryTableInfo”“TableName”表示返回指定TableName表的結(jié)構(gòu)信息,包括字段名以及各個字段的類型#65377;

2.2訪問代理規(guī)范

異構(gòu)數(shù)據(jù)源訪問的關鍵問題是訪問代理的實現(xiàn),不論是語句透明還是數(shù)據(jù)源的擴展都是通過增加不同種類的訪問代理中間件來實現(xiàn)的#65377;為了增加訪問代理中間件在實現(xiàn)上的靈活性,本文定義了一個訪問代理的抽象類來描述訪問代理中間件應該具有的功能和接口,實際的訪問代理中間件則可以由這個抽象類派生出來#65377;這樣的設計使得訪問代理的實現(xiàn)非常靈活,不僅可以支持標準格式的數(shù)據(jù)源(如各種商業(yè)數(shù)據(jù)庫產(chǎn)品)接入,也能夠?qū)崿F(xiàn)自定義數(shù)據(jù)源的接入#65377;下面分兩部分介紹抽象類的實現(xiàn)#65377;

2.2.1工作流程

整個抽象類分為五個線程類協(xié)同執(zhí)行;核心數(shù)據(jù)結(jié)構(gòu)包括三個隊列,線程之間通過這三個隊列協(xié)同執(zhí)行#65377;這樣設計的好處是當某個線程類運行時間較長時可以動態(tài)地增加該線程類中的線程數(shù)量,從而達到增加處理能力的作用;同時由于每個線程類的功能相對比較簡單,便于維護和擴展#65377;圖3顯示了這五個線程類的基本工作流程以及線程與三個核心隊列之間的關系#65377;

2.2.2抽象類中的虛函數(shù)及相應的參數(shù)定義

1)輸入/輸出參數(shù)結(jié)構(gòu)定義 

typedef struct _DS_PARAM {

ub1*name;//字段名

ub1*value;//值

sb4 len;//長度

ub2 type;//類型

short indicator;//缺省值

ub2 rcode;//返回值

} DS_PARAM;

2)初始化函數(shù)

API_EXPORT(int) ds_init(DS_BLK *oblk, char *ds_name, char *userName, char *userPass);

3)釋放處理函數(shù)

API_EXPORT(int) ds_destroy(DS_BLK *oblk);

4)獲取數(shù)據(jù)源訪問會話函數(shù)

API_EXPORT(int) ds_getSession(DS_BLK *oblk, DS_SESSION *osession)

5)釋放數(shù)據(jù)源訪問會話函數(shù)

API_EXPORT(int) ds_releaseSession(DS_BLK *oblk, DS_SESSION *osession)

6)重構(gòu)數(shù)據(jù)源訪問會話函數(shù)(用于當前會話出現(xiàn)錯誤進行復位操作)

API_EXPORT(void) ds_reap_session(DS_BLK *oblk, DS_SESSION *osession, request_rec *r)

7)對數(shù)據(jù)源執(zhí)行指定插入或更新命令,僅有輸入?yún)?shù)

API_EXPORT(sword) ds_set_value(DS_BLK *oblk, char *cmd_name, DS_PARAM **in_data, DS_PARAM **out_data)

3結(jié)束語

本文所設計的基于數(shù)據(jù)網(wǎng)格的異構(gòu)數(shù)據(jù)源訪問體系具有以下特點:

a)數(shù)據(jù)采集和發(fā)布的平臺#65377;不同的數(shù)據(jù)源(包括關系數(shù)據(jù)庫#65380;XML和文件系統(tǒng))都可以通過數(shù)據(jù)訪問中間件來訪問#65377;在不同的數(shù)據(jù)源之間,數(shù)據(jù)可以自由地被更新和檢索#65377;數(shù)據(jù)類型的轉(zhuǎn)換可以通過XSLT來實現(xiàn),傳輸過程中可以使用標準的壓縮/解壓算法來實現(xiàn)(如ZIP和GZIP)#65377;通過訪問數(shù)據(jù)服務,數(shù)據(jù)可以被發(fā)送到各種應用中,包括各種操作系統(tǒng)平臺和編程環(huán)境#65377;通過提供C和Java兩種語言的開發(fā)包,可以幫助用戶迅速地開發(fā)基于數(shù)據(jù)訪問中間件的應用#65377;向訪問中間件提交的請求具有統(tǒng)一的格式,數(shù)據(jù)訪問中間件會自動根據(jù)數(shù)據(jù)源的不同進行相應的轉(zhuǎn)換#65377;這種轉(zhuǎn)換對用戶來說是透明的,因此用戶可以同時訪問幾個不同類型的數(shù)據(jù)源并獲得合并后的查詢結(jié)果#65377;

b)開放的數(shù)據(jù)源平臺#65377;由于該體系具有面向服務的體系架構(gòu),可以方便地加入第三方功能構(gòu)件;同時數(shù)據(jù)訪問中間件具有開放的編程接口,用戶可以開發(fā)新的應用來支持特定的數(shù)據(jù)源,從而通過數(shù)據(jù)訪問中間件開放其私有的數(shù)據(jù)資源#65377;

參考文獻:

[1]SUGDEN T,HUME A,JACKSON M,et al.Protecting application developers:a client toolkit for OGSADAI[C]//Proc of the UK eScience All Hands Meeting.Nottingham:[s.n.],2004:143149.

[2]DEELMAN E,SINGH G,ATKINSON M P,et al. Gridbased metadata services[C]//Proc of the 16th International Conference on Scientific and Statistical Database Management.Washington D C:IEEE Computer Society,2004:393-402. 

[3]SINGH G,BHARATHI S,CHERVENAK A,et al.A metadata catalog service for data intensive applications[C]//Proc of Supercomputing.Washington D C:IEEE Computer Society,2003:33-50.

[4]OGSADAI WSRF 2.1 user guide[EB/OL].(2005).http://www.ogsadai.org/releases/ogsadai.html.

“本文中所涉及到的圖表、注解、公式等內(nèi)容請以PDF格式閱讀原文”

主站蜘蛛池模板: 99久视频| 欧美三级视频网站| 激情六月丁香婷婷| 丝袜亚洲综合| 一区二区三区四区精品视频| 伊人久久大线影院首页| 毛片在线看网站| 婷婷在线网站| 亚洲第一页在线观看| 黄色一级视频欧美| 26uuu国产精品视频| 国产va视频| 久久精品日日躁夜夜躁欧美| 一级黄色网站在线免费看| 免费国产无遮挡又黄又爽| 在线观看国产网址你懂的| 中文字幕在线观看日本| 天天综合天天综合| 女人18一级毛片免费观看 | www中文字幕在线观看| 97一区二区在线播放| 99热这里只有精品在线播放| 国产一级精品毛片基地| 欧美午夜久久| 国产婬乱a一级毛片多女| 一级毛片网| 99国产精品免费观看视频| 亚洲毛片在线看| 亚洲AV无码不卡无码 | 欧美成人日韩| 2048国产精品原创综合在线| 欧美日韩中文字幕在线| 四虎精品国产AV二区| 色综合热无码热国产| 2021精品国产自在现线看| 国产一级毛片yw| www欧美在线观看| av午夜福利一片免费看| 色哟哟国产精品| 一本色道久久88综合日韩精品| 国产精品欧美亚洲韩国日本不卡| 成人福利在线视频| av无码一区二区三区在线| 精品国产91爱| 亚洲中文字幕久久无码精品A| 色精品视频| 国产在线八区| 色视频国产| 日韩专区欧美| 中文毛片无遮挡播放免费| 亚洲欧洲日韩综合色天使| 国产精品太粉嫩高中在线观看 | 久久国产精品电影| 午夜限制老子影院888| 欧美日在线观看| 亚洲熟女偷拍| 欧美色综合网站| 国产女人在线| 国产幂在线无码精品| 免费不卡视频| 国产乱论视频| 一级在线毛片| 日本午夜在线视频| 手机精品福利在线观看| 欧日韩在线不卡视频| 91精品国产麻豆国产自产在线| 免费va国产在线观看| 午夜精品久久久久久久无码软件| 亚洲欧洲自拍拍偷午夜色| 国产精品亚欧美一区二区| 国产欧美精品午夜在线播放| 香蕉久久国产超碰青草| 四虎亚洲精品| 国产亚洲视频免费播放| 欧美一级大片在线观看| 国产色婷婷视频在线观看| 天天色天天综合| jizz亚洲高清在线观看| 国产成人综合日韩精品无码不卡| 国产免费黄| 亚洲第一视频网| 美女被操91视频|