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?
Commenti
- Quello che era il prodotto ArcSDE ora si chiama ArcGIS Server Basic ed è disponibile nelle edizioni Workgroup o Enterprise.
Answer
SDE [ArcSDE] può fare riferimento ad almeno due cose: lorganizzazione dei tuoi 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 memorizza solo dati nel database come BLOB e altri tipi SQL nativi. Alcune funzioni del database, come lindicizzazione di testo o XML, vengono utilizzate per migliorare le prestazioni, ma generalmente il database non “sa” che sta servendo dati spaziali. Ci sono solo un mucchio di tabelle, viste e procedure, e sono piene di dati e funzioni.
Con un database abilitato spazialmente, il database È consapevole del fatto che i dati hanno una posizione. Quindi, puoi inserire query sulla posizione direttamente nelle tue istruzioni SQL. Forse questa è una buona cosa per te , dipende davvero da chi utilizza i dati. Se i consumatori di dati parlano correntemente SQL, è fantastico! Se i tuoi consumatori di dati sono fluenti in ArcMap, probabilmente potrebbero interessarsene di meno.
Più recentemente siamo stati in grado di fondere i due, utilizzando SDE per tradurre in un tipo spaziale nativo sottostante. Inoltre, possiamo utilizzare la “connessione diretta” per bypassare il servizio SDE e fare in modo che lapplicazione consumer (ArcMap, ArcGIS server, ecc.) Si connetta direttamente al database. Personalmente ho avuto diversi livelli di successo con i collegamenti diretti.
Vantaggi dellutilizzo di ArcSDE:
- Perfetta integrazione con i client ESRI
- Buone prestazioni
- Alcune funzionalità del database sottostante possono essere esposte (viste spaziali, indici)
Inconvenienti nellutilizzo di SDE:
- Può essere difficile recuperare da dati danneggiati
- La licenza è vincolato al database
- Nessun facile accesso alla geometria senza lutilizzo del software ESRI
Vantaggi di un database abilitato spazialmente:
- Dati facilmente accessibile a qualsiasi client SQL
- I dati possono essere gestiti utilizzando strumenti DB esistenti (backup, ripristino, analisi)
- Formati aperti disponibili
Svantaggi di utilizzando un database abilitato spazialmente:
- I client (software) potrebbero non essere in grado di connettersi direttamente ai tuoi dati e potrebbero dover utilizzare protocolli o esportazioni inefficienti per vederli
- I riferimenti spaziali a volte sono difficili da applicare o mantenere coerenti
- Potrebbe comportare un sovraccarico aggiuntivo di configurazione o gestione
Ho m o esperienza con il semplice SDE, quindi ci sono probabilmente più punti per il database abilitato spazialmente.
Spero che questo aiuti!
Commenti
- Violi la licenza ESRI se accedete ai dati direttamente e non tramite il servizio SDE.
- Nessuna violazione. La connessione diretta ESRI non utilizza alcun servizio SDE (almeno allestremità del server). Inoltre, hanno pubblicato molti articoli sullutilizzo di PostGres, MSSQL e WKT come tipo di archiviazione spaziale durante lutilizzo di SDE che consente di comunicare direttamente con i dati spaziali. E più di una volta ho dovuto ripulire SDE accedendo direttamente ai dati quando si rompeva. Un altro vantaggio dei database abilitati spazialmente è che il database può fare il lavoro piuttosto che portare tutti i dati in un client e fargli fare il lavoro.
- @CrazyEnigma: citazione necessaria.
- ottima descrizione di SDE vs ST Geometry @mwalker Grazie
- re: riferimenti spaziali, penso che sia lopposto. I riferimenti spaziali in PostGIS sono standard e gli SRID sono gli stessi dei codici EPSG per SRS applicabili. Con SDE, almeno a 9.3x, gli SRIDS incorporano estensioni e così via, quindi potresti avere due SRID diversi per lo stesso sistema di riferimento spaziale. Ciò causa problemi se si desidera utilizzare SQL spaziale.
Risposta
Ecco la mia risposta di una riga: Usa SDE quando hai bisogno dellaccesso multiutente ai tuoi dati geospaziali.
Supponiamo che desideri che più utenti modifichino i tuoi dati: usa SDE. Supponiamo che tu voglia fornire dati e consentirne la modifica sul Web: usa SDE. Se sei un piccolo negozio, con un solo addetto al GIS, non usare SDE.
Se sei lunica persona che usa i tuoi dati spaziali, SDE non fa per te. Se non hai bisogno di editing multiutente, SDE non fa per te. Faresti meglio a usare un file GeoDatabase.
Per quanto riguarda i compromessi … SDE non è banale da configurare o gestire. Devi usare un RDBMS.
SDE è pensato per organizzazioni più grandi in cui è necessario un database ma diversi utenti devono accedere e aggiornare / modificare i dati.
Commenti
- Voglio dire che i prodotti Arc sono piuttosto scadenti quando si tratta di ambienti multiutente. Sembra che ci siano molte cose che ' non possono essere fatte mentre le persone sono connesse. Se le prestazioni e un robusto ambiente multiutente sono importanti, deve esserci di meglio lasciare che lRDBMS faccia tutto il lavoro senza coinvolgere alcuni sporchi middleware che rallentano le cose e bloccano tutto. Ma sembra di fantasia devo ammetterlo, la scatola intendo 🙂
- Sono daccordo con Nicklas. Il tuo confronto ha senso nel mondo Arc, ma SDE non è eccezionale con i multiutente. Un RDBMS abilitato spazialmente come PostGIS ha dei vantaggi in questo campo. Hai mai provato a concedere a un utente i diritti su un set di dati SDE che qualcun altro sta visualizzando?
- Sì, ' mi sono imbattuto nel problema che hai ' sta descrivendo con la concessione di privilegi. Non sono sicuro che ' sia ancora un problema poiché ' non ho dovuto amministrare un SDE GDB in un paio danni. Le sovvenzioni non dovrebbero essere bloccate da serrature. In che modo postgres / postgis gestisce lediting multiutente?
Answer
Oggigiorno la maggior parte dei dbs spaziali consente più spazial colonne 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 SDE manca, come sachem degli utenti, replica dei dati, supporto SQL e così via.
ESRI SDEBinary è lesecutore veloce. Se si tratta di ST_GEOMETRY, SDE potrebbe non avere le migliori prestazioni.