基於ArcEngine+C#開發的空間數據管理平臺架構設計及功能說明

1、空間數據管理平臺設計說明數據庫

1.   概述

ArcCatalog對空間數據管理基於數據的物理存儲關係進行數據的組織和管理,它在要素類基礎上引入要素集,用於對具備相同座標系統和空間範圍的一組數據統一組織到同一個目錄下,實現對要素集的分類管理。可是,僅利用要素集的方式進行空間數據的組織和管理,沒法知足實際空間數據組織管理的要求。服務器

空間數據管理平臺基於SDE中現有的數據組織管理方式的基礎上,經過創建一組數據管理表,擴展了對空間數據的組織和管理,系統採樣管理邏輯樹的方式按空間數據之間的邏輯關係進行空間數據的組織和管理。框架

該系統容許用戶按需建立本身的空間數邏輯結構,實現對空間數據的按邏輯方式進行組織和管理,經過應用該系統能夠方便的實現對空間數據的有序組織和管理應用。分佈式

2.   空間數據管理平臺類結構圖

空間數據管理平臺數據管理模型結構以下圖:工具

數據管理目錄類是整個空間數據管理的根節點,在根節點下不一樣類型數據進行分類組織,目前在數據管理目錄下系統整體分爲三大類數據節點:編碼

2.1.  邏輯數據庫節點

邏輯數據庫節點是按數據的邏輯關係對空間數據進行分類組織和管理,用戶能夠在數據管理節點下任意建立邏輯數據庫節點。每一個邏輯數據庫都對應一個具體的物理數據庫鏈接,該物理數據庫鏈接是邏輯數據庫中各管理的要素類、要素集、柵格實際存儲的位置,不一樣的邏輯數據庫可使用相同的物理數據庫鏈接,也可使用不一樣的物理數據庫鏈接。目前的物理數據鏈接能夠和管理表一致,也能夠配置鏈接到其餘物理數據庫中。spa

在邏輯空間數據庫中能夠採樣文件夾節點在次進行數據的分類組織管理,也能夠直接將數據添加到邏輯空間數據庫節點下,而不使用文件夾節點進行分組管理。在管理平臺中使用文件夾節點主要目的是便於用戶進行數據分組管理,在不一樣文件夾節點下能夠有同名對象存在。如一個500比例尺文件夾和1000比例尺文件夾節點下均可以有居民地要素類存在。.net

在邏輯空間數據庫和文件夾節點下的要素類節點和要素集節點分別對應物理數據庫中的實際的要素類和要素集。和物理數據庫要素集同樣在要素集節點由一組要素類組成,這組要素類要求其座標參考是一致的。設計

若是一個邏輯數據庫在編輯狀態或進步了編輯版本的提交,那麼在該邏輯數據庫中歐過的要素類節點下將會有歷史數據版本節點,顯示不一樣歷史狀態下的數據狀況。中間件

地圖類節點是則是配置的一個圖件方案,針對具體邏輯空間數據庫須要,用戶能夠定義各類類型的圖件,並設置圖件所包含的圖層節點以及圖層的渲染方式。在應用系統中可直接添加對應地圖到視圖進行各類數據分析操做。

2.2.  地圖模板庫節點

地圖模板庫節點是將全部的製圖模板也歸入到管理平臺中進行有效的管理和組織。目前的地圖模板庫的定義和建立由專門的模板定義工具進行定義和配置。

地圖模板庫節點下有一組地圖模板類別節點組成,它主要用於實現對不一樣類型地圖模板的分類組織,不一樣的地圖類別節點下由一組地圖模板節點組成,地圖模板節點又是由一組模板參數和模板元素節點組成,其中模板參數節點定義了當前模板中預約義的參數,而模板元素節點對應於模板中的各類點、線、面、文本等元素。

2.3.  文檔庫節點

文檔庫節點是對文檔類型數據的管理和維護,如wordpdfdwg等文件進行管理,全部文檔將被上載到數據庫中以二進制方式進行保存,用戶進行這些數據查看是將生成本地的臨時文件,而後被加載顯示。

3.   空間數據管理平臺的版本編輯機制設計

