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

双方的权衡是什么?

双方都有什么好处?

评论

以前称为ArcSDE的产品现在称为ArcGIS Server Basic,并在Workgroup或Enterprise版本中提供。

#1 楼

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

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

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

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

使用ArcSDE的优点:


与ESRI客户端的无缝集成
良好的性能
可以公开一些底层数据库功能(空间视图) ,索引)

使用SDE的缺点:


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

受益于空间启用的数据库:


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

使用空间数据库的缺点:


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

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

希望这会有所帮助!

评论


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

– CrazyEnigma
2010年7月23日在22:07

没有侵权。 ESRI直接连接不使用SDE服务(至少在服务器端)。此外,他们发表了许多文章,其中介绍了使用PostGres,MSSQL和WKT作为空间存储类型,同时使用SDE允许您直接与空间数据进行通信。甚至在不得不中断数据时直接访问数据来清理SDE之后。具有空间功能的数据库的另一个好处是,数据库可以完成工作,而不是将所有数据放入客户端并让其完成工作。

–westyvw
2010年7月27日,0:09

@CrazyEnigma:需要引用。

–德里克·斯温利(Derek Swingley)
2010年8月7日,下午5:45

SDE vs ST Geometry的详细说明@mwalker谢谢

– CDBrown
2011年1月16日23:48

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

– DavidF
2011年3月30日18:05

#2 楼

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

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

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

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

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

评论


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

–尼克拉斯·阿文(NicklasAvén)
2011-1-13在11:07



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

– DavidF
2011年3月30日14:31在

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

–德里克·斯温利(Derek Swingley)
11 Mar 30 '11 at 18:31

#3 楼

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

ESRI SDEBinary是执行速度最快的工具。如果涉及到ST_GEOMETRY,则SDE可能没有最佳性能。