ArcSDE和启用空间的数据库之间有什么区别?


28

您何时要使用ArcSDE(可作为ArcGIS Server Basic许可级别使用)而不是使用空间启用的数据库?

双方的权衡是什么?

双方都有什么好处?


以前称为ArcSDE的产品现在称为ArcGIS Server Basic,并提供Workgroup或Enterprise版本。
克里斯M,2010年

Answers:


27

SDE [ArcSDE]至少可以指两件事:数据库中数据的组织(SDE模式)或侦听来自客户端的连接的服务(SDE服务)。通常,它们是紧密相连的-SDE服务绑定到数据库中的SDE模式。

在其“最纯”(或最脏)状态下,SDE处理所有空间计算,并且仅将数据作为BLOB和其他本机SQL类型存储在数据库中。一些数据库功能(例如文本或XML索引)用于提高性能,但是通常数据库并不“知道”它正在提供空间数据。只有一堆表,视图和过程,它们充满了数据和功能。

对于具有空间启用功能的数据库,数据库可以识别数据所在的位置。因此,您可以将位置查询直接放入SQL语句中。也许这对您来说是一件好事,它实际上取决于谁在使用您的数据。如果您的数据使用者精通SQL,那就太好了!如果您的数据使用者精通ArcMap,他们可能会不太在意。

最近,我们已经能够通过使用SDE转换为基础的本机空间类型来融合两者。此外,我们可以使用“直接连接”绕过SDE服务,而仅将使用者应用程序(ArcMap,ArcGIS Server等)直接连接到数据库。我个人在直接联系方面取得了不同程度的成功。

使用ArcSDE的好处:

  • 与ESRI客户的无缝集成
  • 很棒的表演
  • 可以公开一些基础数据库功能(空间视图,索引)

使用SDE的缺点:

  • 可能很难从损坏的数据中恢复
  • 许可证绑定到数据库
  • 不使用ESRI软件就无法轻松访问几何

启用空间的数据库的好处:

  • 任何SQL客户端均可轻松访问的数据
  • 可以使用现有的数据库工具(备份,还原,分析)来管理数据
  • 提供开放格式

使用空间启用数据库的缺点:

  • 客户端(软件)可能无法直接连接到您的数据,并且可能必须使用效率低下的协议或导出才能查看数据
  • 空间参考有时难以应用或保持一致
  • 可能会产生额外的配置或管理开销

我对普通SDE有更多的经验,因此空间启用的数据库可能会有更多的要点。

希望这可以帮助!


1
如果直接访问数据而不通过SDE服务访问数据,则将侵犯ESRI许可。
CrazyEnigma

9
没有侵权。ESRI直接连接不使用SDE服务(至少在服务器端)。此外,他们已经发表了许多文章,有关使用PostGres,MSSQL和WKT作为空间存储类型,同时使用SDE允许您直接与空间数据进行通信。再有一次,我不得不通过在损坏时直接访问数据来清理SDE。启用空间的数据库的另一个好处是,数据库可以完成工作,而不是将所有数据放入客户端并让其完成工作。
westyvw 2010年

3
@CrazyEnigma:需要引用。
Derek Swingley,2010年

SDE与ST几何的完美结合@mwalker谢谢
CDBrown 2011年

2
回复:空间参考,我认为是相反的。PostGIS中的空间参考是标准的,SRID与适用SRS的EPSG代码相同。使用SDE(至少为9.3x)时,SRIDS会合并范围等。因此,对于同一空间参考系统,您可能会有两个不同的SRID。如果要使用空间SQL,则会导致问题。
DavidF 2011年

3

这是我的一句话答案:当您需要多用户访问地理空间数据时,请使用SDE。

假设您希望多个用户编辑您的数据:使用SDE。假设您要提供数据并允许在Web上对其进行编辑:请使用SDE。如果您是一家小商店,只有一个GIS员工,请不要使用SDE。

如果您是唯一使用空间数据的人,那么SDE不适合您。如果您不需要多用户编辑,那么SDE不适合您。您最好使用文件GeoDatabase。

至于权衡... SDE的设置或管理并非易事。您必须使用RDBMS。

SDE适用于需要一个数据库但需要多个用户访问和更新/编辑数据的大型组织。


1
我的意思是,对于多用户环境,Arc产品非常糟糕。在人们连接时,似乎有很多事情无法完成。如果性能和强大的多用户环境很重要,那么最好让RDBMS完成所有工作,而不涉及一些肮脏的中间件,而只是放慢速度并锁定一切。但是我不得不承认这看起来很花哨,我的意思是:-)
NicklasAvén2011年

2
我同意尼克拉斯。在Arc世界中,您的比较很有意义,但是SDE对于多用户而言效果不佳。PostGIS等具有空间功能的RDBMS在此领域具有优势。您是否曾经尝试向其他人正在查看的SDE数据集授予用户权限?
DavidF 2011年

是的,我遇到了您所描述的授予特权的问题。不确定是否仍然存在问题,因为几年来我不必管理SDE GDB。授予不应被锁阻止。postgres / postgis如何处理多用户编辑?
Derek Swingley 2011年

0

如今,大多数空间数据库都允许在一个表中包含多个空间列,而SDE会在一个表中坚持一个空间列。他们还将空间数据与SDE所缺乏的灵活而强大的数据管理工具集成在一起,例如用户sachems,数据复制,SQL支持等。

ESRI SDEBinary是表现最好的人。如果涉及到ST_GEOMETRY,则SDE可能没有最佳性能。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.