在空間數據庫管理平臺中爲了進行數據編輯歷史的記錄,對版本編輯操做模式進行了定義,僅按本定義進行版本編輯才能正確的記錄數據的歷史變化狀況。

歷史數據管理採用SDE的歷史數據標記方式實現對歷史數據的管理,這裏的歷史數據僅對企業數據庫有效,對文件型數據庫不支持歷史數據庫的管理。進行歷史數據編輯的基本要求以下:

l         版本的註冊以邏輯數據庫進行操做,也能夠對邏輯數據庫中的單個要素類或要素集進行,而且要素類和要素集須要支持存檔模式。

l         首先對一個邏輯數據庫建立一個編輯版本,該編輯版本的父版本爲sde.DEFAULT版本,在數據庫管理系統中,一個邏輯數據庫只能有一個編輯版本可供進行編輯,該編輯版本必須提交後纔可能建立一個新的編輯版本。

l         在該編輯版本的基礎上能夠根據具體工做須要建立其相應的子版本用於的數據的編輯處理。

l         在加載到地圖中的數據就是以編輯版本及其子版本能夠進行地圖要素的編輯操做,其sde.DEFAULT不容許進行編輯操做。

l         進行編輯完成後,在進行版本提交時,須要同時把該邏輯數據庫中全部進行了編輯的數據同時添加到地圖中進行總體的版本提交處理,版本提交後將在提交點是建立一個歷史標記,記錄數據的歷史狀態,提交後sde.DEFAULT始終是最新的數據。

在數據管理樹中的要素類節點下面將顯示數據不一樣歷史標記狀態,要素類節點始終是sde.DEFAULT版本所對應的數據,即該節點數據是最新數據,其節點下的各歷史版本節點則是對應不一樣數據變動點的歷史數據。這樣利用版本比較工具就能夠對比不一樣歷史時期數據的變化狀況。

4.   空間數據管理平臺和其餘業務平臺關係

空間數據管理平臺和業務應用平臺整體關係簡單表示如上圖。

空間數據管理平臺是做爲一個通用的空間管理平臺,設計對多個業務應用系統中所設計數據的分類組織和管理,提供通用平臺中所應具備的通用的GIS功能,對數據能夠執行通用的分析處理,其重點是知足對空間數據庫的分類組織和管理的須要。

業務應用系統則是針對空間數據庫提供業務專用組件庫實現對數據庫中數據的統計分析等處理,對空間數據庫的訪問則能夠基於空間數據庫管理平臺中的管理數據庫訪問組件實現對本業務所涉及部分邏輯數據庫中數據的訪問和處理,這樣能夠保證在業務管理表中對數據的各類操做和各類成果的歸檔操做後的結果能實現和通用管理平臺實現無縫的集成,實現業務應用系統對數據的各類處理操做能自動反映的數據管理平臺的管理樹節點上。

2、空間數據管理平臺使用說明

 

1.   概述

ArcCatalog對空間數據管理基於數據的物理存儲關係進行數據的組織和管理,它在要素類基礎上引入要素集,用於對具備相同座標系統和空間範圍的一組數據統一組織到同一個目錄下,實現對要素集的分類管理。可是,僅利用要素集的方式進行空間數據的組織和管理,沒法知足實際空間數據組織管理的要求。

空間數據管理平臺基於SDE中現有的數據組織管理方式的基礎上,經過創建一組數據管理表,擴展了對空間數據的組織和管理,系統採樣管理邏輯樹的方式按空間數據之間的邏輯關係進行空間數據的組織和管理。

該系統容許用戶按需建立本身的空間數邏輯結構,實現對空間數據的按邏輯方式進行組織和管理,經過應用該系統能夠方便的實現對空間數據的有序組織和管理應用。

2.   空間數據邏輯管理模塊

空間數據邏輯樹管理功能,採樣樹狀視圖實現對空間數據庫的邏輯管理和組織,整個空間邏輯樹視圖結構以下:

 

樹根目錄是目錄樹節點,該節點下面是按邏輯關係建立的各個空間邏輯數據庫、而後是整個系統所管理各類文檔,如技術規範等,標準表、編碼表和製圖模板。

