【專家視點】空間數據庫的設計淺析
空間數據庫的設計是指在現在數據庫管理系統的基礎上建立空間數據庫的整個過程。主要包括需求分析、結構設計、和數據層設計三部分。
1、需求分析
需求分析是整個空間數據庫設計與建立的基礎,主要進行以下工作:
1)調查用戶需求:
了解用戶特點和要求,取得設計者與用戶對需求的一致看法。
2)需求數據的收集和分析:
包括信息需求(信息內容、特征、需要存儲的數據)、信息加工處理要求(如響應時間)、完整性與安全性要求等。
3)編制用戶需求說明書:
包括需求分析的目標、任務、具體需求說明、系統功能與性能、運行環境等,是需求分析的最終成果。
需求分析是一項技術性很強的工作,應該由有經驗的專業技術人員完成,同時用戶的積極參與也是十分重要的。
在需求分析階段完成數據源的選擇和對各種數據集的評價
2、結構設計
指空間數據結構設計,結果是得到一個合理的空間數據模型,是空間數據庫設計的關鍵。空間數據模型越能反映現實世界,在此基礎上生成的應用系統就越能較好地滿足用戶對數據處理的要求。
空間數據庫設計的實質是將地理空間實體以一定的組織形式在數據庫系統中加以表達的過程,也就是地理信息系統中空間實體的模型化問題。主要過程是見圖2-7-1。
1)概念設計
概念設計是通過對錯綜復雜的現實世界的認識與抽象,最終形成空間數據庫系統及其應用系統所需的模型。
具體是對需求分析階段所收集的信息和數據進行分析、整理,確定地理實體、屬性及它們之間的聯系,將各用戶的局部視圖合并成一個總的全局視圖,形成獨立于計算機的反映用戶觀點的概念模式。概念模式與具體的DBMS無關,結構穩定,能較好地反映用戶的信息需求。
表示概念模型最有力的工具是E-R模型,即實體-聯系模型,包括實體、聯系和屬性三個基本成分。用它來描述現實地理世界,不必考慮信息的存儲結構、存取路徑及存取效率等與計算機有關的問題,比一般的數據模型更接近于現實地理世界,具有直觀、自然、語義較豐富等特點,在地理數據庫設計中得到了廣泛應用。(圖2-7-2)
2)邏輯設計
在概念設計的基礎上,按照不同的轉換規則將概念模型轉換為具體DBMS支持的數據模型的過程,即導出具體DBMS可處理的地理數據庫的邏輯結構(或外模式),包括確定數據項、記錄及記錄間的聯系、安全性、完整性和一致性約束等。導出的邏輯結構是否與概念模式一致,能否滿足用戶要求,還要對其功能和性能進行評價,并予以優化。
從E—R模型向關系模型轉換的主要過程為:
①確定各實體的主關鍵字;
②確定并寫出實體內部屬性之間的數據關系表達式,即某一數據項決定另外的數據項;
③把經過消冗處理的數據關系表達式中的實體作為相應的主關鍵字
④根據②、③形成新的關系。
⑤完成轉換后,進行分析、評價和優化。
3)物理設計
物理設計是指有效地將空間數據庫的邏輯結構在物理存儲器上實現,確定數據在介質上的物理存儲結構,其結果是導出地理數據庫的存儲模式(內模式)。主要內容包括確定記錄存儲格式,選擇文件存儲結構,決定存取路徑,分配存儲空間。
物理設計的好壞將對地理數據庫的性能影響很大,一個好的物理存儲結構必須滿足兩個條件:一是地理數據占有較小的存儲空間;二是對數據庫的操作具有盡可能高的處理速度。在完成物理設計后,要進行性能分析和測試。
數據的物理表示分兩類:數值數據和字符數據。數值數據可用十進制或二進制形式表示。通常二進制形式所占用的存貯空間較少。字符數據可以用字符串的方式表示,有時也可利用代碼值的存貯代替字符串的存儲。為了節約存貯空間,常常采用數據壓縮技術。
物理設計在很大程度上與選用的數據庫管理系統有關。設計中應根據需要,選用系統所提供的功能。
4)數據層設計
大多數GIS都將數據按邏輯類型分成不同的數據層進行組織。數據層是GIS中的一個重要概念。GIS的數據可以按照空間數據的邏輯關系或專業屬性分為各種邏輯數據層或專業數據層,原理上類似于圖片的疊置。例如,地形圖數據可分為地貌、水系、道路、植被、控制點、居民地等諸層分別存貯。將各層疊加起來就合成了地形圖的數據。在進行空間分析、數據處理、圖形顯示時,往往只需要若干相應圖層的數據。
數據層的設計一般是按照數據的專業內容和類型進行的。數據的專業內容的類型通常是數據分層的主要依據,同時也要考慮數據之間的關系。如需考慮兩類物體共享邊界(道路與行政邊界重合、河流與地塊邊界的重合)等,這些數據間的關系在數據分層設計時應體現出來。
不同類型的數據由于其應用功能相同,在分析和應用時往往會同時用到,因此在設計時應反映出這樣的需求,即可將這些數據作為一層。例如,多邊形的湖泊、水庫,線狀的河流、溝渠,點狀的井、泉等,在GIS的運用中往往同時用到,因此,可作為一個數據層。
5)數據字典設計
數據字典用于描述數據庫的整體結構、數據內容和定義等。
數據字典的內容包括:
1)數據庫的總體組織結構、數據庫總體設計的框架。
2)各數據層詳細內容的定義及結構、數據命名的定義。
3)元數據(有關數據的數據,是對一個數據集的內容、質量條件及操作過程等的描述)。
以上就是有關于空間數據庫設計的全部內容,希望能給大家帶來幫助。