Qual è la differenza tra ArcSDE e database abilitati spazialmente?


28

Quando vorresti utilizzare ArcSDE (disponibile come livello di licenza ArcGIS Server Basic) rispetto a un database abilitato spazialmente?

Quali sono i compromessi su entrambi i lati?

Quali sono i vantaggi su entrambi i lati?


Quello che era il prodotto ArcSDE è ora chiamato ArcGIS Server Basic ed è disponibile nelle edizioni Workgroup o Enterprise.
Chris M,

Risposte:


27

SDE [ArcSDE] può fare riferimento ad almeno due cose: l'organizzazione dei dati nel database (lo schema SDE) o un servizio in ascolto delle connessioni dai client (il servizio SDE). Generalmente vanno di pari passo: il servizio SDE è associato a uno schema SDE in un database.

Nel suo stato "più puro" (o forse più sporco), SDE gestisce tutti i calcoli spaziali e archivia i dati nel database solo come BLOB e altri tipi SQL nativi. Alcune funzioni del database, come l'indicizzazione di testo o XML, vengono utilizzate per migliorare le prestazioni, ma in genere il database non "sa" che sta servendo dati spaziali. C'è solo un mucchio di tabelle, viste e procedure, e sono pieni di dati e funzioni.

Con un database abilitato spazialmente, il database È consapevole che i dati hanno una posizione. Quindi, puoi inserire le query sulla posizione direttamente nelle tue istruzioni SQL. Forse questa è una buona cosa per te, dipende davvero da chi sta consumando i tuoi dati. Se i tuoi utenti di dati parlano fluentemente SQL, è fantastico! Se i tuoi utenti di dati parlano fluentemente ArcMap, probabilmente non se ne cureranno di meno.

Più recentemente siamo stati in grado di fondere i due, usando SDE per tradurre in un tipo spaziale nativo sottostante. Inoltre, possiamo usare la "connessione diretta" per bypassare il servizio SDE e fare in modo che l'applicazione consumer (ArcMap, server ArcGIS, ecc.) Si colleghi direttamente al database. Personalmente ho avuto diversi livelli di successo con connessioni dirette.

Vantaggi dell'uso di ArcSDE:

  • Perfetta integrazione con i client ESRI
  • Buona performance
  • Alcune funzionalità del database sottostante possono essere esposte (viste spaziali, indici)

Svantaggi dell'utilizzo di SDE:

  • Può essere difficile recuperare da dati danneggiati
  • La licenza è legata al database
  • Nessun facile accesso alla geometria senza l'utilizzo del software ESRI

Vantaggi di un database abilitato spazialmente:

  • Dati facilmente accessibili a qualsiasi client SQL
  • I dati possono essere gestiti utilizzando gli strumenti DB esistenti (backup, ripristino, analisi)
  • Formati aperti disponibili

Svantaggi dell'utilizzo di un database abilitato spazialmente:

  • I client (software) potrebbero non essere in grado di connettersi direttamente ai tuoi dati e potrebbe essere necessario utilizzare protocolli o esportazioni inefficienti per vederli
  • I riferimenti spaziali a volte sono difficili da applicare o mantenere coerenti
  • Potrebbe comportare costi aggiuntivi di configurazione o gestione

Ho più esperienza con il semplice SDE, quindi ci sono probabilmente più punti per il database abilitato spazialmente.

Spero che sia di aiuto!


1
Violi la licenza ESRI se accedi ai dati direttamente e non tramite il servizio SDE.
CrazyEnigma,

9
Non vi è alcuna violazione. La connessione diretta ESRI non utilizza alcun servizio SDE (almeno all'estremità del server). Inoltre, hanno pubblicato molti articoli sull'utilizzo di PostGres, MSSQL e WKT come tipo di archiviazione spaziale durante l'utilizzo di SDE che consente di comunicare direttamente con i dati spaziali. E più di una volta ho dovuto ripulire SDE accedendo ai dati direttamente quando si è rotto. Un altro vantaggio dei database abilitati spazialmente è che il database può fare il lavoro piuttosto che portare tutti i dati in un client e farlo funzionare.
Westyvw,

3
@CrazyEnigma: citazione necessaria.
Derek Swingley il

grande descrizione di SDE vs ST Geometry @mwalker Thanks
CDBrown

2
ri: riferimenti spaziali, penso che sia l'opposto. I riferimenti spaziali in PostGIS sono standard e gli SRID sono gli stessi dei codici EPSG per SRS applicabile. Con SDE, almeno a 9.3x, gli SRID incorporano le estensioni, ecc. Quindi potresti avere due SRID diversi per lo stesso sistema di riferimento spaziale. Ciò causa problemi se si desidera utilizzare l'SQL spaziale.
DavidF

3

Ecco la mia risposta a una riga: utilizzare SDE quando è necessario l'accesso multiutente ai dati geospaziali.

Supponiamo che tu voglia che più utenti modifichino i tuoi dati: usa SDE. Supponiamo che tu voglia fornire i dati e consentirne la modifica sul Web: usa SDE. Se sei un piccolo negozio, con un ragazzo GIS, non usare SDE.

Se sei l'unica persona che utilizza i tuoi dati spaziali, SDE non fa per te. Se non hai bisogno di editing multiutente, SDE non fa per te. Stai meglio usando un file GeoDatabase.

Per quanto riguarda i compromessi ... SDE non è banale da configurare o gestire. Devi usare un RDBMS.

SDE è pensato per le organizzazioni più grandi in cui è necessario un database ma diversi utenti devono accedere e aggiornare / modificare i dati.


1
Voglio dire, i prodotti Arc sono piuttosto male quando si tratta di ambienti multi-usr. Sembra che ci siano molte cose che non si possono fare mentre le persone sono collegate. Se le prestazioni e il robusto ambiente multiutente sono importanti, dovrebbe essere meglio lasciare che RDBMS faccia tutto il lavoro senza coinvolgere alcuni middleware sporchi semplicemente rallentando le cose e bloccando tutto. Ma sembra bello che devo ammetterlo, la scatola intendo :-)
Nicklas Avén

2
Sono d'accordo con Nicklas. Il tuo confronto ha senso nel mondo Arc, ma SDE non è eccezionale con i multi utenti. Un RDBMS abilitato spazialmente come PostGIS presenta vantaggi in questo campo. Hai mai provato a concedere i diritti di un utente a un set di dati SDE che qualcun altro sta visualizzando?
DavidF

Sì, ho riscontrato il problema che stai descrivendo con la concessione dei privilegi. Non sono sicuro che sia ancora un problema in quanto non ho dovuto amministrare un GDB SDE da un paio d'anni. Le sovvenzioni non devono essere bloccate da blocchi. In che modo postgres / postgis gestiscono l'editing multiutente?
Derek Swingley,

0

Oggi la maggior parte dei dbs spaziali consente più colonne spaziali in una tabella, mentre SDE si attacca a una colonna spaziale per una tabella. Hanno anche dati spaziali integrati con i loro strumenti di gestione dei dati flessibili e potenti, di cui manca SDE, come sachems dell'utente, replica dei dati, supporto SQL e così via.

ESRI SDEBinary è l'esecutore veloce. Se si tratta di ST_GEOMETRY, SDE potrebbe non avere le migliori prestazioni.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.