整個管理平臺的核心是對邏輯空間數據庫的組織和管理,其餘的節點均是一些輔助的數據管理節點,在此不對這些節點進行詳細說明。

邏輯空間數據庫節點按數據的邏輯關係實現對空間數據的組織和管理,能夠根據具體應用須要創建各自對應的邏輯空間數據庫節點,如500比例尺地形圖數據庫、1000比例尺地形圖庫、基礎數據庫、規劃數據庫等,而對應空間數據的組織管理方式,則是由用戶本身進行肯定和建立,系統在此不對邏輯數據庫的取名和管理的數據內容進行任何限制,用戶能夠在數節點上按須要建立各自的邏輯空間數據庫節點。

邏輯空間數據庫節點所建立的邏輯空間數據庫能夠對應不一樣的SDE空間數據庫中、或和系統的管理數據表在同一個空間數據庫之中,這樣能夠實現對空間數據的分佈式管理和組織。對邏輯空間數據庫是SDE類型的數據庫是,其每一個邏輯空間數據庫將會有各類對應的數據編輯版本和歷史數據版本,若是邏輯空間數據庫是在一個空間數據庫中,邏輯空間數據庫之間不會看到其餘邏輯空間數據庫的數據編輯版本和歷史數據版本。

在邏輯空間數據庫節點下能夠按文件夾、要素集的方式在進行數據的組織和管理。即用戶能夠直接在邏輯空間數據庫節點下放置要素類、要素集、地圖外,還能夠在邏輯空間數據庫下建立文件夾節點實現對要素類、要素集、地圖等節點的分類組織和管理,這裏的文件夾節點僅表現數據的邏輯組織關係,對空間數據的幾何座標無任何如今。此外,在文件夾節點下還能夠建立子文件夾節點,這相似於磁盤中建立文件夾同樣。

功能使用說明

2.1.  建立邏輯數據庫

用於建立一個邏輯數據庫節點,邏輯數據庫節點須要映射到一個具體的物理數據庫中,這樣在該邏輯數據庫中導入的數據或建立的要素類等都將保存到該對應的物理數據庫中,邏輯數據庫對應的物理數據庫能夠和管理表所對應的空間數據庫一致,也能夠是其餘SDE數據庫。邏輯數據庫建立功能位於目錄樹根節點下,對應窗體以下:

點擊設置空間數據庫鏈接設置對應的空間數據庫,界面以下:

肯定後將建立一個新的邏輯數據庫。

在新的邏輯數據庫建立好後能夠依次導入數據到邏輯數據庫中。

2.2.  建立文件夾

文件夾能夠用於實現對數據的分類組織和管理,文件夾建立窗體以下:

在本系統中,邏輯數據庫中的文件夾實現對空間數據庫分類組織的一種實現方式,例如在基本空間數據庫中,能夠對不一樣比例尺的空間數據庫建立不一樣的文件夾用於對空間數據庫的組織和管理。在本系統中不一樣文件夾下的數據節點的名稱能夠是相同的,文件夾下面能夠包含子文件夾,此外文件夾下還能夠在包含要素集等。在邏輯空間數據庫中除了對要素類的組織管理外,也能夠實現對地圖對象的管理,能夠根據應用須要建立配置各類地圖對象,並設置該地圖對象所包含的圖層及圖層的渲染方案信息,在應用系統中能夠直接加載獲取利用該系統所建立的地圖對象,如下是一個簡單的一個邏輯數據庫節點實例。

目前的規劃數據庫中建立了要素類和地圖2個文件夾,其中要素類文件夾用於組織管理該邏輯數據庫中全部的要素集和要素類,該文件夾節點下由6個要素集組成,不一樣要素集下由對應要素類組成。地圖文件夾節點下配置了該空間數據庫的一個對應的地圖對象。

2.3.  建立要素集

建立要素集和原數據管理中的建立流程一致,僅是在後續完成後將自動在數據庫管理表中建立相應的節點信息,這裏不進行詳細說明。

2.4.  建立要素類

建立要素類在邏輯數據庫節點、文件夾節點、要素集節點下,建立要素類節點和原數據管理中的建立流程一致,僅是在後續完成後將自動在數據庫管理表中建立相應的節點信息,這裏不進行詳細說明。

