ArcSDE

ArcGIS的空間數據引擎

ArcSDE,即數據通路,是ArcGIS的空間數據引擎,它是在關係資料庫管理系統(RDBMS)中存儲和管理多用戶空間資料庫的通路。從空間數據管理的角度看,ArcSDE是一個連續的空間數據模型,藉助這一空間數據模型,可以實現用RDBMS管理空間資料庫。在RDBMS中融入空間數據后,ArcSDE可以提供空間和非空間數據進行高效率操作的資料庫服務。ArcSDE採用的是客戶/伺服器體系結構,所以眾多用戶可以同時併發訪問和操作同一數據。ArcSDE還提供了應用程序介面,軟體開發人員可將空間數據檢索和分析功能集成到自己的應用工程中去。

介紹


ArcSDE(SDE即Spatial Database Engine,空間資料庫引擎)是ArcGIS與關係資料庫之間的GIS通道。它允許用戶在多種數據管理系統中管理地理信息,並使所有的ArcGIS應用程序都能夠使用這些數據。 ArcSDE是多用戶ArcGIS系統的一個關鍵部件。它為DBMS提供了一個開放的介面,允許ArcGIS在多種資料庫平台上管理地理信息。這些平台包括Oracle,Oracle with Spatial/Locator,Microsoft SQL Server, IBM DB2,和Informix。如果你的ArcGIS需要使用一個可以被大量用戶同步訪問並編輯的大型資料庫,ArcSDE為你提供必要的功能。通過ArcSDE你的ArcGIS可以在DBMS中輕而易舉地管理一個共享的、多用戶的空間資料庫。

具體功能


1.高性能的DBMS通道
ArcSDE是多種DBMS的通道。它本身並非一個關係資料庫或數據存儲模型。它是一個能在多種DBMS平台上提供高級的、高性能的GIS數據管理的介面。
2.開放的DBMS支持
ArcSDE允許你在多種DBMS中管理地理信息:Oracle, Oracle with Spatial or Locator, Microsoft SQL Server, Informix, 以及IBM DB2.
3.多用戶
ArcSDE為用戶提供大型空間資料庫支持,並且支持多用戶編輯。
4.連續、可伸縮的資料庫
ArcSDE可以支持海量的空間資料庫和任意數量的用戶,直至DBMS的上限。
5.GIS工作流和長事務處理
GIS中的數據管理工作流,例如多用戶編輯、歷史數據管理、check-out/check-in以及鬆散耦合的數據複製等都依賴於長事務處理和版本管理。ArcSDE為DBMS提供了這種支持。
6.豐富的地理信息數據模型
ArcSDE保證了存儲於DBMS中的矢量和柵格幾何數據的高度完整性。這些數據包括,矢量和柵格幾何圖形、支持x, y, z和x, y, z, m的坐標、曲線、立體、多行柵格、拓撲、網路、註記、元數據、空間處理模型、地圖、圖層,等等。
7.靈活的配置
ArcSDE通道可以讓用戶在客戶端應用程序內或跨網路、跨計算機地對應用伺服器進行多種多層結構的配置方案。ArcSDE支持Windows,UNIXLinux等多種操作系統。

使用原因


為什麼使用 ArcSDE ?
ArcSDE能夠讓同樣功能在所有的DBMS上得到實現。儘管所有的關係資料庫都支持SQL,並能使用相似的方法處理簡單的SQL,但是不同資料庫的資料庫伺服器實現細節卻有著顯著的差別。這些差別包括性能和索引、支持的數據類型、集成管理工具和複雜查詢的執行;還包括在DBMS中對空間數據類型的支持。
標準的SQL並不支持空間數據。 ISO SQL/MM Spatial和OGC的簡單要素SQL規範擴展了SQL,並且為不同的矢量數據定義了標準的SQL支持。 DB2和Informix直接支持這些SQL類型。Oracle使用的是自己的標準,其空間類型系統是核心資料庫系統上的一個獨立的、可選擴展。而微軟SQL Server不提供空間類型的支持。ArcSDE不但靈活地支持了每個DBMS提供的獨特功能,而且能為底層DBMS提供它們所不具備的功能的支持。

整合統一


