更新时间:2023-11-23 19:30
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,UNIX,Linux等多种操作系统。
为什么使用 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)类型将会被默认使用。
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),通过这些接口用户定制的应用程序也可以完全访问底层的空间数据表。
这种灵活性意味着一个开放、可伸缩的解决方案;给用户更多的选择;以及更好的互操作性。
ArcSDE支持高性能的空间数据的管理,它支持的数据库包括:
Oracle(带压缩二进制)
Oracle(带Locator和Spatial)
微软SQL Server(带压缩二进制)
IBM DB2(带Spatial Extender)
IBM Informix(带Spatial Datablade)
ArcSDE是为了解决DBMS的多样性和复杂性而存在的。ArcSDE的体系结构给用户提供了巨大的灵活性。它允许用户能够自由地选择DBMS来存储空间数据。