2.5.  附加要素類

附加要素類,用於將之前所創建的空間數據庫中的要素類附加到本系統中用於統一管理和維護。附加的空間數據庫能夠根據應用須要附加到不一樣的邏輯數據庫節點上,能夠附加的數據庫必須和邏輯空間數據庫在同一個數據庫中。窗體以下:

選擇所須要附加到管理表中的要素類,肯定後將在對應的節點下建立要素類節點。附加的要素類只能是該空間數據庫中的獨立要素類,即該要素類不能屬於要素集。

2.6.  附加要素集

附加要素集,用於將之前所創建的空間數據庫中的要素集合附加到本系統中用於統一管理和維護。附加的空間數據庫能夠根據應用須要附加到不一樣的邏輯數據庫節點上,能夠附加的數據庫必須和邏輯空間數據庫在同一個數據庫中。窗體以下:

2.7.  建立地圖

用於建立地圖對象,地圖對象記錄了地圖名稱等基本屬性,該對象後期將根據應用須要進行擴充完善,以實現對地圖中各類信息的記錄和管理。其窗體以下:

 建立好地圖後,能夠向其中添加圖層,目前系統所支持圖層主要是要素類圖層的添加,而且該圖層的要素類須要在該邏輯空間數據庫所對應的SDE空間數據庫中。

2.8.  添加圖層

在地圖對象中添加圖層。圖層所對應的要素類只能來源於和地圖對象所在的邏輯空間數據庫中的數據對象(要素類等),系統不提供跨邏輯數據庫的要素類的添加。圖層對象除記錄了圖層名稱、關聯的要素類外,還記錄了圖層是否可見,圖層的最大最小比例範圍、圖層渲染等基本信息。添加圖層一次能夠添加多個圖層到地圖中。添加圖層使用的是原來系統中向地圖控件中添加數據的窗體,這裏不做詳細說明。

後期將進一步完善對組合圖層、製圖圖層添加的支持。

2.9.  圖層渲染功能

圖層渲染功能用於對地圖下的圖層進行渲染處理,渲染的操做模式和原框架種的一致,這裏不作詳細說明。這裏設置好的渲染方案後,將保存到圖層的渲染字段下,之後加載地圖到地圖控件後,若是圖層渲染字段值不爲空,將經過獲取的渲染信息自動對加載的圖層進行渲染處理。把數據添加到地圖後,用戶應該根據具體應用須要對當前地圖中各個圖層配置其渲染方案。渲染窗體以下:

2.10.     應用渲染方案

應用渲染方案是將以保存到本地的渲染方案設置到指定圖層上,應用渲染方案功能和原平臺中的圖層樹上的應用渲染方案功能相同,此處的應用渲染方案將會自動將設置到圖層上的渲染方案信息保存到管理表中該圖層對應字段中。

2.11.     地圖屬性

地圖屬性窗體用於瀏覽和編輯地圖的各類屬性設置。窗體以下:

 

常規頁面列出地圖基本屬性,圖層列表屬性中列出了當前地圖所包含的圖層列表,用戶能夠在此調整圖層的排列順序。

2.12.     邏輯數據庫屬性

邏輯數據庫屬性功能能夠從新修改相關邏輯數據庫的配置設置,其主要用於將空間數據庫的數據整理遷移到其餘數據庫服務器上後,僅須要修改相關的邏輯空間數據庫鏈接信息,就能保證系統能正確的從數據庫管理表中構建空間數據管理目錄樹。其窗體以下:

2.13.     添加到視圖

添加到視圖實現將管理目錄樹上的地圖、圖層、要素類等添加到當前地圖控件中。

3.   歷史數據管理模塊

3.1.  概述

歷史數據管理採用SDE的歷史數據標記方式實現對歷史數據的管理。爲實現歷史數據管理,在進行數據的編輯處理時必須按系統的流程執行數據編輯操做。

l         進行編輯前一個邏輯數據庫中的數據應該都註冊了版本而且支持存檔模式。

