注:本文參考ArcMap官方文檔整理而成
地理數據庫是用於保存數據集集合的“容器”。有以下三種類型:
- 文件地理數據庫 - 在文件系統中以文件夾形式存儲。每個數據集都以文件形式保存,該文件大小最多可擴展至 1 TB。建議使用文件地理數據庫而不是個人地理數據庫。
- 個人地理數據庫 - 所有的數據集都存儲於 Microsoft Access 數據文件內,該數據文件的大小最大爲 2 GB。
- 企業級地理數據庫 - 也稱爲多用戶地理數據庫,在大小和用戶數量方面沒有限制。這種類型的數據庫使用 Oracle、Microsoft SQL Server、IBM DB2、IBM Informix 或 PostgreSQL 存儲於關係數據庫中。
關鍵特徵 | 企業級地理數據庫 | 文件地理數據庫 | 個人地理數據庫 |
---|---|---|---|
說明 | 在關係數據庫中以表的形式保存的各種類型的 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 Desktop Basic、Desktop Standard 和 Desktop Advanced 的所有用戶可免費獲取這兩種地理數據庫。單用戶可以對文件地理數據庫和個人地理數據進行編輯,這兩種地理數據庫不支持地理數據庫版本管理。使用文件地理數據庫,如果要在不同的要素數據集、獨立要素類或表中進行編輯,則可以同時存在多個編輯器。
文件地理數據庫是 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 工作同時訪問這些地理數據庫。
企業級地理數據庫
如果需要一種多位用戶可同時編輯和使用的大型多用戶地理數據庫,則企業級地理數據庫可提供一種極佳的解決方案。新增的功能可用於管理共享式多用戶地理數據庫和支持多種基於版本的關鍵性 GIS 工作流。從而使利用貴組織企業關係數據庫的能力成爲企業級地理數據庫的一項重要優勢。
企業級地理數據庫適用於多種 DBMS 存儲模型(IBM DB2、Informix、Oracle、PostgreSQL 和 SQL Server)。企業級地理數據庫使用範圍廣泛,主要適用於個人、工作組、部門和企業環境。它們充分利用 DBMS 的基礎架構以支持以下內容:
- 超大型連續 GIS 數據庫
- 許多併發用戶
- 長事務和版本化工作流
- 關係數據庫支持對 GIS 的數據管理(提供關係數據庫的優勢,以實現可擴展性、可靠性、安全性、備份、完整性,等等)
- 所有受支持 DBMS(Oracle、SQL Server、PostgreSQL、Informix 和 DB2)中的空間 SQL 類型
- 可滿足大量用戶使用的高性能
通過許多大型地理數據庫的安裝啓用,我們發現在將 GIS 數據所需的大型二進制對象移入和移出表格時 DBMS 的效率極高。此外,與基於文件的 GIS 數據集相比,GIS 數據庫的容量更大且支持的用戶數量也更多。
ArcSDE 技術可對 DBMS 事務框架進行長事務管理和短事務管理
企業數據庫中,ArcSDE 技術的主要角色之一就是支持每個 DBMS 中的地理數據庫版本管理框架。
絕大多數情況下,GIS 中的單個編輯事務可能涉及對多個表中的多個行進行更改。例如,更新宗地可能需要更改面的表示,並更改相應的邊界線和宗地拐角。此外,還必須更新這些要素中每個要素的屬性記錄。此編輯操作需要對多個表中的多條記錄進行更改。在這些情況下,用戶希望將此編輯集合視爲單個事務。提交或回滾這些更改時,會將它們視爲一個統一的操作來進行管理。
同時,用戶希望能夠在一個編輯會話中撤消和重做單個編輯操作。爲了使這種情況變得更爲複雜,可能需要在與中央共享數據庫斷開連接的系統中執行編輯操作。
而且,在這些專門化的 GIS 數據維護過程中,GIS 數據庫必須持續保持對日常操作可用,而在這些日常操作中,每位用戶都有可能獲取共享 GIS 數據庫的個人視圖或狀態。
通過使用一種稱爲版本管理的方法,企業級地理數據庫支持在多用戶環境下對這些數據管理情景及許多其他數據管理情景進行管理和更新。在版本管理這種機制下,所有的數據庫更改都作爲表中的行進行記錄。例如,每次更新某一行中的某個值時,舊值即會失效,並會新增一個更新行。
這樣,通過將更改信息以增量記錄的方式存儲在數據庫中,ArcSDE 技術就能在簡單 DBMS 事務框架中管理複雜的高級 GIS 事務。
ArcSDE 使用版本的元數據來隔離多個編輯會話、支持複雜事務、共享複本、同步多個數據庫之間的內容、執行自動存檔並支持歷史查詢。
ArcGIS 中如何包含 ArcSDE 技術?
過去,ArcSDE 作爲單獨的 Esri 產品進行銷售。從 ArcGIS 9.2 開始,ArcSDE 技術成爲 ArcGIS 內含的功能,不再單獨提供。ArcSDE 技術已集成到了 ArcGIS Desktop、ArcGIS Engine 和 ArcGIS Server 中,以便用戶能夠在其組織內擴展基於 DBMS 的地理數據庫。
從 ArcGIS 9.2 開始,ArcGIS Desktop Standard 和 Desktop Advanced 包含 Microsoft SQL Server Express 的安裝程序。這些軟件產品還包括支持 SQL Server Express 中企業級地理數據庫的 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 Desktop Standard 和 Desktop Advanced 中,可通過 ArcCatalog 應用程序使用 SQL Server Express 全面管理企業級地理數據庫。這樣,一次就可爲多個用戶提供全面的企業級地理數據庫功能。可在 ArcCatalog 中或目錄窗口中搭建和管理這些企業級地理數據庫。不需要具有額外的軟件或數據庫管理方面的專業知識。
ArcGIS Enterprise Workgroup 還包括 ArcSDE 對 SQL Server Express 的支持。使用此級別的 ArcSDE,通過使用 SQL Server Express,最多可同時支持 10 個 Windows Desktop 用戶和編輯人員(ArcGIS Desktop Basic、Desktop Standard、Desktop Advanced、自定義 ArcGIS Engine 應用程序、AutoCAD、MicroStation 等的用戶),並可支持任意數量的來自 Web 應用程序的額外服務器連接。(有關實現時所需的連接數量的特定信息,請參見許可協議。)
對於 ArcGIS Enterprise Workgroup,您可使用 ArcGIS Desktop Standard 或 Desktop Advanced 在 ArcCatalog 中或目錄窗口中創建和管理 SQL Server Express 的企業級地理數據庫。不需要具有額外的數據庫管理方面的專業知識。
ArcGIS Server 中包含完整的企業級 ArcSDE 技術,未做任何限制。您仍可針對 Oracle、SQL Server、PostgreSQL、IBM DB2 和 IBM Informix 運行傳統的 ArcSDE 技術。企業服務器級別的 ArcSDE 支持可以擴展爲任意大小的數據庫以及任意數量的用戶,並可在任意大小和配置的計算機上運行。使用 ArcGIS 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 Desktop Standard 和 Desktop Advanced 的一部分免費提供。如果您選擇安裝 SQL Server Express,您就可以使用 ArcCatalog 管理 SQL Server Express 數據庫。 |
安裝 ArcGIS Enterprise Workgroup 時,可以安裝和使用 SQL Server Express。安裝 SQL Server Express 後,您便可以在 ArcGIS Desktop Standard 或 Desktop Advanced 級別許可中使用 ArcCatalog,以管理工作組服務器的 SQL Server Express 數據庫。 |
這些不同的級別使得用戶能夠針對任意數量的用戶(無論數量多少)充分利用企業級地理數據庫。這樣,組織將獲得一個可擴展的數據架構,這樣的數據架構既適用於組織的單用戶系統也適用於其大型企業系統。 |