地理數據庫的類型
地理數據庫是用於保存數據集集合的“容器”。有以下三種類型:
- 文件地理數據庫 - 在文件系統中以文件夾形式存儲。每個數據集都以文件形式保存,該文件大小最多可擴展至 1 TB。建議使用文件地理數據庫而不是個人地理數據庫。
- 個人地理數據庫 - 所有的數據集都存儲於 Microsoft Access 數據文件內,該數據文件的大小最大為 2 GB。
- ArcSDE 地理數據庫 - 也稱作多用戶地理數據庫。這種類型的數據庫使用 Oracle、Microsoft SQL Server、IBM DB2、IBM Informix 或 PostgreSQL 存儲於關系數據庫中。這些地理數據庫需要使用 ArcSDE,並且在大小和用戶數量方面沒有限制。
| 關鍵特征 |
ArcSDE 地理數據庫 |
文件地理數據庫 |
個人地理數據庫 |
|---|---|---|---|
| 描述 |
在關系數據庫中以表的形式保存的各種類型的 GIS 數據集的集合(為在關系數據庫中存儲和管理的 ArcGIS 建議使用的本機數據格式。) |
在文件系統文件夾中保存的各種類型的 GIS 數據集的集合(為在文件系統文件夾中存儲和管理的 ArcGIS 建議使用的本機數據格式。) |
在 Microsoft Access 數據文件中存儲和管理的 ArcGIS 地理數據庫的原始數據格式。(此數據格式的大小有限制且僅適用於 Windows 操作系統。) |
| 用戶數 |
多用戶:多位讀取者和多位寫入者 |
單個用戶和較小的工作組:每個要素數據集、獨立要素類或表有多位讀取者或一位寫入者。浮動使用任何特定文件最終都會導致大量讀取者的降級。 |
單個用戶和較小的工作組(具有較小的數據集):多位讀取者和一位寫入者。浮動使用最終會導致大量讀取者的降級。 |
| 存儲格式 |
|
每個數據集都是磁盤上的一個單獨文件。文件地理數據庫是用來保存其數據集文件的文件夾。 |
每個個人地理數據庫中的所有內容都保存在單個 Microsoft Access 文件 (.mdb) 中。 |
| 大小限制 |
可達 DBMS 限制 |
每個數據集 1 TB。每個文件地理數據庫可保存很多數據集。對於超大型影像數據集,可將 1 TB 限值提高到 256 TB。每個要素類最高可擴展至每個數據集數億個矢量要素。 |
每個 Access 數據庫 2 GB。性能下降前的有效限制通常介於每個 Access 數據庫文件 250 到 500 MB 之間。 |
| 版本管理支持 |
完全支持所有的 DBMS。包括交叉數據庫復制、使用檢出和檢入進行更新以及歷史存檔。 |
對於使用檢出和檢入提交更新的客戶機和可使用單向復制向其發送更新的客戶機,僅支持地理數據庫格式。 |
對於使用檢出和檢入提交更新的客戶機和可使用單向復制向其發送更新的客戶機,僅支持地理數據庫格式。 |
| 平台 |
Windows、UNIX、Linux 和與 DBMS 的直連,這些 DBMS 可能會在用戶的本地網絡中的任意平台上運行。 |
跨平台。 |
僅適用於 Windows。 |
| 安全和權限 |
由 DBMS 提供 |
操作文件系統安全。 |
Windows 文件系統安全。 |
| 數據庫管理工具 |
備份、恢復、復制、SQL 支持、安全等的完整 DBMS 功能 |
文件系統管理。 |
Windows 文件系統管理。 |
| 備注 |
需要使用 ArcSDE 技術;ArcSDE for SQL Server Express 隨以下三項一起提供
|
還可以以只讀的壓縮格式存儲數據以降低存儲要求。 |
通常用作屬性表管理器(通過 Microsoft Access)。用戶喜歡針對文本屬性的字符串處理。 |
文件地理數據庫和個人地理數據庫
文件地理數據庫和個人地理數據庫是專為支持地理數據庫的完整信息模型而設計的,它包含拓撲、柵格目錄、網絡數據集、terrain 數據集、地址定位器等,ArcGIS for Desktop Basic、標准版 和 高級版 的所有用戶可免費獲取這兩種地理數據庫。單用戶可以對文件地理數據庫和個人地理數據進行編輯,這兩種地理數據庫不支持地理數據庫版本管理。使用文件地理數據庫,如果要在不同的要素數據集、獨立要素類或表中進行編輯,則可以同時存在多個編輯器。
文件地理數據庫是 ArcGIS 9.2 發布的新地理數據庫類型。其旨在執行以下操作:
- 為所有用戶提供可用范圍廣泛、簡單且可擴展的地理數據庫解決方案。
- 提供能夠跨操作系統工作的可移植地理數據庫。
- 通過擴展可處理非常大的數據集。
- 性能和可擴展性極佳。例如,要支持包含超過 3 億個要素的單個數據集,並支持可擴展為每個文件超過 500 GB(且可獲得極佳的性能)的數據集。
- 使用性能和存儲能力都得到優化的高效數據結構。文件地理數據庫所使用的存儲空間約為 shapefile 和個人地理數據庫所必需的要素幾何存儲空間的三分之一。文件地理數據庫還允許用戶將矢量數據壓縮為只讀格式,以進一步降低存儲要求。
- 在涉及屬性的操作方面優於 shapefile,數據大小限制可進行擴展,可使其超出 shapefile 限制。
自從個人地理數據庫最初在 ArcGIS 8.0 版本中首次發布以來,ArcGIS 中一直在使用個人地理數據庫,該地理數據庫使用了 Microsoft Access 數據文件結構(.mdb 文件)。它們支持的地理數據庫的大小最大為 2 GB。不過,在數據庫性能開始降低之前,有效的數據庫大小會較小(介於 250 和 500 MB 之間)。個人地理數據庫只能在 Microsoft Windows 操作系統下使用。用戶喜歡他們能夠通過 Microsoft Access 針對個人地理數據庫執行的表操作。許多用戶確實喜歡 Microsoft Access 中用於處理屬性值的文本處理功能。
出於很多用途,ArcGIS 將繼續支持個人地理數據庫。不過,多數情況下,Esri 推薦使用文件地理數據庫,因為文件地理數據庫的大小具有可擴展性、性能也會顯著提高並可跨平台使用。文件地理數據庫非常適合處理用於 GIS 投影的基於文件的數據集,非常適合個人使用以及在小型工作組中使用。它具有很高的性能,在不需要使用 DBMS 的情況下能夠進行很好的擴展以存儲大量數據。另外,還可跨多個操作系統對其進行移植。
通常,用戶會針對數據集合使用多個文件或個人地理數據庫,並針對他們的 GIS 工作同時訪問這些地理數據庫。
ArcSDE 地理數據庫
如果需要一種多位用戶可同時編輯和使用的大型多用戶地理數據庫,則 ArcSDE 地理數據庫可提供一種極佳的解決方案。新增的功能可用於管理共享式多用戶地理數據庫和支持多種基於版本的關鍵性 GIS 工作流。從而使利用貴組織企業關系數據庫的能力成為 ArcSDE 地理數據庫的一項重要優勢。
ArcSDE 地理數據庫適用於多種 DBMS 存儲模型(IBM DB2、Informix、Oracle、PostgreSQL 和 SQL Server)。ArcSDE 地理數據庫使用范圍廣泛,主要適用於個人、工作組、部門和企業設置。它們充分利用 DBMS 的基礎架構以支持以下內容:
- 超大型連續 GIS 數據庫
- 多位同步用戶
- 長事務和版本化工作流
- 對 GIS 數據管理的關系數據庫支持(為保證可伸縮性、可靠性、安全性、備份以及完整性等提供建立關系數據庫的優勢)
- 所有支持的 DBMS(Oracle、SQL Server、PostgreSQL、Informix 和 DB2)中的 SQL 空間類型
- 可適應大量用戶不同要求的高性能
通過許多大型地理數據庫的安裝啟用,我們發現在將 GIS 數據所需的大型二進制對象移入和移出表格時 DBMS 的效率極高。此外,與基於文件的 GIS 數據集相比,GIS 數據庫的容量更大且支持的用戶數量也更多。
有關 ArcSDE 地理數據庫架構以及 ArcSDE 地理數據庫如何利用關系數據庫技術的信息,請參見地理數據庫的架構。
ArcSDE 可對 DBMS 事務框架進行長事務管理和短事務管理
ArcSDE 的主要角色之一就是支持每個 DBMS 中的地理數據庫版本管理框架。
絕大多數情況下,GIS 中的單個編輯事務可能涉及對多個表中的多個行進行更改。例如,更新宗地可能需要更改面的表示,並更改相應的邊界線和宗地拐角。此外,還必須更新這些要素中每個要素的屬性記錄。此編輯操作需要對多個表中的多條記錄進行更改。在這些情況下,用戶希望將此編輯集合視為單個事務。提交或回滾這些更改時,會將它們視為一個統一的操作來進行管理。
同時,用戶希望能夠在一個編輯會話中撤消和重做單個編輯操作。為了使這種情況變得更為復雜,可能需要在與中央共享數據庫斷開連接的系統中執行編輯操作。
而且,在這些專門化的 GIS 數據維護過程中,GIS 數據庫必須持續保持對日常操作可用,而在這些日常操作中,每位用戶都有可能獲取共享 GIS 數據庫的個人視圖或狀態。
通過使用一種稱為版本管理的方法,ArcSDE 地理數據庫支持在多用戶環境下對這些數據管理情景及許多其他數據管理情景進行管理和更新。在版本管理這種機制下,所有的數據庫更改都作為表中的行進行記錄。例如,每次更新某一行中的某個值時,舊值即會失效,並會新增一個更新行。
這樣,通過將更改信息以增量記錄的方式存儲在數據庫中,ArcSDE 技術就能在簡單 DBMS 事務框架中管理復雜的高級 GIS 事務。
注:
此機制用於維護所有更改的記錄及其元數據,其是術語版本管理的起源。
ArcSDE 使用版本的元數據來隔離多個編輯會話、支持復雜事務、共享復本、同步多個數據庫之間的內容、執行自動存檔並支持歷史查詢。
有關詳細信息,請參閱編輯和維護數據概述。
ArcGIS 中如何包含 ArcSDE 技術?
過去,ArcSDE 作為單獨的 Esri 產品進行銷售。從 ArcGIS 9.2 開始,ArcSDE 技術成為 ArcGIS 內含的功能,不再單獨提供。ArcSDE 技術已集成到了 ArcGIS for Desktop、ArcGIS Engine 和ArcGIS for Server 中,以便用戶能夠在其組織內擴展基於 DBMS 的地理數據庫。
從 ArcGIS 9.2 開始,ArcGIS for Desktop Standard 和 高級版 包含 Microsoft SQL Server Express 的安裝程序。這些軟件產品還包括支持 SQL Server Express 中 ArcSDE 地理數據庫的 ArcSDE 功能,最多可同時支持三個桌面用戶。
從 ArcGIS 9.3 開始,ArcGIS Engine 包含 SQL Server Express 的安裝程序。對於用於編輯地理數據庫的 ArcGIS Engine 應用程序,ArcGIS Engine 的可選 Geodatabase Update 擴展模塊是必需的模塊。
Microsoft 對 SQL Server Express 的使用做出了限制,要求只能使用一個 CPU(或套接字中的內核)和大小為 1GB 的 RAM。SQL Server 2005 Express 或 SQL Server 2008 Express 數據庫最大只能為 4GB。SQL Server 2008 Express R2 數據庫最大為 10GB。(有關具體實施時的實例大小限制的特定信息,請參閱 Esri 許可協議。)
在 ArcGIS for Desktop Standard 和 高級版 中,可通過 ArcCatalog 應用程序使用 SQL Server Express 全面管理 ArcSDE 地理數據庫。這樣,一次就可為多個用戶提供全面的 ArcSDE 地理數據庫功能。可在 ArcCatalog 中或目錄窗口中設置和管理這些 ArcSDE 地理數據庫。不需要具有額外的軟件或數據庫管理方面的專業知識。
ArcGIS for Server Workgroup 還包括 ArcSDE 對 SQL Server Express 的支持。使用此級別的 ArcSDE,通過使用 SQL Server Express,最多可同時支持 10 個 Windows Desktop 用戶和編輯人員(ArcGIS for Desktop Basic、標准版、高級版、自定義 ArcGIS Engine 應用程序、AutoCAD、MicroStation 等的用戶),並可支持任意數量的來自 Web 應用程序的額外服務器連接。(有關實現時所需的連接數量的特定信息,請參見許可協議。)
對於 ArcGIS for Server Workgroup,您可使用 ArcGIS for Desktop Standard 或 高級版 在 ArcCatalog 中或目錄窗口中創建和管理 SQL Server Express 的 ArcSDE 地理數據庫。不需要具有額外的數據庫管理方面的專業知識。
ArcGIS for Server 中包含完整的企業級 ArcSDE 技術,未做任何限制。您仍可針對 Oracle、SQL Server、PostgreSQL、IBM DB2 和 IBM Informix 運行傳統的 ArcSDE 技術。企業服務器級別的 ArcSDE 支持可以擴展為任意大小的數據庫以及任意數量的用戶,並可在任意大小和配置的計算機上運行。使用 ArcGIS for Server,您可以提供您自己的 DBMS 許可,以便使用此級別的 ArcSDE。選項包括以下內容:
- Oracle
- Microsoft SQL Server
- IBM Informix
- IBM DB2
- PostgreSQL
DBMS 通常由數據庫管理員 (DBA) 進行管理。
| 您不必針對 SQL Server Express 監視和管理內存和 CPU 的使用情況。對於單個 CPU,SQL Server Express 軟件會自動將計算機的使用限制在 1 GB 的 RAM,並且數據庫大小為 4GB 或 10GB,這取決於您所使用的 SQL Server Express 版本。 |
| 與 Microsoft Access 數據庫不同,SQL Server Express 的性能不會隨着數據庫大小接近其上限值而有所降低。 |
| ArcSDE for SQL Server Express 作為 ArcGIS for Desktop Standard 和 高級版 的一部分免費提供。如果您選擇安裝 SQL Server Express,您就可以使用 ArcCatalog 管理 SQL Server Express 數據庫。 |
| 安裝 ArcGIS for Server Workgroup 時,可以安裝和使用 SQL Server Express。安裝 SQL Server Express 后,您便可以在 ArcGIS for Desktop Standard 或 高級版 級別許可中使用 ArcCatalog 來管理工作組服務器的 SQL Server Express 數據庫。 |
| 這些不同的級別使得用戶能夠針對任意數量的用戶(無論數量多少)充分利用 ArcSDE 地理數據庫。這樣,組織將獲得一個可擴展的數據架構,這樣的數據架構既適用於組織的單用戶系統也適用於其大型企業系統。 |