l         首先對一個邏輯數據庫建立一個編輯版本,該編輯版本的父版本爲sde.DEFAULT版本,在數據庫管理系統中,一個邏輯數據庫只能有一個編輯版本可供進行編輯,該編輯版本必須提交後纔可能建立一個新的編輯版本。

l         在該編輯版本的基礎上能夠根據具體工做須要建立其相應的子版本用於的數據的編輯處理。

l         在加載到地圖中的數據就是以編輯版本及其子版本能夠進行地圖要素的編輯操做,其sde.DEFAULT不容許進行編輯操做。

l         進行編輯完成後,在進行版本提交時,須要同時把該邏輯數據庫中全部進行了編輯的數據同時添加到地圖中進行總體的版本提交處理,版本提交後將在提交點是建立一個歷史標記,記錄數據的歷史狀態,提交後sde.DEFAULT始終是最新的數據。

3.2.  功能說明

3.2.1.    建立數據編輯點

對一個邏輯數據庫而言,對其進行編輯以前,須要建立一個編輯點版本,在該編輯點版本提交到DEFAULT版本前,不能建立新的編輯點版本,只有該編輯點版本提交後才能建立新的版本。該編輯點版本建立表示數據進入一個編輯工做狀態,須要對數據進行更新維護。後續的編輯操做只能是在該編輯版本及其子版本上進行,爲了有效的記錄數據在不一樣歷史點上的不一樣,不能在DEFAULT版本上進行數據編輯操做。在編輯點版本提交後也不能在此版本上進行數據編輯,由於該版本一提交即說明對數據的本次更新已經結束,此時將造成一個歷史標記,用於記錄數據歷史更新狀態。

建立數據編輯點版本對邏輯數據庫節點有效。建立後將在邏輯空間數據庫的要素類節點下添加對應編輯點版本節點,以下圖:

3.2.2.    建立子編輯版本

在未提交的編輯點版本上能夠根據須要建立子編輯版本,在子編輯版本基礎上還能夠在建立子編輯版本。窗體以下:

建立數據編輯點版本對邏輯數據庫節點有效

3.2.3.    刪除子編輯版本

刪除建立的子編輯版本,窗體以下:

選擇編輯點版本上的子版本,肯定後便可刪除。建立數據編輯點版本對邏輯數據庫節點有效。

 

3.2.4.    版本協調

版本協調主要是檢查提交版本和主版本之間是否有衝突,版本提交之間必須進行版本協調處理。其窗體以下:

版本協調,須要將該邏輯空間數據庫中全部編輯要素類都添加到當前地圖窗體後,在編輯啓動狀態下進行操做。版本協調和本系統所定義的數據提交模式是相對應的。在本系統的數據提交採用以下模式:

l         編輯點版本數據直接提交到DEFAULT版本中,並自動建立數據的歷史版本標記。

l         子編輯點版本則是對應提交到其父版本中去,但不能直接從子版本提交到DEFAULT版本,此外子編輯版本提交不會建立歷史標記。

3.2.5.    版本提交

協調無衝突的版本能夠直接提交到前面進行協調的版本中去,一個編輯點版本只能進行一次提交,要進行新的編輯是時,須要建立新的編輯點版本。提交後,在要素類節點下將建立數據的歷史版本節點,以下圖:

歷史版本標記以「EP+提交時間」格式自動生成。

3.2.6.    改變版本

改變版本用於改變邏輯數據庫中地圖節點上的地圖中各圖層所管理要素類的版本信息。該功能在地圖節點上有效。

4.   其餘GIS功能模塊

其餘GIS功能和原有框架的操做一致,在此不作說明,具體見原有框架的介紹說明。

 

聯繫電話:13982071140,黃,http://www.linjon.cn,能夠在線下載試用
空間數據管理平臺可帶框架源碼方式購買,可免費下載試用!

在線聯繫  QQ:26326507 ,E-mail:hy2001al@163.com

http://www.ljlk.net/,成都領君科技有限公司,基於ASP.NET的superflow工做流平臺免費下載試用!

http://www.ljjlk.com/,成都領君科技有限公司,基於ArcGIS的JLKEngine中間件平臺免費下載試用!

相關文章
相關標籤/搜索