Apa yang setara dengan FOSS untuk produk-produk ArcGIS ini? [Tutup]

49

Saya adalah pengguna jangka panjang dari perangkat lunak ESRI, dan sekarang saya harus menggunakan perangkat lunak bebas dan sumber terbuka.

Saya telah membaca tentang OpenLayers, PostgreSQL, PostGIS, GeoServer, dan MapServer, tetapi saya tidak dapat menemukan gambaran umum yang baik tentang apa yang dilakukan oleh setiap produk, mengapa itu diperlukan, dan bagaimana mereka semua cocok bersama.

Sebagai contoh, http://www.osgeo.org/ dan http://freegis.org/ keduanya daftar banyak produk tetapi tidak memberikan informasi yang cukup bagi saya untuk memutuskan mana yang relevan.

Di ArcGIS, saya akan menggunakan yang berikut ini:

  • file geodatabase atau geodatabase ArcSDE untuk penyimpanan data
  • Desktop ArcMap untuk mengedit data dan menyusun dokumen peta
  • ArcGIS Server untuk membuat layanan web
  • ArcGIS Server JavaScript API untuk membuat peta pengguna akhir dari layanan web

Apa produk FOSS yang setara?

Stephen Lead
sumber
4
Jawaban untuk pertanyaan ini dapat menghasilkan serangkaian entri blog yang luar biasa :-).
whuber
3
Saya pikir artikel "Cara memulai dengan FOSS4G" akan sangat berguna. Sebagian besar sumber daya yang saya lihat ditulis oleh pengembang berpengalaman untuk pengembang berpengalaman, tanpa ikhtisar tingkat tinggi
Stephen Lead
@whuber Saya setuju, kita juga harus mempromosikan Konferensi FOSS4G 2011 mendatang .
Kirk Kuykendall
@Kirk Saya melihat prospek mempromosikan apa pun - konferensi, perangkat lunak, apa pun - sebagai berada di luar ruang lingkup situs ini dan sebagai pengaruh destruktif melalui potensi konflik kepentingan (atau penampilannya). Ada mekanisme untuk promosi melalui iklan di situs, yang merupakan masalah antara penyelenggara konferensi dan SE. Namun, peristiwa yang patut dicatat dan patut dipublikasikan telah dipublikasikan di sini. Mungkin memposting di blog kami adalah cara untuk pergi ...
whuber
1
@whuber, maaf, saya harus menjelaskan. Serangkaian blog di FOSS juga dapat mempromosikan konferensi FOSS4G. Salah satu alasan saya menyarankan ini adalah untuk memberikan waktu yang sama untuk apa yang tampaknya banyak orang sebagai promosi untuk konferensi Esri.
Kirk Kuykendall

Jawaban:

63

Untuk menyimpan data , dua alternatif pertama yang disebutkan adalah PostGIS dan SpatiaLite .

  • SpatiaLite adalah database SQLite dengan kemampuan spasial yang berarti berbasis file, ringkas, dan cepat.

  • PostGIS adalah kemampuan spasial pada database PostgreSQL. Itu berarti sangat kuat dengan kapasitas untuk menangani set data besar, pertanyaan kompleks dengan cara yang efisien.

Sebelum pindah ke desktop Anda harus menyadari bahwa sangat banyak tugas yang dapat dilakukan dengan sangat efisien secara langsung dalam database. Sebagian besar hal yang biasanya Anda lakukan di ArcMap duduk menunggu dialog yang berbeda muncul Anda akan melakukan banyak kali lebih cepat secara langsung dengan beberapa baris kode SQL. Itu berarti bahwa Anda juga dapat menyimpan apa yang Anda lakukan dan melakukannya lagi di set data lain dengan sangat mudah dengan hanya menyimpan kode SQL Anda. Banyak pertanyaan PostGIS di sini adalah tentang bagaimana menulis pertanyaan itu, sehingga Anda bisa mendapatkan ide tentang apa yang bisa dilakukan dengan menelusuri pertanyaan yang ditandai PostGIS.

