發布時間:2020-05-08所屬分類:科技論文瀏覽:1次
摘 要: 摘要:國土資源數據具有時間相異、基準相異、平臺相異等多源異構性,給國土資源信息化建設造成障礙。針對當前數據備份、數據拷貝、局域網共享等簡單共享方式的不足,本文提出了一種基于不同平臺的國土異構數據共享方法。該方法首先利用中間件技術和動態投影技
摘要:國土資源數據具有時間相異、基準相異、平臺相異等多源異構性,給國土資源信息化建設造成障礙。針對當前數據備份、數據拷貝、局域網共享等簡單共享方式的不足,本文提出了一種基于不同平臺的國土異構數據共享方法。該方法首先利用中間件技術和動態投影技術進行數據異源整合,然后利用ArcGISAPIforFlex和SuperMapiClientforflash構建服務平臺,相互調用共享多源異構數據。實驗表明,兩個平臺通過服務調用和聚合可實現無縫共享多源異構國土數據,圖形沒有偏移錯誤和拓撲錯誤,實現了數據跨平臺服務共享。
關鍵詞:異構數據;拓撲關系;異構數據中間件;數據驅動;國土資源數據
0引言
地理信息系統(GeographicInformationSystems,GIS)已廣泛應用于各級政府土地資源信息管理,在土地利用、分析、評估,災情的監測預報評估,環境保護,制定土地政策和電子政務等方面起到重要作用[1],因此,近年來相繼出現了各類土地資源管理信息系統[2-3]、信息服務系統[4]、執法監察信息系統[5]和電子政務辦公系統[6],實現了國土資源科學管理,極大推進了國土資源信息化建設。結合遙感影像、土地利用現狀、基本農田、土地利用總體規劃、礦產資源、基礎地理以及遙感監測等多源信息,近年來許多學者提出了國土資源“一張圖”建設理論與方法[7]。雖然對“一張圖”認識各有不同[8-11],但通常認為,“一張圖”是一個容納各類國土資源數據的倉庫,通過對原始數據或挖掘數據分析獲得業務信息,實現數據服務和交互[12]。由于“一張圖”倉庫數據種類繁多,且數據間具有時間相異、基準相異、結構相異、平臺相異等多源異構性,因此多源數據的整合集成與共享就成為首要解決的關鍵問題。
相關期刊推薦:《測繪與空間地理信息》是黑龍江測繪局主管、黑龍江省測繪學會主辦的反映測繪學科及地理空間信息科學前沿理論和技術并指導地理信息工作者從事科研、開發、生產的技術性、知識性刊物,主要刊載測繪高新技術、地球空間信息和地理信息系統的前沿理論與技術;地理信息系統工程建設的技術總結與經驗交流;測繪行業管理與改革的先進經驗;測繪生產技術交流、科研成果推廣及教學經驗介紹等;測繪學和地理信息學中的理論探討;國內外地理信息學術動態及測繪科技報道與介紹;測繪科普知識;測繪儀器最新發展等。
為了解決多源數據整合和共享問題,辜寄蓉等人利用網絡環境進行異構國土地籍數據提取與匯交,建立多級異構國土地籍數據交換系統框架,保證了數據一致性[13];于華等人提出一種分布式與數據中心相結合的集成模式異構數據整合方法,實現新老系統之間數據無縫集成與統一管理,提高了系統可擴展性[14];繆謹勵等人采用中間件技術和動態投影技術,屏蔽數據的多格式性和多投影方式,開發出國土資源多源異構數據集成系統,得到了較好的應用效果[15]。本文基于中間件技術和動態投影技術對多源異構數據進行整合,并基于ArcGISAPIforFlex和SuperMapiClientforflash創建服務平臺,實現異構數據的云共享服務,取得了較為滿意的訪問效果。
1多源異構數據整合
1.1中間件技術
中間件技術建立了異構數據之間的映射關系,對多源數據進行了語義統一,在數據訪問中重構中間信息數據,可以根據用戶訪問要求提取數據內容,減少了由語義不同造成的數據信息損失。中間件技術將計算機軟硬件分為數據驅動器和統一操作界面兩層結構,其中,數據驅動器對應多個數據源驅動,實現不同數據源統一管理,而統一操作界面負責與數據驅動器通信,實現數據由數據源到客戶端的動態雙向訪問。中間件技術搭建了多源異構數據客戶請求與數據訪問中間平臺,用戶可根據自身要求訪問多源異構數據。
多源異構數據訪問時,首先由客戶端產生數據訪問要求,將需要訪問的數據通過操作界面傳遞給數據驅動器,操作界面判斷數據訪問是否為異構數據,如果不是異構數據,由客戶端經操作界面直接訪問數據源,訪問結束;如果是異構數據,則根據客戶端異構數據請求,驅動異構數據源,構造中間件,經由數據驅動器訪問多個數據源,數據源啟用驅動程序實現數據訪問,將其結果反饋至數據驅動器。客戶端發送檢索、查詢、修改、顯示等請求,數據驅動器將前述反饋結果進行處理,將處理結果反饋給客戶端,完成多源異構數據訪問,其具體流程如圖1所示。
1.2動態投影
基準相異是異構數據的一個基本特征,因此,多源數據訪問時需要構建一個暫時統一投影,僅實現數據顯示和查詢功能,這種方式稱之為動態投影。動態投影實質是數據源投影的引用,將數據存儲與表現相隔離,建立投影坐標系引用,實際數據源的投影并未發生變化[16]。動態投影是以第一個加載到數據驅動管理器的投影為基準,當加載后續數據時,若投影與當前投影相同,坐標保持不變;若相異,則進行動態投影變換,后載入的數據投影轉換為當前投影。如此實現投影的動態變換與統一,解決異構數據空間基準不一致問題。
2數據云共享
基于中間件和動態投影技術,在ArcGISAPIforFlex和SuperMapiClientforflash平臺下進行WebService調用與服務聚合。
2.1ArcGISAPIforFlex與SuperMapiClientforflash
ArcGISAPIforFlex(以下簡稱API)是ESRI公式發布的基于Flex的組件,用于開發REST客戶端程序。它通過WebService訪問ArcGISServer,是一種基于ArcGISServer的二次開發組件,可在短時間內快速定制開發程序。ArcGISAPIforFlex提供20余種開發類庫,常用的是ags類庫和layers類庫。其中,ags類庫包含Feature、Graphic、Map、SpatialReference、timeExtent和Units;layers類庫包括ArcGISDynamicMapServiceLayer、ArcGISImageServiceLayer、ArcGISTitledMapServiceLayer、WebTitledLayer、WMSLayer、WMTSLayer、FeatureLayer和GraphicLayer。
SuperMapiClientforflash(以下簡稱flash)是超圖公司開發的基于AdobeFlex的客戶端開發程序,共提供5個類庫,核心開發類庫是swc,包含9個開發包。在9個開發包中,最常用的是mapping開發包,它包含6個屬性,其中,action用于獲取地圖當前操作狀態;CRS用于讀寫坐標系;bounds用于獲取邊界范圍,scales用于訪問或設置比例尺;resolution用于分辨率讀寫;layers用于圖層操作。API和flash均可嵌入到Flex中,通過構造URL、發送URL、接收服務器響應、解析服務器4個環節,實現FlexAPI調用GISService,其訪問過程如圖2所示。
2.2多源異構數據共享
在Flex環境中創建WebService,可以實現異構數據共享,其創建過程是:分析不同平臺數據源的數據結構差異性,利用中間件技術進行數據整合,在數據源中提取中間件數據,通過地圖文檔或工作空間的方式表示數據,然后,進行數據發布,將整合后的異構數據源轉成遠程GIS服務。在Flex環境下布置前述的API或flash類庫,通過編寫代碼調用服務,最后,對多源異構數據進行聚合服務。
3多源異構數據整合與共享
3.1實驗數據庫
實驗數據庫是ArcGIS與SuperMap異構數據庫,該數據為基于ArcGIS欽州市1∶500地籍數據庫和基于SuperMap的1∶10000土地利用現狀數據,此外還有ArcGIS土地規劃數據。這些數據比例尺投影、要素分層、屬性各不相同,按照中間件和動態投影技術,對這些數據進行整合,最后選用Oracle作為數據庫平臺,ArcSDE作為空間數據引擎,對實驗區數據進行管理。
3.2API共享調用
ArcGISAPIforFlex調用時,在FlexBuilder中配置好開發路徑,通過動態地圖、緩存地圖、ArcGISWTMS和SuperMapOGC4種服務調用方式,嘗試訪問可能性。動態地圖調用時,運用ArcGIS動態地圖服務圖層方法,實現地圖任意比例尺可視化,細節屬性可以設置固定比例尺,調用發布于ArcGISServer的欽州市動態土地規劃地圖,實現結果如圖3(a)所示。運用ArcGIS標題地圖服務層方法,在控件中實現欽州市土地利用現狀緩存地圖調用,對相應的比例尺和范圍屬性進行設置,調用結果如圖3(b)所示。編程實現SMTS服務,重寫標題信息類、細節層次類和標題地圖服務層類,同時重寫獲取標題URL方法,調用結果如圖3(c)所示。通過編程調用超圖OGC服務,實現訪問超圖iServer的WMS,欽州市地籍數據顯示結果如圖3(d)所示。
3.3Flash共享調用
在Flash中實現服務調用,需要在Flex工程中引用swc類庫,通過編程實現動態調用、緩存地圖調用和REST地圖服務調用。編輯類庫中動態REST服務層,可實現SuperMap地圖動態調用,以欽州市某區城鎮地籍面要素為例,服務調用結果如圖4(a)所示。通過設定初始化函數和URL讀取函數,完成動態REST服務層設置,可調用緩存地圖。實驗中,還嘗試對ArcGIS的TEST服務進行調用,結果發現在Flash中不能直接訪問REST服務,將地圖服務改為超圖REST服務后,可在Flash中實現服務調用,以欽州市地籍點要素為例,其調用結果如圖4(b)所示。
3.4服務聚合
在超圖動態地圖服務中啟用ArcGIS的WMS,可實現要素的聚合。實驗中超圖動態地圖為欽州市城鎮地籍面要素,WMS服務為該市交通要素,二者聚合后,效果如圖5(a)所示。同理,以在ArcGIS緩存地圖中聚合超圖WMS服務,同樣可完成服務聚合。在圖5(b)中,ArcGIS緩存底圖為欽州市土地利用現狀圖,超圖WMS為地籍面要素圖,服務聚合結果如圖5(b)所示。
3.5異構數據服務共享分析
分析3.2、3.3,結果發現API可以實現ArcGIS自身發布的動態、緩存和OGC地圖服務,也能調用超圖發布的OGC服務,但無法實現超圖發布的動態、緩存地圖服務,也無法實現超圖REST調用。Flash可以實現自身發布的動態、緩存和OGC服務,也可實現ArcGIS發布的OGC服務,并且可以通過修改ArcGIS服務為超圖iServer服務的方式實現調用ArcGISREST服務,因此,超圖的SuperMapiClientforflash在服務調用方面具有更好的兼容性。
API和flash均支持OGC服務,理論上可以互相調用,但實驗結果并非如此,原因是ArcGIS和SuperMap對于OGC理解存在差異,最終造成超圖發布的OGC與ArcGIS的OGC并非完全一致,尤其是在調用復雜符號時,出現不可預見錯誤。分析圖5(a)與圖5(b),發現同一區域交通和地籍要素聚合后,圖形未出現錯誤,且異構數據吻合較好,未出現由于投影差異造成要素間偏移,說明本文采用的中間件技術和動態投影技術是有效的。同時在圖5(a)中對交通要素進行拓撲檢查,發現超圖平臺聚合后要素不但圖形結果完整,而且拓撲關系沒有被破壞,這也是基于Flash開發的一個優點。
4結束語
基于中間件和動態投影技術,本文進行了多源異構數據庫整合與共享分析研究,并在ArcGISAPIforFlex和SuperMapiClientforflash兩個開發平臺進行了地圖服務相互調用與聚合,所得結論如下:
1)中間件技術和動態投影技術是多源異構數據整合的一種有效方法,整合后的數據在服務調用后,未出現服務調用錯誤和空間位置偏移。
2)API和flash可以相互調用,但SuperMap的兼容性更好,且線狀要素能保持自身拓撲結構,與其他異構數據吻合較好,未出現空間偏移,實現了多源異構數據的跨平臺服務共享。
然而,由于研究未實現數據的復雜調用,且異構數據僅為ArcGIS和SuperMap兩種異構數據,因此,異構數據元數不多,中間件、動態投影以及兩種開發平臺訪問數據的穩定性有待于進一步驗證。總之,本文提出的方法不失為一種有效的多源異構數據整合和共享方法,也為相關研究提出了一個技術新視角。
SCISSCIAHCI