許多GIS用戶希望他們的GIS能夠與其機構的IT策略很好結合。他們希望他們的GIS系統符合IT標準;GIS數據能夠作為整個機構的完整數據的一部分來使用;並且數據的安全性能夠得到保證,數據既開放易用又可以控制其訪問許可權。這些都是DBMS的優勢所在,也正是GIS用戶所需要的。ArcSDE和geodatabase的主要角色即是實現GIS和DBMS的完美結合。
擴大你的 GIS 系統規模
Geodatabase可以是小型的、單用戶的資料庫,也可以大到企業級、多用戶的資料庫。ArcSDE的首要任務就是保證你的geodatabase能夠通過任意網路讓大量用戶所共享、編輯和使用,並可任意調整geodatabase的大小以滿足特定的需要。
空間數據存儲
ArcSDE在DBMS中並沒有對數據管理使用任何的額外手段,相反,它卻是充分利用了一般DBMS和SQL數據類型的所有優點。
ArcSDE保證能夠訪問多種DBMS,使用每種DBMS所支持的標準SQL類型來管理數據,並且支持所有的空間數據類型(包括要素、柵格、拓撲、網路、地形、測量數據、表格數據,以及位置數據,例如地址、模型和元數據),而無需用戶考慮DBMS的底層實現。
ArcSDE能夠使用DBMS所提供的標準的SQL來存儲數據,並且能夠完全支持每種DBMS所擴展的――如果有――用於空間數據類型的SQL。如果DBMS沒有任何擴展的空間數據類型支持,二進位大對象(binary large object)類型將會被默認使用。
DBM-S空間數據存儲類型RDBMS欄位類型備註
SQL ServerArcSDE Compressed BinaryImage微軟的SQL Server沒有擴展對空間數據類型的支持。但是它們的二進位類型,即所謂的Image欄位,可以完全管理複雜的二進位數據流。在普通的和高級的GIS應用中,都需要這些二進位流來表達複雜的線要素和多邊形要素。實踐證明,SQL Server的二進位類型同其它企業級RDBMS一樣,具有穩健、靈活和高效的優點。
OGC Well-Known BinaryImageOGC Simple Features類型
IBM DB2Spatial Extender-Geometry ObjectST_GeometryIBM的兩個RDBMS:DB2和Informix,都擴展了對矢量空間數據類型的支持。這些類型的擴展與ESRI保持了一致,並且是基於ISO SQL MM for Spatial規範的。
InformixSpatial Database-Geometry ObjectST_Geometry
Oracle多種選擇:1.ArcSDE Compressed BinaryLong Raw這是ArcSDE默認的存儲機制,而且是被最普遍使用的數據存儲機制。它的特點是高效、靈活、穩定。
2.LOBLOB一些用戶採用LOB是為了使用Oracle Replication Services
3.OGC Well-Known BinaryLOBOGC Simple Features類型
Oracle With Spatial Option/Locator OptionOracle Spatial Geometry TypeSDO_Geometry除了使用ArcSDE Compressed Binary和LOB類型外,Oracle Spatial的用戶也可以選擇使用SDO_Geometry類型。用戶可以逐表格地判斷是否使用這種類型,這樣可以讓他們對每個單獨的數據集都能採用最佳的存儲方案。
ST_Geometry 和 SDO_Geometry 實際上都歸諸於一系列的點、線、面類型。
訪問多源GIS數據:GIS數據管理與採集需要的不僅僅是一個單用戶的大型資料庫。對任何一個GIS系統來說,更重要的是要能夠同步地訪問多種資料庫、多種格式的文件、多種DBMS以及網路。ArcSDE能夠幫助用戶很好地滿足這種關鍵的GIS需求,同時又不會使用戶受制於某一DBMS或某種數據管理解決方案。
多用戶geodatabase技術的基本原理:ArcSDE是geodatabase應用程序操縱geodatabase的一個通道,並且讓geodatabase能夠在關係資料庫中準確地表達。Geodatabase應用軟體提供高級的數據處理功能,而ArcSDE保證了在多種DBMS體系中有效地存儲和訪問數據。

橋樑關係


對空間數據的管理職責是由GIS軟體和常規DBMS軟體所共同承擔的。某些空間數據的管理功能,例如磁碟存儲、屬性類型定義、查詢處理,以及多用戶事務處理等,是由DBMS來完成的。當然一些DBMS引擎本身也擴展了對空間數據的支持,他們具備索引和搜索功能。
GIS軟體負責為特定的DBMS提供各種地理數據的表達。從實際效用上看,DBMS是被作為一個空間數據的實現機制。
ArcSDE是基於多層體系結構的(應用和存儲)。數據的存儲和提取由存儲層(DBMS)實現,而高端的數據整合和數據處理功能由應用層(ArcGIS)提供。
ArcSDE支持ArcGIS應用層並提供DBMS通道技術,使得空間數據可以存儲於多種DBMS中。ArcSDE用於高效地存儲、索引和訪問維護在DBMS中的矢量、柵格、元數據及其它空間數據。
ArcSDE同時能保證所有的GIS功能可用,而無需考慮底層的DBMS。使用ArcSDE,用戶在DBMS中即可有效管理他們的地理數據資源。
ArcSDE使用DBMS支持的數據類型,以表格的形式管理底層的空間數據存儲,並可使用SQL在DBMS中訪問這些數據。
ArcSDE同時也提供了開放的客戶端開發介面(C API和Java API),通過這些介面用戶定製的應用程序也可以完全訪問底層的空間數據表。
這種靈活性意味著一個開放、可伸縮的解決方案;給用戶更多的選擇;以及更好的互操作性。
高性能
支持海量數據
支持長事務處理和版本管理
支持所有的GIS數據(矢量、柵格、測量、地形、元數據及其它)
支持流行的DBMS
支持多用戶

資料庫


ArcSDE支持高性能的空間數據的管理,它支持的資料庫包括:
Oracle(帶壓縮二進位)
Oracle(帶Locator和Spatial)
微軟SQL Server(帶壓縮二進位)
IBM DB2(帶Spatial Extender)
IBM Informix(帶Spatial Datablade)
ArcSDE是為了解決DBMS的多樣性和複雜性而存在的。ArcSDE的體系結構給用戶提供了巨大的靈活性。它允許用戶能夠自由地選擇DBMS來存儲空間數據。