Lalu sisi desktop . Ada banyak solusi desktop. Saya pikir sudah waktunya untuk mengakui bahwa pada sisi desktop ESRI baik. Seperti yang dikatakan sebelumnya sebagian besar tugas yang Anda lakukan di ArcMap lebih baik dilakukan lebih dalam di database, tetapi ketika datang ke tugas-tugas di mana Anda membutuhkan solusi desktop ArcMap baik. Apa yang saya gunakan adalah QGIS , dan jika saya memiliki anggaran untuk dibelanjakan saya akan memindahkan biaya lisensi ESRI untuk mendukung perbaikan bug di QGIS. QGIS adalah perangkat lunak hebat yang dapat melakukan lebih atau kurang semua yang dapat dilakukan ArcMap. Tetapi mungkin satu atau dua lisensi ArcInfo (uang) diperlukan untuk memolesnya. Anda juga dapat melihat Open Jump , GvSIG , uDIG dan banyak lagi.

Ketika datang ke layanan web Anda memiliki MapServer, GeoServer, TinyOWS, dan banyak lagi.

  • GeoServer mungkin yang paling mudah untuk memulai karena memiliki antarmuka web yang cukup intuitif. GeoServer dapat melakukan sebagian besar hal yang Anda inginkan. Itu dapat melayani layanan WMS WFS Tiled dan sebagainya. Semuanya ditulis dalam Java.

  • MapServer ditulis dalam bahasa C dan saya pikir adil untuk mengatakan itu adalah raja dari layanan WMS. Setidaknya itu memenangkan baku tembak tahun lalu pada konferensi FOSS4G (ESRI tidak berani berpartisipasi). Mapserver dikonfigurasi melalui "map-file" dan saya tidak tahu adanya antarmuka grafis. Tetapi untuk melayani wms serius itu adalah alternatif yang sangat menarik.

  • Untuk layanan-wfs yang dapat diedit, Anda memiliki GeoServer yang disebutkan sebelumnya tetapi juga TinyOWS . TinyOWS adalah wfs-server kecil yang ditulis dalam C. Belakangan ini lebih terintegrasi dalam Mapserver karena Anda dapat menggunakan file peta yang sama untuk keduanya.

Kemudian sisi klien di web . Saya tidak tahu banyak tentang semua kemungkinan di sana, tetapi sebagian besar solusi dibangun dengan satu atau lain cara pada OpenLayers yang merupakan perpustakaan Javascript.

Beranjak dari dunia ESRI saya pikir membuka kemungkinan lain yang sangat penting bagi Anda. Jika mau, Anda bebas untuk menjauh dari platform Windows juga. Anda dapat meletakkan semuanya di distro Linux apa pun.

Perangkat lunak yang disebutkan di atas bersama dengan Linux akan mengurangi banyak kebutuhan perangkat keras.

Contoh perangkat lunak FOSS yang berfungsi baik adalah peta Norgeskart , dari otoritas peta resmi di Norwegia.

Di bagian bawah mereka menggunakan server pelayani PostGIS. Tembolok ubin di Geowebcache dan menggunakan klien berbasis OpenLayer di atas. Ini tidak mencolok seperti solusi Silverlight tetapi itu mungkin dilakukan juga.

Mereka menggunakan perangkat lunak ESRI sebelumnya tetapi harus meninggalkannya ketika kebutuhan mereka meningkat dalam hal kapasitas dan kecepatan.

