Quali sono gli equivalenti FOSS a questi prodotti ArcGIS? [chiuso]


49

Sono un utente a lungo termine del software ESRI e ora ho bisogno di utilizzare software gratuito e open source.

Ho letto di OpenLayers, PostgreSQL, PostGIS, GeoServer e MapServer ma non riesco a trovare una buona panoramica che indichi cosa fa ogni prodotto, perché è necessario e come si integrano.

Ad esempio, http://www.osgeo.org/ e http://freegis.org/ elencano entrambi un gruppo di prodotti ma non mi danno abbastanza informazioni per decidere quali sono rilevanti.

In ArcGIS, vorrei utilizzare quanto segue:

  • file geodatabase o ArcSDE geodatabase per l'archiviazione dei dati
  • Desktop ArcMap per modificare i dati e compilare il documento della mappa
  • ArcGIS Server per creare servizi Web
  • API JavaScript del server ArcGIS per creare le mappe dell'utente finale dai servizi Web

Quali sono i prodotti FOSS equivalenti?


4
Le risposte a questa domanda potrebbero fare una grande serie di post di blog :-).
whuber

3
Penso che un articolo "Come iniziare con FOSS4G" sarebbe estremamente utile. La maggior parte delle risorse che ho visto sono state scritte da sviluppatori esperti per sviluppatori esperti, senza una panoramica di alto livello
Stephen Lead,

@whuber Sono d'accordo, dovremmo anche promuovere la prossima conferenza FOSS4G 2011 .
Kirk Kuykendall,

@Kirk Vedo la prospettiva di promuovere qualsiasi cosa - conferenze, software, qualunque cosa - come al di fuori dell'ambito di questo sito e come influenza distruttiva attraverso potenziali conflitti di interesse (o la sua apparizione). Esiste un meccanismo di promozione attraverso la pubblicità sul sito, che è una questione tra gli organizzatori della conferenza e SE. Eventi importanti e degni di nota, tuttavia, sono stati pubblicizzati qui. Forse pubblicare sul nostro blog è la strada da percorrere ...
whuber

1
@whuber, mi dispiace, avrei dovuto elaborare. Una serie di blog su FOSS potrebbe anche promuovere la conferenza FOSS4G. Uno dei motivi per cui suggerisco questo è quello di dare lo stesso tempo a ciò che probabilmente è apparso a molti come promozioni per le conferenze Esri.
Kirk Kuykendall,

Risposte:


63

Per memorizzare i dati , le prime due alternative da menzionare sono PostGIS e SpatiaLite .

  • SpatiaLite è un database SQLite con capacità spaziali, il che significa che è basato su file, compatto e veloce.

  • PostGIS è funzionalità spaziali su un database PostgreSQL. Ciò significa che è molto potente con la capacità di gestire set di dati di grandi dimensioni, query complesse in modo efficiente.

Prima di passare al desktop, è necessario tenere presente che molte attività possono essere eseguite in modo molto efficiente direttamente nel database. La maggior parte delle cose che fai di solito in ArcMap in attesa che vengano visualizzate finestre di dialogo diverse lo farai molte volte più velocemente direttamente con poche righe di codice SQL. Ciò significa che puoi anche archiviare ciò che hai fatto e farlo di nuovo su un altro set di dati molto facilmente semplicemente salvando il tuo codice SQL. Molte delle domande PostGIS qui riguardano come scrivere quelle domande, così puoi avere un'idea di cosa si può fare sfogliando le domande taggate di PostGIS.

Quindi il lato desktop . Esistono molte soluzioni desktop. Penso che sia il momento di ammettere che sul lato desktop ESRI è buono. Come già detto in precedenza, la maggior parte delle attività svolte in ArcMap viene eseguita in modo più approfondito nel database, ma quando si tratta delle attività in cui è necessaria la soluzione desktop ArcMap è valida. Quello che uso è QGIS e, se avessi un budget da spendere, sposterei i costi della licenza ESRI per supportare la correzione degli errori in QGIS. QGIS è un ottimo software che può fare più o meno tutto ciò che ArcMap può fare. Ma forse una o due licenze ArcInfo (in denaro) sono necessarie per lucidarlo. Si può anche dare un'occhiata a Aprire salto , gvSIG , uDIG e altro ancora.

Quando si tratta di servizi Web hai MapServer, GeoServer, TinyOWS e altro ancora.

  • GeoServer è probabilmente il più facile da iniziare poiché ha un'interfaccia web abbastanza intuitiva. GeoServer può fare la maggior parte delle cose che vuoi. Può servire servizi piastrellati WMS WFS e così via. È tutto scritto in Java.

  • MapServer è scritto in C e penso sia giusto dire che è il re dei servizi WMS. Almeno ha vinto la sparatoria dell'anno scorso alla conferenza FOSS4G (ESRI non ha osato partecipare). Mapserver è configurato tramite un "file-map" e non conosco alcuna interfaccia grafica. Ma per un serio servizio di wms è un'alternativa molto interessante.

  • Per i servizi wfs modificabili hai già menzionato GeoServer ma anche TinyOWS . TinyOWS è un piccolo server wfs scritto in C. Ultimamente è stato più integrato in Mapserver poiché è possibile utilizzare lo stesso file di mappa per entrambi.

