¿Cuál es la diferencia entre ArcSDE y las bases de datos habilitadas espacialmente?

28

¿Cuándo desea utilizar ArcSDE (disponible como nivel de licencia básico de ArcGIS Server) en lugar de una base de datos habilitada espacialmente?

¿Cuáles son las compensaciones en ambos lados?

¿Cuáles son los beneficios en ambos lados?

TheSteve0
fuente
Lo que solía ser el producto ArcSDE ahora se llama ArcGIS Server Basic y viene en ediciones Workgroup o Enterprise.
Chris M

Respuestas:

27

SDE [ArcSDE] puede referirse al menos a dos cosas: la organización de sus datos en la base de datos (el esquema SDE) o un servicio que escucha las conexiones de los clientes (el servicio SDE). Generalmente van de la mano: el servicio SDE está vinculado a un esquema SDE en una base de datos.

En su estado "más puro" (o quizás más sucio), SDE maneja todos los cálculos espaciales y solo almacena datos en su base de datos como BLOB y otros tipos de SQL nativos. Algunas funciones de la base de datos, como el texto o la indexación XML, se utilizan para mejorar el rendimiento, pero en general la base de datos no "sabe" que sirve datos espaciales. Solo hay un montón de tablas, vistas y procedimientos, y están llenos de datos y funciones.

Con una base de datos habilitada espacialmente, la base de datos ES consciente de que los datos tienen una ubicación. Por lo tanto, puede colocar consultas de ubicación directamente en sus declaraciones SQL. Quizás esto sea algo bueno para usted, realmente depende de quién esté consumiendo sus datos. Si sus consumidores de datos dominan SQL, ¡es genial! Si sus consumidores de datos tienen fluidez en ArcMap, probablemente no les importe mucho.

Más recientemente, hemos podido combinar los dos, utilizando SDE para traducir a un tipo espacial nativo subyacente. Además, podemos usar la "conexión directa" para omitir el servicio SDE y simplemente hacer que la aplicación del consumidor (ArcMap, servidor ArcGIS, etc.) se conecte directamente a la base de datos. Personalmente, he tenido diferentes niveles de éxito con conexiones directas.

Beneficios de usar ArcSDE:

  • Integración perfecta con clientes ESRI
  • Buen rendimiento
  • Se pueden exponer algunas funciones subyacentes de la base de datos (vistas espaciales, índices)

Inconvenientes para usar SDE:

  • Puede ser difícil de recuperar de datos corruptos
  • La licencia está vinculada a la base de datos.
  • Sin acceso fácil a la geometría sin usar el software ESRI

Beneficios para una base de datos espacialmente habilitada:

  • Datos fácilmente accesibles para cualquier cliente SQL
  • Los datos se pueden administrar utilizando las herramientas de base de datos existentes (copia de seguridad, restauración, análisis)
  • Formatos abiertos disponibles

Inconvenientes al uso de una base de datos espacialmente habilitada:

  • Es posible que los clientes (software) no puedan conectarse directamente a sus datos y que tengan que usar protocolos o exportaciones ineficientes para verlos.
  • Las referencias espaciales a veces son difíciles de aplicar o se mantienen consistentes
  • Podría incurrir en gastos adicionales de configuración o administración

Tengo más experiencia con SDE simple, por lo que es probable que haya más puntos para la base de datos habilitada espacialmente.

¡Espero que esto ayude!

mwalker
fuente
1
Estaría infringiendo las licencias de ESRI si accede a los datos directamente y no a través del servicio SDE.
CrazyEnigma
9
No hay infracción. La conexión directa de ESRI no utiliza el servicio SDE (al menos en el extremo del servidor). Además, han publicado muchos artículos sobre el uso de PostGres, MSSQL y WKT como tipo de almacenamiento espacial mientras usan SDE, lo que le permite comunicarse directamente con los datos espaciales. Y más de una vez tuve que limpiar SDE accediendo a los datos directamente cuando se rompió. Otro beneficio de las bases de datos habilitadas espacialmente es que la base de datos puede hacer el trabajo en lugar de llevar todos los datos a un cliente y hacer que haga el trabajo.
westyvw
3
@CrazyEnigma: cita requerida.
Derek Swingley
gran descripción de SDE vs ST Geometry @mwalker Gracias
CDBrown
2
re: referencias espaciales, creo que es todo lo contrario. Las referencias espaciales en PostGIS son estándar y los SRID son los mismos que los códigos EPSG para los SRS aplicables. Con SDE, al menos a 9.3x, los SRID incorporan extensiones, etc., por lo que puede tener dos SRID diferentes para el mismo sistema de referencia espacial. Esto causa problemas si desea utilizar SQL espacial.
DavidF
3

Aquí está mi respuesta de una línea: use SDE cuando necesite acceso multiusuario a sus datos geoespaciales.

Digamos que desea que varios usuarios editen sus datos: use SDE. Supongamos que desea servir datos y permitir que se editen en la web: use SDE. Si eres una tienda pequeña, con un tipo de SIG, no uses SDE.

Si eres la única persona que usa tus datos espaciales, SDE no es para ti. Si no necesita edición multiusuario, SDE no es para usted. Es mejor usar un archivo GeoDatabase.

En cuanto a las compensaciones ... SDE no es trivial para configurar o administrar. Tienes que usar un RDBMS.

SDE está destinado a organizaciones más grandes donde se necesita una base de datos, pero varios usuarios necesitan acceder y actualizar / editar datos.

Derek Swingley
fuente
1
Quiero decir que los productos Arc son bastante malos cuando se trata de entornos de múltiples usuarios. Parece que hay muchas cosas que no se pueden hacer mientras las personas están conectadas. Si el rendimiento y el robusto entorno multiusuario es importante, tiene que ser mejor dejar que el RDBMS haga todo el trabajo sin involucrar a algún software intermedio sucio, simplemente ralentizando las cosas y bloqueando todo. Pero parece elegante, tengo que admitir, la caja que quiero decir :-)
Nicklas Avén
2
Estoy de acuerdo con Nicklas. Su comparación tiene sentido dentro del mundo Arc, pero SDE no es excelente con usuarios múltiples. Un RDBMS habilitado espacialmente como PostGIS tiene ventajas en este campo. ¿Alguna vez ha tratado de otorgar derechos de usuario a un conjunto de datos SDE que alguien más está viendo?
DavidF
Sí, me he encontrado con el problema que estás describiendo al otorgar privilegios. No estoy seguro si sigue siendo un problema, ya que no he tenido que administrar un SDE GDB en un par de años. Las subvenciones no deben ser bloqueadas por cerraduras. ¿Cómo trata postgres / postgis con la edición multiusuario?
Derek Swingley
0

Hoy en día, la mayoría de los dbs espaciales permiten múltiples columnas espaciales en una tabla, mientras que SDE se adhiere a una columna espacial para una tabla. También tienen datos espaciales integrados con sus herramientas de gestión de datos flexibles y potentes, que SDE carece, como sachems de usuario, replicación de datos, soporte de SQL, etc.

ESRI SDEBinary es el de rendimiento rápido. Si se trata de ST_GEOMETRY, SDE puede no tener el mejor rendimiento.

Lugar - Zilla
fuente