Nicklas Avén
sumber
Nicklas, terima kasih banyak - ini benar-benar membantu saya untuk mengetahui di mana untuk memulai
Stephen Lead
2
Dalam pengalaman saya, satu-satunya tempat kegiatan GIS di mana ESRI masih dipertanyakan adalah kartografi. Saya ingin melihat kombinasi qgis dan inkscape atau scribus, dan telah berhasil dengan qgis + inkscape, tetapi hanya dengan peta yang melibatkan sedikit fitur dan simpul (di mana "beberapa" berarti dalam ribuan sebagai lawan dari puluhan atau ratusan ribuan). Area utama kedua adalah keterpaduan. Dengan arcgis, asalkan seseorang punya uang, sebagian besar semuanya ada di sana. Dengan benang, seseorang menghabiskan banyak waktu untuk menempelkan semuanya. Ini meningkat dengan cepat, terutama di qgis.
matt wilkie
21

Nicklas telah menunjukkan paket open source paling populer. Jika Anda tertarik pada penggabungan yang lebih dekat antara GIS desktop dan server, Anda mungkin ingin melihat lebih dekat pada QGIS.

Mirip dengan pengaturan yang Anda jelaskan untuk ArcGIS, ada pengaturan seperti itu untuk QGIS:

underdark
sumber
3
contoh webgis.uster.ch sangat bagus!
Stephen Lead
2
Saya terutama menyukai fungsi pencetakan.
underdark
6

Berbicara dari perspektif apa yang saya gunakan sehari-hari (meskipun ini diwarnai oleh keterlibatan saya dalam sebagian besar proyek):

  • file geodatabase atau geodatabase ArcSDE untuk penyimpanan data

PostGIS, SQLite, dan Shapefile, dalam urutan dari database terbaik ke format paling portabel.

  • Desktop ArcMap untuk mengedit data dan menyusun dokumen peta

QGIS untuk operasi spasial, TileMill untuk mengkompilasi dokumen peta (dengan asumsi yang Anda maksud dokumen peta seperti dalam gaya, kombinasi sumber data, dan sebagainya)

  • ArcGIS Server untuk membuat layanan web

TileStream untuk menyajikan peta yang dihasilkan dari TileMill, atau TileStache untuk rendering langsung. Namun, banyak, banyak grup yang menggunakan rute untuk menghasilkan peta daripada melayani langsung mengingat pengalaman menjaga server online dan cepat.

  • ArcGIS Server JavaScript API untuk membuat peta pengguna akhir dari layanan web

Leaflet jika Anda ingin menghindari melakukan pengembangan ekstra. TurfJS untuk tugas analisis di browser.

tmcw
sumber
keren, terima kasih atas tipsnya. Saya akan periksa semuanya
Stephen Lead
3
  • file geodatabase = PostGIS
  • ArcMap = QGIS dengan PostGIS di backend Postgresgl
  • ArcGIS Server = Server Geo, Server Peta, Server QGIS
  • ArcGIS Server JavaScript API untuk membuat peta pengguna akhir dari layanan web = Buka Layers dengan Mapfish.

Stack dapat diinstal dari situs postgresql dengan stackinstaller.

Solusi paling sederhana adalah dengan menginstal tumpukan LAPP dengan Postgresql, yang berisi basis data Post GIS dan mungkin server kucing jantan yang memanggil Apache, untuk bagian terakhir Anda memerlukan nama domain atau meminta dukungan ISP Anda melayani data ke web dari server Anda.

Instal QGIS untuk GUI yang bagus dengan fungsionalitas aplikasi yang layak dan sambungkan ke wadah Post GIS Anda. Bekerja dengan baik tanpa apache dan kucing jantan untuk intranet.

Anda perlu mengembangkan aplikasi menggunakan root web dari instalasi APCHE untuk melayani melalui internet kecuali Anda berbasis cloud.

Untuk berkembang di browser sebagai klien yang dapat dipanggil di browser lebih intensif dan membutuhkan sesuatu seperti Open Layers dan atau Mapfish. Ini adalah cara yang paling tidak menyakitkan dan banyak pilihan dan pertimbangan lain juga.

Untuk desktop, ini bekerja dengan baik, minus Mapfish dan Open Layers.

Berikut ini seperti apa, logis. Posting GIS> Postgresql> Geoserver> QGIS> Tomcat> Mapfish

Lewis
sumber