Quindi il lato client sul Web . Non so molto su tutte le possibilità lì, ma la maggior parte delle soluzioni sono costruite in un modo o nell'altro su OpenLayers che è una libreria Javascript.

Passare dal mondo ESRI penso che ti apra un'altra possibilità molto importante. Se lo desideri, sei libero di spostarti anche dalla piattaforma Windows. Puoi mettere tutto su qualsiasi distro Linux.

Il software sopra menzionato insieme a Linux ridurrà molto la necessità di hardware.

Un esempio di software FOSS ben funzionante è la mappa di Norgeskart , dall'autorità ufficiale delle mappe in Norvegia.

In fondo usano PostGIS che serve Mapserver. Memorizzazione nella cache di riquadri in Geowebcache e utilizzo di un client basato su OpenLayer in alto. Non è appariscente come una soluzione Silverlight ma è possibile farlo anche.

Prima avevano usato il software ESRI, ma dovevano abbandonarlo quando le loro esigenze aumentavano in termini di capacità e velocità.


Nicklas, grazie mille - questo mi aiuta davvero a sapere da dove cominciare
Stephen Lead,

2
Nella mia esperienza, gli unici luoghi di attività GIS in cui ESRI detiene ancora indiscutibilmente le alture sono la cartografia. Mi piacerebbe vedere una combinazione di qgis e inkscape o scribus e ho avuto un certo successo con un qgis + inkscape, ma solo con mappe che coinvolgono pochissime caratteristiche e vertici (dove "pochi" significa in migliaia invece di decine o centinaia di migliaia). Una seconda area di preminenza è la coesione. Con arcgis, purché uno abbia denaro, quasi tutto è lì. Con il filo interdentale si passa molto tempo a incollare le cose insieme. Questo però sta rapidamente migliorando, specialmente nel qgis.
matt wilkie,

21

Nicklas ha già indicato i pacchetti open source più popolari. Se sei interessato ad un accoppiamento più stretto di GIS desktop e server, potresti voler dare un'occhiata più da vicino a QGIS.

Simile all'impostazione descritta per ArcGIS, esiste un'impostazione simile per QGIS:


3
l'esempio di webgis.uster.ch è eccellente!
Stephen Lead,

2
Mi piace soprattutto la funzionalità di stampa.
underdark

6

Parlando dal punto di vista di ciò che uso quotidianamente (anche se questo è colorato dal mio coinvolgimento nella maggior parte dei progetti):

  • file geodatabase o ArcSDE geodatabase per l'archiviazione dei dati

PostGIS, SQLite e Shapefile, in ordine dal miglior database al formato più portatile.

  • Desktop ArcMap per modificare i dati e compilare il documento della mappa

QGIS per operazioni spaziali, TileMill per compilare il documento della mappa (presupponendo che si intende un documento della mappa come in stili, combinazione di origini dati e così via)

  • ArcGIS Server per creare servizi Web

TileStream per servire mappe generate da TileMill o TileStache per il rendering live. Tuttavia, molti, molti gruppi stanno percorrendo la strada della generazione di mappe piuttosto che di servizi live data l'esperienza di mantenere i server online e veloci.

  • API JavaScript di ArcGIS Server per creare le mappe per l'utente finale dai servizi Web

Opuscolo se si desidera evitare di sviluppare ulteriormente. TurfJS per attività di analisi nel browser.


fantastico, grazie per i suggerimenti. Li controllerò tutti
Stephen Lead,

3
  • file geodatabase = PostGIS
  • ArcMap = QGIS con PostGIS nel backend Postgresgl
  • ArcGIS Server = Geo Server, Map Server, QGIS Server
  • API JavaScript del server ArcGIS per creare le mappe per l'utente finale dai servizi Web = Apri livelli con Mapfish.

Lo stack può essere installato dal sito postgresql con stackinstaller.

La soluzione più semplice è installare uno stack LAPP con Postgresql, contenente un database Post GIS e forse un server tomcat che chiama Apache, per l'ultima parte avresti bisogno di un nome di dominio o di avere il tuo supporto ISP che serve i dati sul web dal tuo server.

Installa QGIS per una bella interfaccia grafica con una discreta funzionalità dell'applicazione e collegala al tuo contenitore Post GIS. Funziona bene senza Apache e Tomcat per le Intranet.

Dovresti sviluppare un'applicazione usando la radice web dell'installazione apche per servire su Internet a meno che tu non sia basato su cloud.

Svilupparsi in un browser come client che può essere chiamato nel browser è più intenso e richiede qualcosa come Open Layers o Mapfish. Questo è il modo meno doloroso e ci sono anche molte altre opzioni e considerazioni.

Per il desktop funziona bene, tuttavia, meno Mapfish e Open Layers.

Ecco come appare, logicamente. Posta GIS> Postgresql> Geoserver> QGIS> Tomcat> Mapfish

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.